Azure / Azure/azure-sdk-tools

Find a better way to pin SDK code gen dependencies without affecting emitter dependencies

Open
#8,428 0 comments 0 reactions 0 assignees View on GitHub
Central-EngSys
Dominant language
C#
Stars
135
Forks
260
Avg merge
1d 22h
Merged PRs (30d)
115

Description

To influence the content of emitter-package.json, we update the emitter's package.json with a peerDependency and matching pinned devDependency. This has the desired effect on emitter-package.json, but we end up declaring peer dependencies that the emitter doesn't actually depend on.

We need a new way to accommodate:
- Produce a emitter-package.json and lock file programmatically from an emitter build or from a published emitter package
- emitter-package-lock.json construction should be deterministic
- emitter-package.json shouldn't be so complex that it's difficult to diff the emitter version bump

Contributor guide

Open the contributing guide

Research direction

Start by locating the code that updates emitter-package.json and constructs emitter-package-lock.json, then trace whether it runs from an emitter build or a published emitter package. Done means dependency pinning no longer adds unrelated emitter peer dependencies, lock-file construction is deterministic, and emitter-package.json remains easy to diff during version bumps.

Written by the indexing model from the issue text.

Assessment

Domain
build-system, tooling
Issue type
Refactor
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.