Omit unique module versions from canonical repo names#21035
Closed
fmeum wants to merge 9 commits intobazelbuild:masterfrom
Closed
Omit unique module versions from canonical repo names#21035fmeum wants to merge 9 commits intobazelbuild:masterfrom
fmeum wants to merge 9 commits intobazelbuild:masterfrom
Conversation
35962c8 to
6c55580
Compare
6c55580 to
3264860
Compare
Collaborator
Author
|
@Wyverald @meteorcloudy Could you already take a look at the implementation? If you agree with the new naming scheme and the overall implementation, I would go ahead and fix all the tests. |
Wyverald
reviewed
Feb 5, 2024
meteorcloudy
reviewed
Feb 6, 2024
4398798 to
c077db3
Compare
5cda597 to
f7379b1
Compare
fmeum
commented
Feb 6, 2024
Collaborator
Author
|
@Wyverald @meteorcloudy Tests are passing now, I had to update the canonical name of |
67bdda8 to
2bddce6
Compare
2bddce6 to
8cbb5f2
Compare
Collaborator
Author
|
@meteorcloudy I addressed your comment and also added RELNOTES to the PR description. |
Wyverald
approved these changes
Feb 9, 2024
Collaborator
Author
|
@bazel-io fork 7.1.0 |
Wyverald
pushed a commit
that referenced
this pull request
Feb 12, 2024
The canonical repository name of a module `rules_foo` is now `rules_foo~` instead of e.g. `rules_foo~1.2.3` if there is only a single version of the module in the entire dep graph. This also applies to overrides, which previously used the canonical repository name `rules_foo~override`. This improves cacheability of actions across module version changes and also prevents the output base from filling up with outdated module and extension repositories. See the long comment in `ModuleKey#getCanonicalRepoName` for a detailed explanation of why this particular scheme was chosen. The change includes a bump of the lockfile version as the canonical repo names of label attributes in extension usages are affected. RELNOTES: The scheme for generating canonical repository names has changed to improve cacheability of actions across dependency version updates. Note that canonical names are not considered to be public API and can change at any time. See https://bazel.build/external/module#repository_names_and_strict_deps for advice on how to avoid hardcoding canonical repository names. Fixes #20997 Closes #21035. PiperOrigin-RevId: 605730371 Change-Id: Ica1be1ba5493d3636248a79a6549a0927021bef9
Wyverald
pushed a commit
that referenced
this pull request
Feb 12, 2024
The canonical repository name of a module `rules_foo` is now `rules_foo~` instead of e.g. `rules_foo~1.2.3` if there is only a single version of the module in the entire dep graph. This also applies to overrides, which previously used the canonical repository name `rules_foo~override`. This improves cacheability of actions across module version changes and also prevents the output base from filling up with outdated module and extension repositories. See the long comment in `ModuleKey#getCanonicalRepoName` for a detailed explanation of why this particular scheme was chosen. The change includes a bump of the lockfile version as the canonical repo names of label attributes in extension usages are affected. RELNOTES: The scheme for generating canonical repository names has changed to improve cacheability of actions across dependency version updates. Note that canonical names are not considered to be public API and can change at any time. See https://bazel.build/external/module#repository_names_and_strict_deps for advice on how to avoid hardcoding canonical repository names. Fixes #20997 Closes #21035. PiperOrigin-RevId: 605730371 Change-Id: Ica1be1ba5493d3636248a79a6549a0927021bef9
github-merge-queue Bot
pushed a commit
that referenced
this pull request
Feb 13, 2024
The canonical repository name of a module `rules_foo` is now `rules_foo~` instead of e.g. `rules_foo~1.2.3` if there is only a single version of the module in the entire dep graph. This also applies to overrides, which previously used the canonical repository name `rules_foo~override`. This improves cacheability of actions across module version changes and also prevents the output base from filling up with outdated module and extension repositories. See the long comment in `ModuleKey#getCanonicalRepoName` for a detailed explanation of why this particular scheme was chosen. The change includes a bump of the lockfile version as the canonical repo names of label attributes in extension usages are affected. RELNOTES: The scheme for generating canonical repository names has changed to improve cacheability of actions across dependency version updates. Note that canonical names are not considered to be public API and can change at any time. See https://bazel.build/external/module#repository_names_and_strict_deps for advice on how to avoid hardcoding canonical repository names. Fixes #20997 Closes #21035. PiperOrigin-RevId: 605730371 Change-Id: Ica1be1ba5493d3636248a79a6549a0927021bef9 Co-authored-by: Fabian Meumertzheim <fabian@meumertzhe.im>
Member
|
The changes in this PR have been included in Bazel 7.1.0 RC1. Please test out the release candidate and report any issues as soon as possible. If you're using Bazelisk, you can point to the latest RC by setting USE_BAZEL_VERSION=last_rc. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The canonical repository name of a module
rules_foois nowrules_foo~instead of e.g.rules_foo~1.2.3if there is only a single version of the module in the entire dep graph. This also applies to overrides, which previously used the canonical repository namerules_foo~override.This improves cacheability of actions across module version changes and also prevents the output base from filling up with outdated module and extension repositories. See the long comment in
ModuleKey#getCanonicalRepoNamefor a detailed explanation of why this particular scheme was chosen.The change includes a bump of the lockfile version as the canonical repo names of label attributes in extension usages are affected.
RELNOTES: The scheme for generating canonical repository names has changed to improve cacheability of actions across dependency version updates. Note that canonical names are not considered to be public API and can change at any time. See https://bazel.build/external/module#repository_names_and_strict_deps for advice on how to avoid hardcoding canonical repository names.
Fixes #20997