fix(extensions): initialize streams before startup - #9987
fix(extensions): initialize streams before startup#9987Victor Vazquez (vhvb1989) wants to merge 2 commits into
Conversation
📋 Prioritization NoteThanks for the contribution! The linked issue isn't in the current milestone yet. |
|
Azure Pipelines: Successfully started running 1 pipeline(s). 21 pipeline(s) were filtered out due to trigger conditions. There may be pipelines that require an authorized user to comment /azp run to run. |
405c1bb to
ea2ca44
Compare
There was a problem hiding this comment.
🔵 Needs a closer look
The dependency upgrade and labeler policy change are undocumented, insufficiently validated scope expansions.
Pull request overview
Fixes extension startup initialization ordering, while also including unrelated dependency and workflow changes.
Changes:
- Initializes extension streams before launching the listener goroutine.
- Upgrades gRPC and transitive dependencies across core and extensions.
- Raises the extension labeler limit from 10 to 20.
File summaries
| File | Description |
|---|---|
.github/workflows/extension-pr-labeler.md |
Raises label limit. |
.github/workflows/extension-pr-labeler.lock.yml |
Regenerates labeler workflow. |
cli/azd/cmd/middleware/extensions.go |
Pre-initializes extension streams. |
cli/azd/go.mod |
Upgrades shared dependencies. |
cli/azd/go.sum |
Updates dependency checksums. |
cli/azd/extensions/azure.ai.agents/go.mod |
Aligns dependencies. |
cli/azd/extensions/azure.ai.agents/go.sum |
Updates checksums. |
cli/azd/extensions/azure.ai.connections/go.mod |
Aligns dependencies. |
cli/azd/extensions/azure.ai.connections/go.sum |
Updates checksums. |
cli/azd/extensions/azure.ai.finetune/go.mod |
Aligns dependencies. |
cli/azd/extensions/azure.ai.finetune/go.sum |
Updates checksums. |
cli/azd/extensions/azure.ai.inspector/go.mod |
Aligns dependencies. |
cli/azd/extensions/azure.ai.inspector/go.sum |
Updates checksums. |
cli/azd/extensions/azure.ai.models/go.mod |
Aligns dependencies. |
cli/azd/extensions/azure.ai.models/go.sum |
Updates checksums. |
cli/azd/extensions/azure.ai.projects/go.mod |
Aligns dependencies. |
cli/azd/extensions/azure.ai.projects/go.sum |
Updates checksums. |
cli/azd/extensions/azure.ai.rle/go.mod |
Aligns dependencies. |
cli/azd/extensions/azure.ai.rle/go.sum |
Updates checksums. |
cli/azd/extensions/azure.ai.routines/go.mod |
Aligns dependencies. |
cli/azd/extensions/azure.ai.routines/go.sum |
Updates checksums. |
cli/azd/extensions/azure.ai.skills/go.mod |
Aligns dependencies. |
cli/azd/extensions/azure.ai.skills/go.sum |
Updates checksums. |
cli/azd/extensions/azure.ai.toolboxes/go.mod |
Aligns dependencies. |
cli/azd/extensions/azure.ai.toolboxes/go.sum |
Updates checksums. |
cli/azd/extensions/azure.ai.training/go.mod |
Aligns dependencies. |
cli/azd/extensions/azure.ai.training/go.sum |
Updates checksums. |
cli/azd/extensions/azure.appservice/go.mod |
Aligns dependencies. |
cli/azd/extensions/azure.appservice/go.sum |
Updates checksums. |
cli/azd/extensions/azure.coding-agent/go.mod |
Aligns dependencies. |
cli/azd/extensions/azure.coding-agent/go.sum |
Updates checksums. |
cli/azd/extensions/microsoft.azd.concurx/go.mod |
Aligns dependencies. |
cli/azd/extensions/microsoft.azd.concurx/go.sum |
Updates checksums. |
cli/azd/extensions/microsoft.azd.extensions/internal/resources/languages/go/go.mod.tmpl |
Updates scaffold dependencies. |
cli/azd/extensions/microsoft.azd.extensions/internal/resources/languages/go/go.sum |
Updates scaffold checksums. |
Review details
- Files reviewed: 1/1 changed files
- Comments generated: 0
- Review effort level: Balanced
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
Richard Park (richardpark-msft)
left a comment
There was a problem hiding this comment.
Looks good - main idea is just making sure the init happens once, correct?
Yes, I was getting transient error in another PR's CI and the debugging session found this to be the issue, and since the other PR is just bumping dependecies, I didn't want that PR to include this little fix. Thank you |
Initialize extension I/O before launching the listen goroutine so startup failure signaling cannot race readiness-channel initialization. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 64b44c97-3679-442c-8e9f-e9eb3e67e797
ea2ca44 to
06169f7
Compare
There was a problem hiding this comment.
🟢 Approval recommended
The focused change correctly establishes initialization before concurrent access and matches the existing regression test.
Review details
- Files reviewed: 1/1 changed files
- Comments generated: 0 new
- Review effort level: Balanced
* chore(deps): update gRPC across azd modules Update google.golang.org/grpc to v1.83.2 in azd core and every affected first-party extension so the shared dependency remains synchronized and the related security alerts are resolved. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * fix(extensions): update Go scaffold gRPC Update the generated Go extension module template to use the patched gRPC release and its synchronized transitive dependencies. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 64b44c97-3679-442c-8e9f-e9eb3e67e797 --------- Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 64b44c97-3679-442c-8e9f-e9eb3e67e797
There was a problem hiding this comment.
🟡 Changes recommended
Unrelated dependency changes across independently released extensions must be removed.
Get a fresh assessment by requesting another Copilot review.
Review details
- Files reviewed: 17/33 changed files
- Comments generated: 1
- Review effort level: Balanced
| golang.org/x/sync v0.22.0 | ||
| golang.org/x/sys v0.47.0 | ||
| golang.org/x/term v0.45.0 | ||
| golang.org/x/time v0.9.0 | ||
| golang.org/x/tools v0.45.0 | ||
| golang.org/x/tools v0.48.0 |
Azure Dev CLI Install InstructionsInstall scriptsMacOS/Linux
bash: pwsh: WindowsPowerShell install MSI install Standalone Binary
MSI
Documentationlearn.microsoft.com documentationtitle: Azure Developer CLI reference
|
azure.coding-agent PR buildNote This is an unsigned development build. Install it only if you trust this PR. Install the extension: azd ext install "https://azuresdkartifacts.z5.web.core.windows.net/azd/extensions/pr/9987/azure-coding-agent.zip"
|
microsoft.azd.extensions PR buildNote This is an unsigned development build. Install it only if you trust this PR. Install the extension: azd ext install "https://azuresdkartifacts.z5.web.core.windows.net/azd/extensions/pr/9987/microsoft-azd-extensions.zip"
|
azure.ai.agents PR buildNote This is an unsigned development build. Install it only if you trust this PR. Install the extension: azd ext install "https://azuresdkartifacts.z5.web.core.windows.net/azd/extensions/pr/9987/azure-ai-agents.zip"
|
azure.ai.models PR buildNote This is an unsigned development build. Install it only if you trust this PR. Install the extension: azd ext install "https://azuresdkartifacts.z5.web.core.windows.net/azd/extensions/pr/9987/azure-ai-models.zip"
|
azure.ai.finetune PR buildNote This is an unsigned development build. Install it only if you trust this PR. Install the extension: azd ext install "https://azuresdkartifacts.z5.web.core.windows.net/azd/extensions/pr/9987/azure-ai-finetune.zip"
|
azure.appservice PR buildNote This is an unsigned development build. Install it only if you trust this PR. Install the extension: azd ext install "https://azuresdkartifacts.z5.web.core.windows.net/azd/extensions/pr/9987/azure-appservice.zip"
|
azure.ai.connections PR buildNote This is an unsigned development build. Install it only if you trust this PR. Install the extension: azd ext install "https://azuresdkartifacts.z5.web.core.windows.net/azd/extensions/pr/9987/azure-ai-connections.zip"
|
azure.ai.inspector PR buildNote This is an unsigned development build. Install it only if you trust this PR. Install the extension: azd ext install "https://azuresdkartifacts.z5.web.core.windows.net/azd/extensions/pr/9987/azure-ai-inspector.zip"
|
microsoft.azd.concurx PR buildNote This is an unsigned development build. Install it only if you trust this PR. Install the extension: azd ext install "https://azuresdkartifacts.z5.web.core.windows.net/azd/extensions/pr/9987/microsoft-azd-concurx.zip"
|
azure.ai.projects PR buildNote This is an unsigned development build. Install it only if you trust this PR. Install the extension: azd ext install "https://azuresdkartifacts.z5.web.core.windows.net/azd/extensions/pr/9987/azure-ai-projects.zip"
|
azure.ai.skills PR buildNote This is an unsigned development build. Install it only if you trust this PR. Install the extension: azd ext install "https://azuresdkartifacts.z5.web.core.windows.net/azd/extensions/pr/9987/azure-ai-skills.zip"
|
azure.ai.rle PR buildNote This is an unsigned development build. Install it only if you trust this PR. Install the extension: azd ext install "https://azuresdkartifacts.z5.web.core.windows.net/azd/extensions/pr/9987/azure-ai-rle.zip"
|
azure.ai.routines PR buildNote This is an unsigned development build. Install it only if you trust this PR. Install the extension: azd ext install "https://azuresdkartifacts.z5.web.core.windows.net/azd/extensions/pr/9987/azure-ai-routines.zip"
|
azure.ai.toolboxes PR buildNote This is an unsigned development build. Install it only if you trust this PR. Install the extension: azd ext install "https://azuresdkartifacts.z5.web.core.windows.net/azd/extensions/pr/9987/azure-ai-toolboxes.zip"
|
azure.ai.training PR buildNote This is an unsigned development build. Install it only if you trust this PR. Install the extension: azd ext install "https://azuresdkartifacts.z5.web.core.windows.net/azd/extensions/pr/9987/azure-ai-training.zip"
|
Summary
listengoroutineFixes #9986
Validation
go test -race ./cmd/middleware -run "^TestStartAndWaitExtension_PropagatesTraceContext$" -count=100go test ./cmd/middleware