Using Bzlmod with Bazel >=6
- Enable with
common --enable_bzlmod
in.bazelrc
. - Add to your
MODULE.bazel
file:
bazel_dep(name = "rules_zig", version = "0.4.0")
Using WORKSPACE
Paste this snippet into your WORKSPACE.bazel
file:
load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
http_archive(
name = "rules_zig",
sha256 = "b4e95afef292b8fe00cd2a4272176e1cb466138dc7ab370a4ed752c653420b25",
strip_prefix = "rules_zig-0.4.0",
url = "https://github.com/aherrmann/rules_zig/releases/download/v0.4.0/rules_zig-0.4.0.tar.gz",
)
###################
# rules_zig setup #
###################
# Fetches the rules_zig dependencies.
# If you want to have a different version of some dependency,
# you should fetch it *before* calling this.
# Alternatively, you can skip calling this function, so long as you've
# already fetched all the dependencies.
load("@rules_zig//zig:repositories.bzl", "rules_zig_dependencies", "zig_register_toolchains")
rules_zig_dependencies()
zig_register_toolchains(
name = "zig",
zig_versions = [
"0.12.0",
"0.11.0",
],
)
Highlights
- Support for Zig SDK versions 0.12.0 and 0.11.0.
- Support for builds involving multiple Zig SDK versions via transition on the
--@zig_toolchains//:version
flag.
Breaking Changes
- The zig module extension no longer accepts a name attr.
What's Changed
- chore: refactor ZigModuleInfo by @aherrmann in #233
- chore(deps): update dependency rules_multirun to v0.7.0 by @renovate in #235
- [chore] track Zig SDK version by @aherrmann in #236
- chore(deps): update dependency aspect_bazel_lib to v2.4.2 by @renovate in #234
- chore(deps): update dependency aspect_bazel_lib to v2.5.0 by @renovate in #237
- chore(deps): update dependency rules_multirun to v0.8.1 by @renovate in #238
- chore(deps): update dependency aspect_bazel_lib to v2.5.1 by @renovate in #239
- chore(deps): update softprops/action-gh-release action to v2 by @renovate in #241
- chore(deps): update dependency bazel to v7.1.0 by @renovate in #242
- chore(deps): update dependency aspect_bazel_lib to v2.5.3 by @renovate in #240
- chore(deps): update dependency platforms to v0.0.9 by @renovate in #244
- chore(deps): update dependency bazel to v7.1.1 by @renovate in #243
- chore(deps): update dependency rules_multirun to v0.9.0 by @renovate in #245
- chore: use
json.encode
instead of struct method. by @aherrmann in #246 - chore(deps): update dependency cgrindel_bazel_starlib to v0.20.2 by @renovate in #247
- chore(deps): update dependency aspect_bazel_lib to v2.6.0 by @renovate in #248
- chore(deps): update dependency aspect_bazel_lib to v2.6.1 by @renovate in #249
- chore(deps): update dependency gazelle to v0.36.0 by @renovate in #251
- chore(deps): update dependency bazel_gazelle to v0.36.0 by @renovate in #250
- chore(deps): update dependency aspect_bazel_lib to v2.7.0 by @renovate in #252
- feat: external and persisted Zig cache by @aherrmann in #253
- docs: generate stardocs for module extensions by @aherrmann in #256
- feat!: support multiple Zig SDK versions by @aherrmann in #258
- feat: support Zig version transion by @aherrmann in #260
- feat: sort specified Zig SDK versions by semantic version by @aherrmann in #261
- feat: implicit default Zig SDK version by @aherrmann in #262
- feat: root module can specify default Zig version by @aherrmann in #263
- docs: update zig module extension documentation by @aherrmann in #264
- chore: trigger CI on base branch change by @aherrmann in #265
- test: Zig version tests use version build flag by @aherrmann in #266
- feat: generate config settings for version ranges by @aherrmann in #268
- chore(deps): update dependency aspect_bazel_lib to v2.7.1 by @renovate in #269
- test: add unit tests for zig module extension by @aherrmann in #270
- chore(deps): update dependency io_bazel_rules_go to v0.47.0 by @renovate in #272
- feat: support Zig versions 0.11.0 and 0.12.0 by @github-actions in #271
- fix: dynamic linking on MacOS with Zig 0.12.0 by @aherrmann in #275
- test: re-enable Zig docs generation for Zig 0.12.0 on MaCOS by @aherrmann in #276
Full Changelog: v0.3.0...v0.4.0