Baseline: d60ce2c
Bazel 6.1.0 is a minor LTS release. It is fully backward compatible with Bazel 6.0 and contains selected changes by the Bazel community and Google engineers.
General
- Do not count tests as failed that have not started (#17269)
- Add an
--incompatible_strict_conflict_checks
alias for--experimental_strict_conflict_checks
. (#17589) - Rerun the artifact conflict check when --incompatible_strict_conflict_checks changes. (#17592)
- Add exec transition to Java version of
py_test
(#17594)
Android
- Multiplex worker fixes and tests for Android busybox tools (#17371)
- Make desugar dependencies deterministic (#17217)
Apple / Xcode
- Allow the timeout value for execute calls on a mac to be set via an environment variable
C++ / Objective-C
- Use
xcrun
to invokeinstall_name_tool
(#17253) - Add sanitizer features to
unix_cc_toolchain_config
(#17263) - Rulesets can start using the new optional form of
find_cpp_toolchain
now and benefit from the toolchain actually being optional once that has been implemented in a future version of Bazel. (#17331) - Enable
archive_param_file
feature by default for Windows (#17344) - Only try to create groups of test actions in the ui. (#17343)
- Find
libtool
when usingBAZEL_USE_CPP_ONLY_TOOLCHAIN
. (#17327) - Add
-dead_strip
in default opt link flags for darwin (#17312) - Fix a
cc_binary
bug forcc_shared_library
on Windows which preventedcc_shared_librarys
from working across packages (#17445) - Remove O1 from sanitizer feature flag defaults (#17439)
- Allow -v to libtool (#17459)
- Fix RPATHs for cc toolchain solib when sibling layout is used (#17506)
- Add
--host_features
flag (#17528) - Only fetch
@remote_coverage_tools
when collecting coverage (#17512, #17287) - Bump minimum supported macOS versions to 10.13 (#17570)
- Allow
.wasm
cc executable and dynamic library extension (#17440)
Configurability
- Do not clear
--platforms
on no-op change to--cpu
(#17273) - Set
--experimental_action_listeners
to default inexec
config (#17284) - Fix Bazel 6.0 crash regression when incompatible target skipping mixes with
--auto_cpu_environment_group
(#17613)
Coverage
- Emit LLVM coverage for source file paths with a
tmp
segment (#17324)
External Dependencies
- Fix
git_repository
with the latest version of Git. (#17247) - Add
SpellChecker
suggestions for common Bzlmod errors (#17216) - Accept tildes in
--override_module
(#17313) - Test and fix root symlink edge case in runfiles library (#17365)
- Fix Bash
runfiles_current_repository
for tools (#17329) - Fix label unambiguous canonical form to correctly report non-visible repo names (#17326)
- Prettify labels in action progress messages with Bzlmod (#17278)
- Do not recommend
shallow_since
forgit_repository
(#17356) - Bump version number in runfiles.bash init code (#17539)
- Properly report repo fetch progress during main repo mapping computation (#17544)
Java
- Register JavaCompileActionContext in Bazel (#17325)
- Fix Java coverage collection with Java 8 runtime (#17491)
- Make AutoBazelRepositoryProcessor compatible with Java 8 (#17504)
Local Execution
- Added support for user-specified resource types in the resource manager. The available amount of extra resources can be specified using the new
--local_extra_resources=<resourcename>=<amount>
command line flag, which is analogous to the existing--local_cpu_resources
and--local_memory_resources
flags. (#17229) - Allow Java coverage collection for external targets. (#17360)
- Add support for wrapping system streams in
WorkRequestHandler
(#17583)
Remote Execution
- Fix an issue where some intermediate outputs are downloaded with minimal mode when doing
bazel test
(#17234) - Make download progress not jumpy by always emitting trailing zero (#17290)
- Upload all logs in BEP even with minimal upload (#17299)
- Do the AC integrity check for disk part of the combined cache.(#17309)
- Improve BES uploader performance by not querying remote cache but always using bytestream protocol (#17352)
- Improve error message for concurrent modifications (#17396)
- Make bazel coverage work with minimal mode (#17397)
- Make Bazel more responsive and use less memory when
--jobs
is high (#17398) - Remove usage of gRPC Context cancellation in the remote execution client. (#17438)
- Reduce flakiness on Windows for BwoB tests (#17513)
- Exit with code 39 if remote cache evicted blobs that Bazel need during an invocation (#17496)
- Fix symlink file creation overhead (#17488)
- Allow following builds to continue when remote cache evicted files (#17538, #17601, #17605)
- Report background downloads for BwoB (#17619)
- Add flag
--experimental_writable_outputs
to allow Bazel generate writable outputs (#17617)
Starlark / Build Language
- Allow
map_each
to returnNone
inTemplateDict#add_joined
(#17288) - Allow
TemplateDict#map_each
callback to return a list of strings (#17306) - Added
native.package_relative_label
function (#17435)
Acknowledgements
This release contains contributions from many people at Google, as well as Ben Lee, Brentley Jones, Daniel Wagner, Ed Schouten, Ezekiel Warren, Fabian Meumertzheim, Keith Smiley, Krzysztof Naglik, Mathieu Olivari, Ted Kaplan, UebelAndre, Ozio85, Yannic, lunch-glide-pepper, and yuzhy8701.
Notice: Bazel installers contain binaries licensed under the GPLv2 with Classpath exception. Those installers should always be redistributed along with the source code.
Some versions of Bazel contain a bundled version of OpenJDK. The license of the bundled OpenJDK and other open-source components can be displayed by running the command bazel license
. The vendor and version information of the bundled OpenJDK can be displayed by running the command bazel info java-runtime
. The binaries and source-code of the bundled OpenJDK can be downloaded from our mirror server.
Security: All our binaries are signed with our public key 3D5919B448457EE0.