You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
No way to redirect a declared metadata dependency to a different location — a local checkout, or a patched fork — without editing the declaration itself.
Every enterprise eventually needs "we are running a patched shared model while the fix lands upstream," and needs it to be a local, uncommitted override rather than a change to the shared declaration.
Prior art (open source)
Go modules — the replace directive redirects a module to a local path or a fork, and is understood to be a local/temporary concern. https://go.dev/ref/mod
Notes
Not needed while only path sources exist: a path source is an override, since it names a location directly.
Should compose with the set semantics in the source-resolution design: an override replaces a member of the source set, it does not add one.
Worth deciding whether overrides live in the committed config or in a local, gitignored sidecar. Go puts them in the committed go.mod, which is arguably the wrong default for this case.
Gap
No way to redirect a declared metadata dependency to a different location — a local checkout, or a patched fork — without editing the declaration itself.
Every enterprise eventually needs "we are running a patched shared model while the fix lands upstream," and needs it to be a local, uncommitted override rather than a change to the shared declaration.
Prior art (open source)
Go modules — the
replacedirective redirects a module to a local path or a fork, and is understood to be a local/temporary concern. https://go.dev/ref/modNotes
pathsources exist: apathsource is an override, since it names a location directly.packagesources land (FR-023 — Metadata packages: cross-repo distribution + reuse #9), where the location is resolved by an ecosystem rather than named.go.mod, which is arguably the wrong default for this case.