-
Notifications
You must be signed in to change notification settings - Fork 4.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Implement the REPO.bazel proposal #18077
Labels
area-Bzlmod
Bzlmod-specific PRs, issues, and feature requests
P1
I'll work on this now. (Assignee required)
team-ExternalDeps
External dependency handling, remote repositiories, WORKSPACE file.
type: feature request
Milestone
Comments
Wyverald
added
type: feature request
P1
I'll work on this now. (Assignee required)
team-ExternalDeps
External dependency handling, remote repositiories, WORKSPACE file.
area-Bzlmod
Bzlmod-specific PRs, issues, and feature requests
labels
Apr 13, 2023
copybara-service bot
pushed a commit
that referenced
this issue
Apr 13, 2023
Work towards #18077 RELNOTES: The REPO.bazel and MODULE.bazel files are now also considered workspace boundary markers. PiperOrigin-RevId: 523979135 Change-Id: I0cbc9964742a0e5efa8afac8b8dfb84c6235a2f0
copybara-service bot
pushed a commit
that referenced
this issue
Apr 17, 2023
- Added a FeatureSet type to represent a set of "on" features and a set of "off" features - This type supports merging different feature sets with different granularity (so package-level defaults get overridden by rule-level features, for example) - This'll allow repo-level defaults to be overridden by package-level defaults in the future - Global (flag-level) features are handled specially (with `mergeWithGlobalFeatures`) - This gets rid of the frankly ridiculously complex logic in RuleContext; no behavior change is introduced. Work towards #18077 PiperOrigin-RevId: 524832614 Change-Id: Ic37b80771f1627573485e564d39944e68c6a6524
fweikert
pushed a commit
to fweikert/bazel
that referenced
this issue
May 25, 2023
Work towards bazelbuild#18077 RELNOTES: The REPO.bazel and MODULE.bazel files are now also considered workspace boundary markers. PiperOrigin-RevId: 523979135 Change-Id: I0cbc9964742a0e5efa8afac8b8dfb84c6235a2f0
fweikert
pushed a commit
to fweikert/bazel
that referenced
this issue
May 25, 2023
- Added a FeatureSet type to represent a set of "on" features and a set of "off" features - This type supports merging different feature sets with different granularity (so package-level defaults get overridden by rule-level features, for example) - This'll allow repo-level defaults to be overridden by package-level defaults in the future - Global (flag-level) features are handled specially (with `mergeWithGlobalFeatures`) - This gets rid of the frankly ridiculously complex logic in RuleContext; no behavior change is introduced. Work towards bazelbuild#18077 PiperOrigin-RevId: 524832614 Change-Id: Ic37b80771f1627573485e564d39944e68c6a6524
copybara-service bot
pushed a commit
that referenced
this issue
Jun 12, 2023
- Created a PackageArgs class that stores the values passed to the attrs of the `package()` function, so that they can be applied to a package builder in one go - These attr values used to be applied as soon as each attr is processed (i.e. evaluated). We can't do that anymore for repo(), since at the time of REPO.bazel evaluation, the package hasn't started being built yet. - Instead of storing the individual fields, Package now just holds on to a PackageArgs object. - In a follow-up CL, we store all the repo() values in a PackageArgs class, and apply those before the package() ones. - Also removed `Package#isDefaultVisibilitySet` as nobody calls it anymore. Work towards #18077 PiperOrigin-RevId: 539728608 Change-Id: Ie4a081fa0e52e833ac2a6be50033f95728da3a9b
traversaro
pushed a commit
to traversaro/bazel
that referenced
this issue
Jun 24, 2023
- Created a PackageArgs class that stores the values passed to the attrs of the `package()` function, so that they can be applied to a package builder in one go - These attr values used to be applied as soon as each attr is processed (i.e. evaluated). We can't do that anymore for repo(), since at the time of REPO.bazel evaluation, the package hasn't started being built yet. - Instead of storing the individual fields, Package now just holds on to a PackageArgs object. - In a follow-up CL, we store all the repo() values in a PackageArgs class, and apply those before the package() ones. - Also removed `Package#isDefaultVisibilitySet` as nobody calls it anymore. Work towards bazelbuild#18077 PiperOrigin-RevId: 539728608 Change-Id: Ie4a081fa0e52e833ac2a6be50033f95728da3a9b
meteorcloudy
pushed a commit
to meteorcloudy/bazel
that referenced
this issue
Jun 27, 2023
Work towards bazelbuild#18077 RELNOTES: The REPO.bazel and MODULE.bazel files are now also considered workspace boundary markers. PiperOrigin-RevId: 523979135 Change-Id: I0cbc9964742a0e5efa8afac8b8dfb84c6235a2f0
Wyverald
added a commit
that referenced
this issue
Jun 27, 2023
Work towards #18077 RELNOTES: The REPO.bazel and MODULE.bazel files are now also considered workspace boundary markers. PiperOrigin-RevId: 523979135 Change-Id: I0cbc9964742a0e5efa8afac8b8dfb84c6235a2f0 Co-authored-by: Googler <[email protected]>
copybara-service bot
pushed a commit
to bazelbuild/intellij
that referenced
this issue
Jul 26, 2023
- REPO.bazel is a new file at the root of repos that can only contain a `repo()` call with a bunch of package default arguments (similar to `package()`) - A new SkyFunction, RepoFileFunction, evaluates a REPO.bazel file and returns the `PackageArgs` object containing those arguments - PackageFunction for packages in repo `@foo` now depends on RepoFileFunction for `@foo` Fixes bazelbuild/bazel#18077 PiperOrigin-RevId: 551313372
mai93
pushed a commit
to bazelbuild/intellij
that referenced
this issue
Jul 31, 2023
- REPO.bazel is a new file at the root of repos that can only contain a `repo()` call with a bunch of package default arguments (similar to `package()`) - A new SkyFunction, RepoFileFunction, evaluates a REPO.bazel file and returns the `PackageArgs` object containing those arguments - PackageFunction for packages in repo `@foo` now depends on RepoFileFunction for `@foo` Fixes bazelbuild/bazel#18077 (cherry picked from commit 45e1b5c)
copybara-service bot
pushed a commit
to bazelbuild/intellij
that referenced
this issue
Aug 3, 2023
*** Reason for rollback *** Performance regression, b/294105788 *** Original change description *** Implement REPO.bazel - REPO.bazel is a new file at the root of repos that can only contain a `repo()` call with a bunch of package default arguments (similar to `package()`) - A new SkyFunction, RepoFileFunction, evaluates a REPO.bazel file and returns the `PackageArgs` object containing those arguments - PackageFunction for packages in repo `@foo` now depends on RepoFileFunction for `@foo` Fixes bazelbuild/bazel#18077 PiperOrigin-RevId: 553500673
copybara-service bot
pushed a commit
that referenced
this issue
Aug 3, 2023
*** Reason for rollback *** Performance regression, b/294105788 *** Original change description *** Implement REPO.bazel - REPO.bazel is a new file at the root of repos that can only contain a `repo()` call with a bunch of package default arguments (similar to `package()`) - A new SkyFunction, RepoFileFunction, evaluates a REPO.bazel file and returns the `PackageArgs` object containing those arguments - PackageFunction for packages in repo `@foo` now depends on RepoFileFunction for `@foo` Fixes #18077 PiperOrigin-RevId: 553500673 Change-Id: I866e73262ab75635c8927f8c77eb5412c01e16a9
fweikert
pushed a commit
that referenced
this issue
Aug 9, 2023
*** Reason for rollback *** Performance regression, b/294105788 *** Original change description *** Implement REPO.bazel - REPO.bazel is a new file at the root of repos that can only contain a `repo()` call with a bunch of package default arguments (similar to `package()`) - A new SkyFunction, RepoFileFunction, evaluates a REPO.bazel file and returns the `PackageArgs` object containing those arguments - PackageFunction for packages in repo `@foo` now depends on RepoFileFunction for `@foo` Fixes #18077 PiperOrigin-RevId: 553500673 Change-Id: I866e73262ab75635c8927f8c77eb5412c01e16a9
copybara-service bot
pushed a commit
to bazelbuild/intellij
that referenced
this issue
Aug 11, 2023
*** Reason for rollback *** Roll forward with changes to allow us to disable REPO.bazel in Blaze while keeping the new feature in Bazel. Fixes bazelbuild/bazel#18077 PiperOrigin-RevId: 556025128
copybara-service bot
pushed a commit
that referenced
this issue
Aug 11, 2023
*** Reason for rollback *** Roll forward with changes to allow us to disable REPO.bazel in Blaze while keeping the new feature in Bazel. Fixes #18077 PiperOrigin-RevId: 556025128 Change-Id: Ic31f3d47b14d4966eead3c00c810bb04da2e051e
mai93
pushed a commit
to bazelbuild/intellij
that referenced
this issue
Aug 14, 2023
*** Reason for rollback *** Performance regression, b/294105788 *** Original change description *** Implement REPO.bazel - REPO.bazel is a new file at the root of repos that can only contain a `repo()` call with a bunch of package default arguments (similar to `package()`) - A new SkyFunction, RepoFileFunction, evaluates a REPO.bazel file and returns the `PackageArgs` object containing those arguments - PackageFunction for packages in repo `@foo` now depends on RepoFileFunction for `@foo` Fixes bazelbuild/bazel#18077 (cherry picked from commit e956466)
mai93
pushed a commit
to bazelbuild/intellij
that referenced
this issue
Aug 14, 2023
*** Reason for rollback *** Roll forward with changes to allow us to disable REPO.bazel in Blaze while keeping the new feature in Bazel. Fixes bazelbuild/bazel#18077 (cherry picked from commit ec20e61)
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
area-Bzlmod
Bzlmod-specific PRs, issues, and feature requests
P1
I'll work on this now. (Assignee required)
team-ExternalDeps
External dependency handling, remote repositiories, WORKSPACE file.
type: feature request
https://docs.google.com/document/d/1rS-B3d_sfZFY2AcSwIq2ibQc7X1lgeycddLJqjYKgOA/edit
The text was updated successfully, but these errors were encountered: