Azure / Azure/typespec-azure

Add check to ensure the impacted dependencies should be released together

Open
#3,158 0 comments 0 reactions 0 assignees View on GitHub
design:needed eng
Dominant language
TypeScript
Stars
27
Forks
90
Avg merge
1d 22h
Merged PRs (30d)
156

Description

### Clear and concise description of the problem
This happened recently for our paging changes, where we made changes for both typespec-azure-core and azure-http-specs. But we only released azure-http-specs, so the released azure-http-specs lib can't work with core lib and see [more details](https://teams.microsoft.com/l/message/19:16f8f1ed70d044139be153707bdaee0e@thread.skype/1754340327490?tenantId=72f988bf-86f1-41af-91ab-2d7cd011db47&groupId=3e17dcb0-4257-4a30-b843-77f47f1d4121&parentMessageId=1754340327490&teamName=Azure%20SDK&channelName=TypeSpec%20Engineering&createdTime=1754340327490).

Currently our repo uses `workspace` dependencies and these dependencies would be resolved as real versions. And all our pipelien check are based on workspace version. If relevant changes are in current workspace but not released, this would lead to the situation we only release it but not its dependencies.

It's better to add a safeguard check during release to at least ensure the necessary check is ran based on pinned versions.

### Checklist

- [x] Follow our [Code of Conduct](https://github.com/azure/typespec-azure/blob/main/CODE_OF_CONDUCT.md)
- [x] Check that this issue is about the Azure libraries for typespec. For feature request in the typespec language or core libraries file it in the [TypeSpec repo](https://github.com/Microsoft/TypeSpec/issues/new/choose)
- [x] Read the [docs](https://azure.github.io/typespec-azure/).
- [x] Check that there isn't already an issue that request the same feature to avoid creating a duplicate.

Contributor guide

Open the contributing guide

Research direction

Start by tracing the repository's release pipeline checks and how workspace dependencies are resolved during release. Done means the release process checks pinned versions and identifies impacted dependencies that must be released together, preventing a library from being released without a required dependency.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
build-system, release
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.