This project is mirrored from https://github.com/bazelbuild/bazel.git.
Pull mirroring updated .
- Mar 29, 2025
-
-
Bazel Release System authored
Baseline: 7e538803 Cherry picks: + fa6b1b7e: Reverse a RAM regression introduced by https://github.com/bazelbuild/bazel/commit/7e538803d775929beb3c9a f1cd2e87667d373bbe Important changes: - The new `--@bazel_tools//tools/test:incompatible_use_default_test_toolchai n` flag can be used to have test actions select an execution platform that has all the constraints provided by the target platform instead of always selecting the first available execution platform. This supersedes the `--use_target_platform_for_tests` flag. - `--experimental_downloader_config` is now no longer experimental, and has been renamed to `--downloader_config`. The old flag name can still be used. This release contains contributions from many people at Google, as well as Benjamin Peterson, Fabian Meumertzheim, Kevin Bernal, Lszl Csomor, tfrench.
-
Googler authored
Reverse a RAM regression introduced by https://github.com/bazelbuild/bazel/commit/7e538803d775929beb3c9af1cd2e87667d373bbe That CL factored some content of `Rule` into a new base class, `RuleOrMacroInstance`. In doing so, it added two new fields to `Rule` instances, causing a 1% RAM regression on a large `query` invocation. This CL eliminates the two extra fields. `attrCount`, the number of attributes in the rule or macro's schema (not to be confused with the number of attributes actually stored on the instance, which may change after freezing/compacting), can be obtained from the schema via the subclass's `ruleClass` or `macroClass` field without storing it as an additional field on the base class. We have to take care not to do this retrieval of the subclass field while executing the super constructor (i.e. before the subclass field is initialized). That's solved by threading `attrCount` into `bitSetSize` as a parameter. (A prior draft of this CL went through some indirect initialization logic whereby the super constructor called an abstract method to initialized the subclass field. Thanks to arostovtsev@ for pointing out that this was unnecessary.) The second field, `packageDeclarations`, is replaced by an abstract getter that already exists on `Rule` and which is added to `MacroInstance` in this CL. It's probably not really needed on `MacroInstance`, but we can eliminate that latter; the cost of an extra field on a macro is nothing like the cost of an extra field on a rule. PiperOrigin-RevId: 740793903 Change-Id: Iec65f20ff459e33c3961b16d9d51d0d4a22f0e00
-
- Mar 23, 2025
-
-
Googler authored
Use rule machinery for handling Symbolic Macro attrs in order to reduce the memory overhead of symbolic macros. In particular, RuleOrMacroInstance holds shared logic between Rule and MacroInstance, and both RuleClass and MacroClass now hold an AttributeProvider, which gives access to their Attributes. Together, this gives us: - Use of the package's list interner for attributes - Map of Attributes is now a list (the key/name is already stored in the attribute) - Default values of Attributes are not stored - Compact attr representation once the macro is frozen - Attrs are stored as Native types instead of Starlark types As a side effect of doing this, Attribute.valueToStarlark() now works with Selects. PiperOrigin-RevId: 739568597 Change-Id: Ia6219f3105ede816c08105fec6c0df03d7b8a5e6
-
Googler authored
it is no longer needed after https://github.com/bazelbuild/rules_apple/commit/0410c024c1eac29f8cfbe4f7c78bef54c92d0422 PiperOrigin-RevId: 739519966 Change-Id: I56feb5620d56665199b2226d60dbbfee75f5990d
-
- Mar 22, 2025
-
-
Googler authored
Allow finalizer targets to see targets visible either to BUILD file or to finalizer macro class definition Previously, finalizers used the same visibility semantics as normal symbolic macros. As a result, migrating an epilogue legacy macro to a finalizer could result in visibility errors if, for example, a finalizer-defined target declared a dependency on a legacy-macro-defined target which was visible to the BUILD file but not to the finalizer's definition. PiperOrigin-RevId: 739300166 Change-Id: I480dde3d2a9704ef85a64ba8346038e784172ee6
-
Kevin Bernal authored
Fixes the broken link in https://bazel.build/configure/coverage#python. Closes #25150. PiperOrigin-RevId: 739298766 Change-Id: Ic8e99be02123c5d86c75dfa8e01f5daf571eb0a3
-
Googler authored
This brings code closer to readability standards. The benchmarks show there's no regression or improvement. There's a bit more edenSpaceGarbage, however so small, that I believe readability should be more important. PiperOrigin-RevId: 739291019 Change-Id: Id037395e812556771789f8ea4b810bff6b933f05
-
Fabian Meumertzheim authored
Work towards #25160 Closes #25123. PiperOrigin-RevId: 739250246 Change-Id: I2e11a9eabd275bf9aee76a8ff3fa914ca5abee5c
-
Googler authored
PiperOrigin-RevId: 739248282 Change-Id: I92dc9fd340bd1f9d6141dcf0bc34c5d9cf3c380f
-
Thomas Köppe authored
Clarify that "additional_linker_inputs" is just a form of "deps", and does _not_ in fact affect the linker command line. The current wording "Pass these files to the linker command" is highly ambiguous and confusing. PiperOrigin-RevId: 739248180 Change-Id: Ie08f527f25703340ae430ba98acece3506d0d269
-
Googler authored
The test is removed from Bazel and added to rules_java. PiperOrigin-RevId: 739229477 Change-Id: I5514bbc755b9b742da0e7c0d46fc3abaea4e9e09
-
Googler authored
PiperOrigin-RevId: 739214687 Change-Id: I8ae23bccd473d254949b92f06468897012996b53
-
Googler authored
RELNOTES: None. PiperOrigin-RevId: 739203840 Change-Id: I3a569abdda604b272bda234b810321ddf42cf6c3
-
Fabian Meumertzheim authored
Work towards #25160 Part of #25123. PiperOrigin-RevId: 739198849 Change-Id: Icfe815b205f697d12c40cec31031ec1a15e39205
-
- Mar 21, 2025
-
-
Fabian Meumertzheim authored
If a toolchain of this type is present, it will be used to set the execution platform for the `test` exec group, following standard toolchain resolution rules. Also update several tests to prepare for this change. Work towards #25160 Part of #25123. PiperOrigin-RevId: 739197834 Change-Id: I1f1d1d03900d594f0c943323fffc17be6c3ece63
-
Lszl Csomor authored
In unix_jni.cc, replace calls of PostException, PostAssertionError, and PostDeleteTreesBelowException with macro calls. The macros embed the file name and line number in the exception message. Exception messages that used to look like "foo" now look like "[unix_jni.cc:1234] foo". This change should help debugging errors from JNI calls. Closes #25592. PiperOrigin-RevId: 739174165 Change-Id: I00f35f20083228dd439d36efe0d27fe7e2cff74e
-
Googler authored
RELNOTES: None. PiperOrigin-RevId: 739171518 Change-Id: I14288bebc4758bb05ff663830cca6f45c3fe4640
-
Googler authored
See unknown commit for why this existed. It survived that change because it could be useful to keep GrpcServerImpl from getting unwiedly, but also because I didn't feel like cleaning it up at that time. The former is maybe still true, the latter less so, since it created some extra busy work while I was prototyping something. PiperOrigin-RevId: 739169753 Change-Id: Ic7ac87f59dd8c7266737018e542598d7c3d6834b
-
Googler authored
RELNOTES: None. PiperOrigin-RevId: 739162810 Change-Id: If8ababf3b125c93b7a31d7d2f993cd69133d458c
-
Googler authored
It doesn't look right that the default implementation is a no-op. PiperOrigin-RevId: 739129068 Change-Id: Ic706d689c186e80b4cb7937aa571291c212b2e1f
-
tfrench authored
Bazel itself uses this: https://github.com/bazelbuild/bazel/blob/master/bazel_downloader.cfg And many companies rely on this for security. Therefore, `--downloader_config` should be non-experimental. Resolves #25485 RELNOTES: `--experimental_downloader_config` is now no longer experimental, and has been renamed to `--downloader_config`. The old flag name can still be used. Closes #25649. PiperOrigin-RevId: 739116828 Change-Id: Icaa0bceb84d088c610f41938b194f209bdbe7f70
-
Fabian Meumertzheim authored
The existing assignment of `StarlarkList.EMPTY_ARRAY` wasn't effective at ensuring that an empty list uses the same empty array as a backing instance. Closes #25591. PiperOrigin-RevId: 739067491 Change-Id: I70c6225afc7954e79ebe2f29b59189d4a66327ec
-
Fabian Meumertzheim authored
This reduces retained heap by ~0.1% on an example project. Closes #25596. PiperOrigin-RevId: 739066647 Change-Id: If394e4e906faaa06a1a83a2bdf8bbe0dba5d3539
-
Googler authored
PiperOrigin-RevId: 739040870 Change-Id: I688bebb8a9123dfd0654fee46612f5434e6aae18
-
Googler authored
Adds a subclass of RemoteConfiguredTargetValue, RemoteRuleConfiguredTargetValue that extends ActionLookupValue. PiperOrigin-RevId: 739039863 Change-Id: I7d3eaaaa6a7294add18a8b44880cfd5d6b0687c4
-
Googler authored
Thread InputMetadataProvider instead of ArtifactExpander through CommandLine and its implementations. RELNOTES: None. PiperOrigin-RevId: 738912995 Change-Id: I30a12ceee88991feac419a341365cc51530352a3
-
Googler authored
RELNOTES: None. PiperOrigin-RevId: 738909024 Change-Id: Icef8aa0bdb76efe3f5035ceaf5a4401bb807f8bc
-
Fabian Meumertzheim authored
This enables `--host_jvm_args=-XX:+UnlockExperimentalVMOptions --host_jvm_args=-XX:+UseCompactObjectHeaders` to noticeably reduce Bazel's memory usage. Updates Guava to 33.4.5, which uses `VarHandle` instead of `Unsafe`. Warnings for `Unsafe` usage still show up due to missing `VarHandle` support in protobuf and have to be silenced. Closes #25623. PiperOrigin-RevId: 738847656 Change-Id: Ic5da079b556d5a3a7fe08e54722f50df6b47a54c
-
- Mar 20, 2025
-
-
Googler authored
Migrate the `JavaStarlarkApiTest.javaTest_propagatesDirectNativeLibrariesInJavaInfo` test to Starlark The test is removed from Bazel and added in `@rules_java` PiperOrigin-RevId: 738781618 Change-Id: I77ec455684b4c3752d65513e753c9f93555f0f5e
-
Googler authored
Migrate the `JavaStarlarkApiTest.javaBinary_propagatesDirectNativeLibrariesInJavaInfo` test to Starlark The test is removed from Bazel and added in `@rules_java` PiperOrigin-RevId: 738776974 Change-Id: I06655a5102bed754d182909b859701ea6a22aaef
-
Googler authored
It's documented to return Unix millis, but it currently returns a Windows time. PiperOrigin-RevId: 738769695 Change-Id: I656c87ffedd9222d9a4db91fd2f12da2659cb595
-
Googler authored
Migrate the `JavaStarlarkApiTest.javaLibrary_propagatesDirectNativeLibrariesInJavaInfo` test to Starlark The test is removed from Bazel and added in `@rules_java` PiperOrigin-RevId: 738760528 Change-Id: I97cc57cfec6393b86f0c2f80404dadf419479b49
-
Googler authored
The test is removed from Bazel and added in `@rules_java` PiperOrigin-RevId: 738757119 Change-Id: Ifbf6d942f64babe517cbda073ca8b23ef989c0a7
-
Googler authored
The test is removed from Bazel and added in `@rules_java` PiperOrigin-RevId: 738754200 Change-Id: If3d844e40c6bb4cd5ab622df76a332281c4eefb5
-
Googler authored
The test is removed from Bazel and added in `@rules_java` PiperOrigin-RevId: 738750930 Change-Id: I8759df3c3867c385c07d770690eee2b4b8c69da2
-
Googler authored
The test is removed from Bazel and added in `@rules_java` PiperOrigin-RevId: 738747774 Change-Id: I50ac31df07206b849298274b7ce2ffa22f083659
-
Googler authored
The test is removed from Bazel and added in `@rules_java` PiperOrigin-RevId: 738743553 Change-Id: I121d4550635c79aee76bfc22ecd1c53e1cb9bc65
-
Googler authored
The test is removed from Bazel and added in `@rules_java` PiperOrigin-RevId: 738738739 Change-Id: I4662b0e9e590042f9940dde7bcaaacdd9060e127
-
Googler authored
The test is removed from Bazel and added in `@rules_java` PiperOrigin-RevId: 738734994 Change-Id: If8d69096709cc1aee05e9c139521490f8c2250cd
-
Googler authored
The test is removed from Bazel and added in `@rules_java` PiperOrigin-RevId: 738731692 Change-Id: I485e8cd0760c7272da2943f591dc8e4c316e041b
-