Release 7.0.0-pre.20230302.1 (2023-03-13)

Baseline: c1382105d342e8e00f9e5ae079fb24cd54c72e78

Incompatible changes:

  - This has the side effect of changing the message on unsuccessful
    builds from
    ```
    FAILED: Build did NOT complete successfully (0 packages loaded)
    ```
    to
    ```
    ERROR: Build did NOT complete successfully
    ```
  - Bazel no longer increases the delay between progress updates when
    there is no cursor control.
  - This has the side effect of changing the message on unsuccessful
    builds from
    ```
    FAILED: Build did NOT complete successfully (0 packages loaded)
    ```
    to
    ```
    ERROR: Build did NOT complete successfully
    ```
  - the --experimental_async_execution flag is now a no-op.
  - --experimental_replay_action_out_err is not a no-op.
  - `cquery --output=files` also outputs source files.
  - `--incompatible_strict_conflict_checks` is flipped to true. See
    https://github.com/bazelbuild/bazel/issues/16729 for details.
  - `--incompatible_strict_conflict_checks` is flipped to true. See
    https://github.com/bazelbuild/bazel/issues/16729 for details.
  - `--incompatible_always_include_files_in_data` is flipped to true.
    See https://github.com/bazelbuild/bazel/issues/16654 for details.
  - This changes the behavior of Python version in exec/host
    configuration. Mitigation is to set Python version on the targets.
  - When multiple --deleted_packages options are passed on the
    command line, they will be concatenated instead of the latest one
    taking effect.
  - This has the side effect of changing the message on unsuccessful
    builds from
  - JSON profile: Use doubles instead of strings for counter series.
  - query --output=proto --order_output=deps now returns targets in
    topological order (previously there was no ordering).
  - --experimental_build_transitive_python_runfiles is flipped to
    false. See #16303 for details
  - --incompatible_python_disable_py2 is flipped to true. See #17293
    for details.
  - When remote cache evicts blobs, Bazel will exit with code 39.
  - `--features` only applies to targets built in the target
    configuration, and `--host_features` is used for the host / exec
    configuration (gated behind `--incompatible_use_host_features`)

New features:

  - The `aquery` and `cquery` commands now respect the
    `--query_file` flag just like the `query` command.

Important changes:

  - The new path variable `$(rlocationpath ...)` and its plural form
    `$(rlocationpaths ...)` can be used to expand labels to the paths
    accepted by the `Rlocation` function of runfiles libraries. This
    is the preferred way to access data dependencies at runtime and
    works on all platforms, even when runfiles are not enabled (e.g.,
    on Windows by default).
  - Starlark `print()` statements are now emitted iff the line of
    code is executed. They are no longer replayed on subsequent
    invocations unless the Starlark code is re-executed.
    Additionally, multiple identical `print()` statements (same
    string from the same line of code, e.g. from a loop) are all
    emitted and no longer deduplicated.
  - Fixes a bug where some compilation flags would not be applied to
    a cc_test
  - removed outdated ctx.host_fragments
  - removed outdated ctx.host_configuration
  - Now that the host configuration is finished, `genrule` should
    prefer the use of `tools` and stop using `exec_tools`.
  - Added a `native.package_relative_label()` function, which
    converts a label string to a Label object in the context of the
    calling package, in contrast to `Label()`, which does so in the
    context of the current .bzl file. Both functions now also accept
    relative labels such as `:foo`, and are idempotent.
  - Update Android manifest merger to v30.1.3, and also drop support
    for legacy (pre-D8) desugaring.
  - Adds coverage metric support to android_local_test
  - Correctly encode double value positive infinity as "inf" instead
    of "+inf" for textprotos.
  - Add --use_target_platform_for_tests which uses the target
    platform for executing tests instead of the execution platform.
  - Custom C++ rules on Windows calling
    cc_common.create_linking_context_from_compilation_outputs should
    review whether each target of the rule type should produce a
    dynamic library since a condition which blocked their creation
    has been moved to the rules from behind the API.

This release contains contributions from many people at Google, as well as Alex Eagle, Amanda L Martin, Andreas Herrmann, Ankush Goyal, Anthony Ter-Saakov, Artem Zinnatullin, aryeh, Austin Schuh, Benjamin Lee, Benjamin Peterson, Benjamin Peterson, Ben Lee, Brentley Jones, Chirag Ramani, Christopher Peterson Sauer, Christopher Sauer, Daniel Grunwald, Daniel KT, Daniel Wagner-Hall, Ed Schouten, Emil Kattainen, Ezekiel Warren, Fabian Meumertzheim, Fabian Meumertzheim, Fahrzin Hemmati, Fahrzin Hemmati, Gaspare Vitta, Greg Magolan, Halil Sener, Hao Yuan, hvadehra, hvd, James Ma, John Hinnegan, Jon Parise, jonrose-dev, keertk, Keith Smiley, Krzysztof Naglik, kshyanashree, Kun-Lu, Lee Mracek, lripoche, Matt Mackay, Maxwell Elliott, mohamadk, nathyong, Nick Korostelev, Oliver Lee, Patrick Balestra, Patrick Balestra, Red Daly, robincaloudis, Robin Tweedie, Roger Hu, Saleem Abdulrasool, Sara Adams, Sascha Moecker, Severin Strobl, Siddhesh Bhupendra Kuakde, Simon Mavi Stewart, Son Luong Ngoc, Stiopa Koltsov, tbaing, Ted Kaplan, Thulio Ferraz Assis, Tom Cnops, Ulf Adams, Ulrik Falklof, Uri Baghin, Xavier Bonaventura, Xdng Yng, Xiangquan Xiao, Yannic Bonenberger, Yannic, Yi Cheng, yuzhy8701.
1 file changed
tree: 218fcc3b65a4a737240c91af806edc20e0f56b4b
  1. .bazelci/
  2. .github/
  3. examples/
  4. scripts/
  5. site/
  6. src/
  7. third_party/
  8. tools/
  9. .bazelrc
  10. .gitattributes
  11. .gitignore
  12. AUTHORS
  13. BUILD
  14. CHANGELOG.md
  15. CODE_OF_CONDUCT.md
  16. CODEOWNERS
  17. combine_distfiles.py
  18. combine_distfiles_to_tar.sh
  19. compile.sh
  20. CONTRIBUTING.md
  21. CONTRIBUTORS
  22. distdir.bzl
  23. distdir_deps.bzl
  24. LICENSE
  25. maven_install.json
  26. MODULE.bazel
  27. README.md
  28. SECURITY.md
  29. WORKSPACE
  30. WORKSPACE.bzlmod
README.md

Bazel

{Fast, Correct} - Choose two

Build and test software of any size, quickly and reliably.

  • Speed up your builds and tests: Bazel rebuilds only what is necessary. With advanced local and distributed caching, optimized dependency analysis and parallel execution, you get fast and incremental builds.

  • One tool, multiple languages: Build and test Java, C++, Android, iOS, Go, and a wide variety of other language platforms. Bazel runs on Windows, macOS, and Linux.

  • Scalable: Bazel helps you scale your organization, codebase, and continuous integration solution. It handles codebases of any size, in multiple repositories or a huge monorepo.

  • Extensible to your needs: Easily add support for new languages and platforms with Bazel's familiar extension language. Share and re-use language rules written by the growing Bazel community.

Getting Started

Documentation

Reporting a Vulnerability

To report a security issue, please email security@bazel.build with a description of the issue, the steps you took to create the issue, affected versions, and, if known, mitigations for the issue. Our vulnerability management team will respond within 3 working days of your email. If the issue is confirmed as a vulnerability, we will open a Security Advisory. This project follows a 90 day disclosure timeline.

Contributing to Bazel

See CONTRIBUTING.md

Build status