go_toolchain-v1.5.0
·
17 commits
to master
since this release
Immutable
release. Only release title and notes can be modified.
π Updates
- Reworked relationship inference to match package import paths instead of module paths. Each project now resolves a canonical import path (nearest
go.modmodule path plus the project's relative directory), andgo list -depsresults are matched against those by longest prefix. This makes relationships resolvable in repositories that share a singlego.modacross all projects. - Sibling modules required by version without a
go.workno longer create project relationships, since those builds consume the published module rather than the local source. When thegobinary is unavailable, projects with their owngo.modunder a workspacego.workfall back to resolving relationships from their direct requires. replacedirectives keep their meaning in the new model: a require replaced by a local directory always links to the project at that location (it consumes local source even without ago.work), while a require replaced by another module never links.- Imports within a project's own import path are treated as ownership rather than dependencies.
go list -deps ./...enumerates packages belonging to projects nested inside the scanned project, which previously inferred an edge from the parent to every nested child β forming a cycle whenever a child declareddependsOnon its parent.