v0.10.0
github-actions
released this
19 Oct 07:50
·
406 commits
to master
since this release
Using Bzlmod with Bazel 6
- Enable with
common --enable_bzlmod
in.bazelrc
. - Add to your
MODULE.bazel
file:
bazel_dep(name = "rules_nixpkgs_core", version = "0.10.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 = "io_tweag_rules_nixpkgs",
sha256 = "980edfceef2e59e1122d9be6c52413bc298435f0a3d452532b8a48d7562ffd67",
strip_prefix = "rules_nixpkgs-0.10.0",
urls = ["https://github.com/tweag/rules_nixpkgs/releases/download/v0.10.0/rules_nixpkgs-0.10.0.tar.gz"],
)
load("@io_tweag_rules_nixpkgs//nixpkgs:repositories.bzl", "rules_nixpkgs_dependencies")
rules_nixpkgs_dependencies()
load("@io_tweag_rules_nixpkgs//nixpkgs:nixpkgs.bzl", "nixpkgs_git_repository", "nixpkgs_package", "nixpkgs_cc_configure")
load("@io_tweag_rules_nixpkgs//nixpkgs:toolchains/go.bzl", "nixpkgs_go_configure") # optional
0.10.0 - 2023-10-18
Added
- nixpkgs_nodejs_configure to import a NodeJS toolchain. See #222.
- nixpkgs_nodejs_configure_platforms for platform transparent npm_install. See [#309].
- nixkpgs_python_configure generates an interpreter target. See #255.
- nixpkgs_go_configure gained an attribute_path attribute. See #288.
- nixpkgs_cc_configure gained the ability to configure CXX_FLAGS. See #298.
- nixpkgs_local_repository now accepts a flake.lock file to generate a nixpkgs repository. See #338.
- nixpkgs_python_repository can import Nix provided Python packages, e.g. through poetry. See #343.
- nixpkgs_http_repository can download a nixpkgs repository over HTTP. See #356.
- nixpkgs_flake_package can add a Nix package from a flake. See #380.
- rules_nixpkgs gained the ability to copy generated Nix store paths to a remote store for remote execution support. See #404.
- rules_nixpkgs_core gained bzlmod module extensions nix_repo and nix_pkg to import nixpkgs repositories and packages in MODULE.bazel files directly. See #423.
Changed
- nixpkgs_cc_configure now supports cross compilation toolchains. See #241 and #401.
- rules_nixpkgs_dependencies takes a toolchains parameter to specify which rules_nixpkgs components to imoprt. See #257
- nixpkgs_cc_configure now works without an explicit nix_file or nix_file_content attribute. See #334.
- nixpkgs_python_configure now exposes the requirements.json file. See #407.
Fixed
- A performance issue with nixpkgs_package on MacOS due to slow file copies was resolved. See #256.
- A performance issue with nixpkgs_package due to repeated rule restarts was resolved. See #263.
- Compatibility issues with Bazel 6 for nixpkgs_configure_java were resolved. See #273.
- C++ build errors on MacOS due to -Welaborated-enum-base were fixed. See #382.
- Hard to read error reporting was improved. See #389.
- The http_archive type attribute is now forwarded to rules_nixpkgs component imports. See #411.
- Configuration issues when cross-compiling from Linux to MacOS were fixed. See #413.
Breaking changes
- rules_nixpkgs_go: Custom derivations passed to
nixpkgs_go_configure
(vianix-file
,nix-file-content
orattribute_path
) must now contain aversion
attribute. See #385.
What's Changed
- Use stat to retain file permissions when copying files by @lamcw in #259
- Misc doc improvements for default BUILD file for nixpkgs_package by @googleson78 in #260
- Add an interpreter target to python toolchain by @benradf in #261
- Avoid restarting nixpkgs_package by @lamcw in #263
- Update bzlmod dependencies and enhance separation of components by @avdv in #257
- Convert to flake by @avdv in #265
- flake.lock: Update by @github-actions in #266
- Add nodejs toolchain by @betaboon in #222
- flake.lock: Update by @github-actions in #267
- Bump nix version for testing to 2.7 by @tshaynik in #270
- flake.lock: Update by @github-actions in #274
- Skip writing to the remote cache without API key by @avdv in #276
- Bump actions/checkout from 3.0.2 to 3.1.0 by @dependabot in #268
- Skip writing to the remote cache with no API key - no. 2 by @avdv in #277
- Bump cachix/install-nix-action from 17 to 18 by @dependabot in #271
- Replace Buildkite CI badge with Github badge by @avdv in #279
- Add NodeJS docs to top-level readme by @aherrmann in #283
- Bump DeterminateSystems/update-flake-lock from 14 to 15 by @dependabot in #284
- examples: mkShell -> mkShellNoCC by @evertedsphere in #286
- readme: load http_archive explicitly by @evertedsphere in #287
- toolchains/go: allow specifying go package by attribute_path by @evertedsphere in #288
- flake.lock: Update by @github-actions in #275
- flake.lock: Update by @github-actions in #290
- Bump actions/checkout from 3.1.0 to 3.2.0 by @dependabot in #293
- Configure bazelisk to use Bazel 5.x by @avdv in #297
- flake.lock: Update by @github-actions in #292
- cc: make CXX_FLAG configurable by @evertedsphere in #298
- Split the docs generation into a separate module by @z8v in #296
- Fix java toolchain config to allow for use with Bazel 6 by @tshaynik in #273
- flake.lock: Update by @github-actions in #300
- Bump actions/checkout from 3.2.0 to 3.3.0 by @dependabot in #302
- Fix Python container example by @aherrmann in #301
- Bump DeterminateSystems/update-flake-lock from 15 to 16 by @dependabot in #307
- Remove any docs references from core by @z8v in #304
- flake.lock: Update by @github-actions in #308
- Use OpenSSL in nix rust toolchain example by @benradf in #305
- Upgrade nixpkgs to nixos-22.11 by @avdv in #311
- Update platforms to 0.0.6 by @mrkkrp in #312
- Update the Rust toolchain example by @mrkkrp in #314
- Pass the workspace name as an attribute by @aherrmann in #315
- Update to Bazel version 6 and nixpkgs 22.11 by @aherrmann in #313
- Add example for nodejs toolchain with npm_install repository rule by @kczulko in #309
- Bump cachix/install-nix-action from 18 to 19 by @dependabot in #317
- Use libtool from nixpkgs by @uri-canva in #321
- Separate core tests and test with bzlmod enabled by @aherrmann in #319
- flake.lock: Update by @github-actions in #316
- Separate toolchains/java tests and run with bzlmod enabled by @aherrmann in #320
- Separate testing module and bzlmod tests for toolchains/posix by @aherrmann in #323
- Separate testing module and bzlmod tests for toolchains/cc by @aherrmann in #325
- Separate testing module and bzlmod tests for toolchains/rust by @aherrmann in #329
- Separate testing module and bzlmod tests for toolchains/go by @aherrmann in #326
- Separate testing module and bzlmod tests for toolchains/nodejs by @aherrmann in #332
- Update
nixpkgs_cc_configure
to work withoutnix_file
ornix_content
by @z8v in #334 - Set CODEOWNERS by @aherrmann in #336
- Update nixopts docs on path literal escaping by @aherrmann in #337
- Separate testing module and bzlmod tests for toolchains/python by @evertedsphere in #335
- Generate the local nixpkgs repository from flake.lock by @z8v in #338
- Bump cachix/install-nix-action from 19 to 20 by @dependabot in #339
- Design document for Bazel module extension by @aherrmann in #344
- Initial implementation of python modules with poetry by @layus in #343
- Bump DeterminateSystems/update-flake-lock from 16 to 17 by @dependabot in #340
- flake.lock: Update by @github-actions in #333
- Fix arguments in cc_configure by @dmadisetti in #350
- ci(Mergify): configuration update by @layus in #352
- Bump actions/checkout from 3.3.0 to 3.4.0 by @dependabot in #353
- Add nixpkgs_http_repository by @aherrmann in #356
- flake.lock: Update by @github-actions in #354
- README: add instructions for bazel6 + Java by @motiejus in #358
- Bump actions/checkout from 3.4.0 to 3.5.0 by @dependabot in #360
- Bump DeterminateSystems/update-flake-lock from 17 to 18 by @dependabot in #362
- flake.lock: Update by @github-actions in #361
- Create core module extensions by @aherrmann in #363
- Bump DeterminateSystems/update-flake-lock from 18 to 19 by @dependabot in #366
- flake.lock: Update by @github-actions in #367
- Implement remaining nix_repo tags by @aherrmann in #364
- Bump actions/checkout from 3.5.0 to 3.5.2 by @dependabot in #372
- doc: add a guide covering basic rules_nixpkgs use + Nix prerequisites by @evertedsphere in #294
- flake.lock: Update by @github-actions in #375
- Implement remaining nix_pkg tags by @aherrmann in #369
- Fix broken direnv link by @z8v in #376
- Bump flask from 2.2.3 to 2.3.2 in /testing/python by @dependabot in #378
- Set -Wno-elaborated-enum-base on Darwin by @aherrmann in #382
- flake.lock: Update by @github-actions in #377
- rules_go 0.39.1 by @ylecornec in #384
- go 1.20 support by @ylecornec in #385
- feature: nixpkgs_flake_package by @rickvanprim in #380
- Footnote about enabling experimental features. by @benradf in #387
- flake.lock: Update by @github-actions in #386
- flake.lock: Update by @github-actions in #388
- Improve nix error reporting in bazel logs by @layus in #389
- Bump cachix/install-nix-action from 20 to 21 by @dependabot in #390
- Bump actions/checkout from 3.5.2 to 3.5.3 by @dependabot in #394
- flake.lock: Update by @github-actions in #391
- Bump cachix/install-nix-action from 21 to 22 by @dependabot in #396
- flake.lock: Update by @github-actions in #397
- flake.lock: Update by @github-actions in #399
- Update rust toolchain to use rules_rust 0.22.0 by @contagnas in #393
- Add support for cross cc compilers by @layus in #240
- cc: Add cross_cpu arg to nixpkgs_cc_toolchain_config by @DolceTriade in #401
- Bump DeterminateSystems/update-flake-lock from 19 to 20 by @dependabot in #406
- Bump actions/checkout from 3.5.3 to 3.6.0 by @dependabot in #405
- python: Expose the requirements.json file by @DolceTriade in #407
- crosscompile: Add an example for cross compiling by @DolceTriade in #402
- flake.lock: Update by @github-actions in #408
- Add support for nix store remote copying by @z8v in #404
- forward http_archive type to submodules by @malt3 in #411
- build(deps): bump actions/checkout from 3.6.0 to 4.0.0 by @dependabot in #410
- build(deps): bump cachix/install-nix-action from 22 to 23 by @dependabot in #409
- Fix
darwin
flag when cross-compiling from Linux to MacOS by @benradf in #413 - Skip
exec_constraints
keyword arg for nixpkgs_package by @avdv in #418 - Add tutorial for setting up the remote execution infra by @z8v in #414
- Simplify rules_nixpkgs_core module extensions by @aherrmann in #423
- build(deps): bump actions/checkout from 4.0.0 to 4.1.1 by @dependabot in #432
- Exclude .bazeliskrc from git archive by @aherrmann in #431
- Release 0.10.0 by @aherrmann in #433
New Contributors
- @lamcw made their first contribution in #259
- @googleson78 made their first contribution in #260
- @benradf made their first contribution in #261
- @github-actions made their first contribution in #266
- @tshaynik made their first contribution in #270
- @evertedsphere made their first contribution in #286
- @z8v made their first contribution in #296
- @kczulko made their first contribution in #309
- @uri-canva made their first contribution in #321
- @dmadisetti made their first contribution in #350
- @motiejus made their first contribution in #358
- @ylecornec made their first contribution in #384
- @rickvanprim made their first contribution in #380
- @contagnas made their first contribution in #393
- @DolceTriade made their first contribution in #401
- @malt3 made their first contribution in #411
Full Changelog: v0.9.0...v0.10.0