v3.3.0
Using Bzlmod with Bazel 6:
Add to your MODULE.bazel
file:
bazel_dep(name = "aspect_rules_ts", version = "3.3.0")
rules_ts_ext = use_extension("@aspect_rules_ts//ts:extensions.bzl", "ext", dev_dependency = True)
rules_ts_ext.deps(
ts_version_from = "//:package.json",
)
use_repo(rules_ts_ext, "npm_typescript")
Using WORKSPACE
Paste this snippet into your WORKSPACE
file:
load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
http_archive(
name = "aspect_rules_ts",
sha256 = "171e6d0f60a241478ae80624d3af09cfa25d1247380fd5c1a32902231d2c3303",
strip_prefix = "rules_ts-3.3.0",
url = "https://github.com/aspect-build/rules_ts/releases/download/v3.3.0/rules_ts-v3.3.0.tar.gz",
)
##################
# rules_ts setup #
##################
# Fetches the rules_ts 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("@aspect_rules_ts//ts:repositories.bzl", "rules_ts_dependencies")
rules_ts_dependencies(
# This keeps the TypeScript version in-sync with the editor, which is typically best.
ts_version_from = "//:package.json",
# Alternatively, you could pick a specific version, or use
# load("@aspect_rules_ts//ts:repositories.bzl", "LATEST_TYPESCRIPT_VERSION")
# ts_version = LATEST_TYPESCRIPT_VERSION
)
load("@aspect_rules_js//js:repositories.bzl", "rules_js_dependencies")
rules_js_dependencies()
load("@aspect_rules_js//js:toolchains.bzl", "DEFAULT_NODE_VERSION", "rules_js_register_toolchains")
rules_js_register_toolchains(node_version = DEFAULT_NODE_VERSION)
# Register aspect_bazel_lib toolchains;
# If you use npm_translate_lock or npm_import from aspect_rules_js you can omit this block.
load("@aspect_bazel_lib//lib:repositories.bzl", "register_copy_directory_toolchains", "register_copy_to_directory_toolchains")
register_copy_directory_toolchains()
register_copy_to_directory_toolchains()
To use rules_ts with bazel-lib 2.x, you must additionally register the coreutils toolchain.
load("@aspect_bazel_lib//lib:repositories.bzl", "register_coreutils_toolchains")
register_coreutils_toolchains()
What's Changed
- feat: always declare a ts_project _types target to fetch dts files by @jbedard in #715
- refactor: only pass --outDir flag when needed by @alexeagle in #720
- build: upgrade to latest bazel 7.3.2 by @jbedard in #718
- fix: align ts_project(data) runfiles with js_library(data) by @jbedard in #723
- feat: specify tsc outputs in action progress message by @jbedard in #724
- Ensuring package_prefix is correct for external workspaces by @menny in #726
- fix: support setting resolveJsonModule with inline ts_project(tsconfig) by @jbedard in #728
- fix: support --incompatible_disallow_empty_glob by @alexeagle in #731
New Contributors
Full Changelog: v3.2.1...v3.3.0