Releases: bazel-contrib/rules_nodejs
4.7.0
There are no npm packages published for this release, since they are the same as 4.6.x
http_archive(
name = "build_bazel_rules_nodejs",
sha256 = "6f15d75f9e99c19d9291ff8e64e4eb594a6b7d25517760a75ad3621a7a48c2df",
urls = ["https://github.com/bazelbuild/rules_nodejs/releases/download/4.7.0/rules_nodejs-4.7.0.tar.gz"],
)
# or for core package
http_archive(
name = "rules_nodejs",
sha256 = "028a98df48fd33c9932b3a442a3f55fee5f169d5e3670b3bc48b801f94e012a0",
urls = ["https://github.com/bazelbuild/rules_nodejs/releases/download/4.7.0/rules_nodejs-core-4.7.0.tar.gz"],
)
4.6.3
Note, no npm packages were published for this release, as there were no changes since 4.6.2
http_archive(
name = "build_bazel_rules_nodejs",
sha256 = "ad3e5afa52ef9aac4da426f61e339c054ecbc0e6665cec2109f8846b4c8339e3",
urls = ["https://github.com/bazelbuild/rules_nodejs/releases/download/4.6.3/rules_nodejs-4.6.3.tar.gz"],
)
# Or for core package
http_archive(
name = "rules_nodejs",
sha256 = "5107baea6eb4ca5ea114bd027e6cc7c92df33922d8af891e4a00c29a0183d267",
urls = ["https://github.com/bazelbuild/rules_nodejs/releases/download/4.6.3/rules_nodejs-core-4.6.3.tar.gz"],
)
What's Changed
- fix(builtin): take custom node_repositories value into account when checking if Node version exists for the platform by @mattem in #3342
Full Changelog: 4.6.2...4.6.3
4.6.2
http_archive(
name = "build_bazel_rules_nodejs",
sha256 = "2644a66772938db8d8c760334a252f1687455daa7e188073f2d46283f2f6fbb7",
urls = ["https://github.com/bazelbuild/rules_nodejs/releases/download/4.6.2/rules_nodejs-4.6.2.tar.gz"],
)
http_archive(
name = "rules_nodejs",
sha256 = "f596117040134b9497a1049efe7a785924b4ff22557669780a0fa37e22b827bd",
urls = ["https://github.com/bazelbuild/rules_nodejs/releases/download/4.6.2/rules_nodejs-core-4.6.2.tar.gz"],
)
note, npm packages are tagged lts
rather than latest
What's Changed
- chore: renovate stop sending PRs for examples by @alexeagle in #3246
- fix(cypress): use depsets for runfiles and data by @mrmeku in #3240
- fix(builtin): npm_package_bin include runfiles in DefaultInfo by @alexeagle in #3261
- fix(typescript): propagate tags to validate_options by @djmarcin in #3260
- Update NodeJS Versions by @mattem in #3265
New Contributors
Full Changelog: 4.6.1...4.6.2
5.1.0
Big thanks to @twheys for extending ts_project
to allow filegroup-like inputs (where the outputs cannot be pre-declared by the rule)
and to @fmeum for a signficant performance fix for npm packages in the analysis phase!
Upgrade:
http_archive(
name = "build_bazel_rules_nodejs",
sha256 = "c077680a307eb88f3e62b0b662c2e9c6315319385bc8c637a861ffdbed8ca247",
urls = ["https://github.com/bazelbuild/rules_nodejs/releases/download/5.1.0/rules_nodejs-5.1.0.tar.gz"],
)
load("@build_bazel_rules_nodejs//:repositories.bzl", "build_bazel_rules_nodejs_dependencies")
build_bazel_rules_nodejs_dependencies()
and update @bazel
-scoped npm packages.
For the "core" package
http_archive(
name = "rules_nodejs",
sha256 = "03b542b22a95c4b6591630f3f6b176294033e190e08e044bdb23883693702b6b",
urls = ["https://github.com/bazelbuild/rules_nodejs/releases/download/5.1.0/rules_nodejs-core-5.1.0.tar.gz"],
)
What's Changed
- Update esbuild versions by @mattem in #3303
- Add Glean as an organizational adopter by @tony-scio in #3305
- fix(builtin): make linker aspect run in constant time per target by @fmeum in #3301
- fix(builtin): reduce linker debug string allocations by @fmeum in #3309
- Update NodeJS Versions by @mattem in #3308
- Update esbuild versions by @mattem in #3307
- Changed calculation of outs in ts_project to support using rule outputs as srcs by @twheys in #3228
New Contributors
- @tony-scio made their first contribution in #3305
- @twheys made their first contribution in #3228
Full Changelog: 5.0.2...5.1.0
5.0.2
Upgrade with:
http_archive(
name = "build_bazel_rules_nodejs",
sha256 = "a09edc4ba3931a856a5ac6836f248c302d55055d35d36e390a0549799c33145b",
urls = ["https://github.com/bazelbuild/rules_nodejs/releases/download/5.0.2/rules_nodejs-5.0.2.tar.gz"],
)
# or
http_archive(
name = "rules_nodejs",
sha256 = "cc747e23225cde1811ca7a001b765011e9f84598fd8f0d7dfaeb61dec6b5bc1a",
urls = ["https://github.com/bazelbuild/rules_nodejs/releases/download/5.0.2/rules_nodejs-core-5.0.2.tar.gz"],
)
What's Changed
- fix(builtin): pass kwargs from node_repositories helper by @alexeagle in #3287
- Update esbuild versions by @mattem in #3288
- fix(jasmine): replace deprecated Jasmine APIs that have been removed in version 4 by @alan-agius4 in #3283
- fix: use robocopy in copy_file#is_directory so we don't hit file path length limit of xcopy by @gregmagolan in #3295
- fix(jasmine): can not reference runner when exports_directories_only=… by @thesayyn in #3293
Full Changelog: 5.0.1...5.0.2
5.0.1
Upgrade to 5.0.0 first. Then, change WORKSPACE:
http_archive(
name = "build_bazel_rules_nodejs",
sha256 = "f690430f4d4cc403b5c90d0f0b21842183b56b732fff96cfe6555fe73189906a",
urls = ["https://github.com/bazelbuild/rules_nodejs/releases/download/5.0.1/rules_nodejs-5.0.1.tar.gz"],
)
load("@build_bazel_rules_nodejs//:repositories.bzl", "build_bazel_rules_nodejs_dependencies")
build_bazel_rules_nodejs_dependencies()
for Core package
http_archive(
name = "rules_nodejs",
sha256 = "4537c08222a171bf9d7f96bab7da04daa986ca1386c035daf8a54fbeeb6abdf2",
urls = ["https://github.com/bazelbuild/rules_nodejs/releases/download/5.0.1/rules_nodejs-core-5.0.1.tar.gz"],
)
Then update @bazel
-scoped npm packages.
What's Changed
- Update esbuild versions by @mattem in #3271
- fix(create): add missing workspace dependency call by @alexeagle in #3272
- Update esbuild versions by @mattem in #3275
- refactor: bbrnj re-exports rules_nodejs providers by @alexeagle in #3274
- refactor: promote directory_file_path to public API by @alexeagle in #3276
- fix(builtin): prevent usage with InputArtifact directories by @alexeagle in #3278
Full Changelog: 5.0.0...5.0.1
5.0.0
🎉 Here it is, our twice-yearly major release with breaking changes and big improvements.
To upgrade, first change WORKSPACE:
load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
http_archive(
name = "build_bazel_rules_nodejs",
sha256 = "6b951612ce13738516398a8057899394e2b7a779be91e1a68f75f25c0a938864",
urls = ["https://github.com/bazelbuild/rules_nodejs/releases/download/5.0.0/rules_nodejs-5.0.0.tar.gz"],
)
load("@build_bazel_rules_nodejs//:repositories.bzl", "build_bazel_rules_nodejs_dependencies")
build_bazel_rules_nodejs_dependencies()
or for the "core" package
http_archive(
name = "rules_nodejs",
sha256 = "ee6e86e76fa558f83be7c13c32a4eafac2f03a25955ce0661cec7cddec58f8c4",
urls = ["https://github.com/bazelbuild/rules_nodejs/releases/download/5.0.0/rules_nodejs-core-5.0.0.tar.gz"],
)
Then update @bazel
-scoped npm packages to latest.
Finally, look through the migration guide at https://github.com/bazelbuild/rules_nodejs/wiki/Migrating-to-5.0. We'll continue updating this as users get through the migration.
Overview
The theme of the 5.0 release is reducing scope, tech debt, and maintenance burden of rules_nodejs, and unlocking the power of the community to build rulesets and extensions on top.
export_directories_only
onnpm_install
andyarn_install
is now True by default. This greatly speeds up builds by modelling third-party npm packages as directories rather than individual files, so Bazel has orders of magnitude fewer FS operations to perform in setting up a sandbox or runfiles tree. Thanks to our friends at EngFlow for sponsoring this work!- We're slowly renaming
build_bazel_rules_nodejs
torules_nodejs
by introducing the latter first as a "core" package. Most users are not yet affected. See "core" package docs. - The
@bazel/typescript
npm package is now much smaller, since thets_library
rule moved into@bazel/concatjs
- You can now use multiple versions of Node, since we reworked our toolchains support.
- We updated handling of
--stamp
to produce VCS-stamped outputs, see #3162
What's Changed
- refactor(builtin): npm_umd_bundle no longer allows directory sources by @alexeagle in #3010
- refactor: move ts_library to packages/concatjs by @alexeagle in #3035
- refactor: remove nested build_bazel_rules_typescript workspace by @alexeagle in #3036
- refactor: depend on bazel-skylib at runtime by @alexeagle in #3056
- refactor: remove packages/angular by @alexeagle in #3045
- refactor: remove labs package by @alexeagle in #3061
- chore: update default nodejs version to 16 by @alexeagle in #3107
- chore: cleanup _maybe helpers by @alexeagle in #3127
- chore: build_bazel_rules_nodejs depends on rules_nodejs by @alexeagle in #3130
- feat(node): use multiple versions of node, can run old and new toolch… by @dymart in #3125
- refactor: move platform definitions to core by @alexeagle in #3131
- chore: cleanup duplicate symbols in WORKSAPCE file by @gregmagolan in #3135
- feat(): macros nodejs_binary_toolchains nodejs_test_toolchains input … by @dymart in #3132
- fix(): remove node and use toolchain by @dymart in #3144
- fix(): remove _repository_args from nodejs_binary by @dymart in #3142
- fix(builtin): pkg_npm shouldn't assume the name of the nodejs toolchain by @alexeagle in #3129
- chore: concatjs shouldn't rely on hardcoded @nodejs name by @alexeagle in #3163
- feat(builtin): npm_install/yarn_install node repo by @alexeagle in #3164
- ci: configs use new toolchain by @alexeagle in #3166
- refactor: use new toolchain for running docs processing by @alexeagle in #3168
- refactor: linker tests use new toolchain by @alexeagle in #3169
- chore: always install rules_nodejs_dependencies by @alexeagle in #3170
- refactor: use new toolchain for nodejs_binary by @alexeagle in #3167
- refactor: deprecate node_repositories by @alexeagle in #3171
- chore: remove soldair from codeowners by @alexeagle in #3178
- docs: turn e2e/core into toolchain example by @alexeagle in #3177
- refactor: remove legacy node toolchain by @alexeagle in #3172
- refactor: split up @rules_nodjes and @build_bazel_rules_nodejs workspaces entirely by @gregmagolan in #3173
- feat: add StampSettingsInfo and STAMP_ATTRS by @gregmagolan in #3162
- chore(typescript): allow newer TS versions by @alexeagle in #3191
- chore: fixup load statement in ts_project/swc/tests/bzl by @gregmagolan in #3197
- chore: cleanup windows build & test tags by @gregmagolan in #3198
- feat: add src patch being copied to progress message of vendored copy_file by @gregmagolan in #3206
- chore: add --incompatible_exclusive_test_sandboxed to common and --keep_going for CircleCI by @gregmagolan in #3205
- refactor: split ts_project.bzl by @alexeagle in #3208
- chore: remove vendored bazel-skylib used by ts_project by @alexeagle in #3207
- refactor: remove package_json attribute from node_repositories by @gregmagolan in #3213
- fix: turn off preserve_symlinks in e2e/node_loader_no_preserve_symlinks test by @gregmagolan in #3216
- fix: change all cfg=host and cfg=target executable attributes to cfg=exec by @gregmagolan in #3215
- refactor: set symlink_node_modules default to False in yarn_install and npm_install by @gregmagolan in #3214
- fix: use tree artifacts via copy_directory with exports_directories_only by @gregmagolan in #2996
- refactor: remove user_managed_deps examples by @gregmagolan in #3220
- chore: update bazel to 4.2 by @alexeagle in #2926
- fix(typescript): better error when transpiler is used and no declarat… by @alexeagle in #3223
- feat: set exports_directories_only default to True in yarn_install & npm_install repository rules by @gregmagolan in #3219
- docs: update for 5.0 by @alexeagle in #3174
- refactor: move yarn fetch to a separate external repo by @alexeagle in #3230
- chore: remove check_bazel_version by @alexeagle in #3225
- test: re-enable examples_webapp by @alexeagle in #3224
- feat: default package_path to the directory of the package.json file in yarn_install and npm_install by @gregmagolan in #3233
- refactor: remove vendored_node by @alexeagle in #3234
- fix: create a bazel-out node_modules tree using copy_file in the external repo when exports_directories_only is True by @gregmagolan in #3241
- chore(esbuild): remove default value of npm from the npm_repository attr by @mattem in #3268
New Contributors
Full Changelog: 4.4.0...5.0.0-rc.0
5.0.0-rc.2
Please use 5.0.0 instead
5.0.0-rc.1
Please use 5.0.0-rc2 instead.
5.0.0-rc.0
replaced by 5.0.0-rc.1