Skip to content

v2.0.1

Compare
Choose a tag to compare
@github-actions github-actions released this 16 Nov 22:35
· 134 commits to main since this release
c3a8cb0

馃帀 Welcome to the first major release of bazel-lib since 1.0, which was released in June 2022.

We've carefully followed semver to this point, which means we couldn't make any breaking changes for the last 16 months.
To keep the project healthy, we have to occasionally clean up old code, so this release has the accumulated breaking changes.

BREAKING CHANGES

We no longer officially support Bazel 5. We encourage users to upgrade to Bazel 6.

We no longer provide a workaround for Bazel 5 users to get a @local_config_platform repository.
If you need this, you must upgrade to Bazel 6.

JavaScript developers must upgrade to rules_js v1.34.0 and rules_ts v2.1.0.

Toolchains:

  • Toolchains are no longer automatically registered for WORKSPACE users. Users must call the aspect_bazel_lib_register_toolchains macro or call the register_[xyz]_toolchain macros individually. See snippets in the release notes below.
  • The host repository has been moved from the extension ext into a differed module extension named host.

jq:

We now run jq version 1.7, which includes a Linux arm64 binary.

  • jq stamp variables are now of the form $stamp[0].MY_VARIABLE rather than $stamp.MY_VARIABLE.

Starlark APIs:

  • The exclude_prefixes attribute is removed from copy_to_directory and copy_to_directory_bin_action. Users should use exclude_srcs_patterns with glob patterns instead.
  • The to_workspace_path helper function is removed from paths. Use paths.to_repository_relative_path instead.
  • The to_manifest_path helper function is removed from paths. Use paths.to_rlocation_path instead.
  • output_dir is removed from expand_variables. Pass output directory/tree artifacts to outs instead.
  • output_dir is removed from run_binary. Use out_dirs instead.
  • The copy_file_action helper now uses the coreutils toolchain to perform a copy.
  • The copy_directory_action helper is removed. Use copy_directory_bin_action instead.
  • The copy_to_directory_action helper has been removed. Use copy_to_directory_bin_action action instead.
  • The load for expand_template has moved from @aspect_bazel_lib//lib:expand_make_vars.bzl to @aspect_bazel_lib//lib:expand_template.bzl.

New Features

Using Bzlmod with Bazel 6:

  1. Enable with common --enable_bzlmod in .bazelrc.
  2. Add to your MODULE.bazel file:
bazel_dep(name = "aspect_bazel_lib", version = "2.0.1")

Read more about bzlmod: https://blog.aspect.dev/bzlmod

Using WORKSPACE

Paste this snippet into your WORKSPACE file:

load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")

http_archive(
    name = "aspect_bazel_lib",
    sha256 = "4b32cf6feab38b887941db022020eea5a49b848e11e3d6d4d18433594951717a",
    strip_prefix = "bazel-lib-2.0.1",
    url = "https://github.com/aspect-build/bazel-lib/releases/download/v2.0.1/bazel-lib-v2.0.1.tar.gz",
)

load("@aspect_bazel_lib//lib:repositories.bzl", "aspect_bazel_lib_dependencies", "aspect_bazel_lib_register_toolchains")

# Required bazel-lib dependencies

aspect_bazel_lib_dependencies()

# Register bazel-lib toolchains

aspect_bazel_lib_register_toolchains()

What's Changed

  • fix: exclude bazeliskrc from smoke test by @kormide in #654
  • fix(ci): fix bzlmod issues and enable on ci by @kormide in #658
  • fix: fix a bug where toolchain repositories were potentially duplicated by @kormide in #662
  • feat: expose toolchains used for copy actions by @kormide in #661
  • fix: remove need for rules_go when depending on a bzl_library target (#663) by @kormide in #664

Full Changelog: v2.0.0...v2.0.1