Releases: bazelbuild/rules_typescript
Hybrid install
Now that rules_nodejs 0.16.8 supports installing Bazel workspaces out of npm packages, rules_typescript uses this mechanism.
BREAKING CHANGES
- We no longer recommend fetching rules_typescript at all. Instead, just include an npm dependency on
@bazel/typescript
and/or@bazel/karma
and call the installer withafter yourload("@npm//:install_bazel_dependencies.bzl", "install_bazel_dependencies") install_bazel_dependencies()
yarn_install
ornpm_install
is done. See the updated README.md. - Karma rules (
ts_web_test
,ts_web_test_suite
) are now loaded from@build_bazel_rules_karma
workspace rather than@build_bazel_rules_typescript
Other updates
- You no longer need to install any Go-related rules. All our Go programs are now distributed as pre-compiled binaries for each of the three major platforms.
- Karma stack traces are cleaned up, see #369
- The
rules_typescript_dependencies
function is deprecated. You can remove usage of it. - New rules
karma_web_test
andkarma_web_test_suite
which allow you to pass akarma.conf.js
. These are needed for testing on Saucelabs. We don't have API docs for these yet, because our doc publishing is affected by refactoring (we expect these will move to rules_nodejs for the next release). See usage inexamples/testing
- Our Go-based
devserver
binary runs on Windows, but we are still making fixes to the rules to work on Windows. - The
tsc_wrapped
binary is getting a special hook to run Angular's newngtsc
compiler - We no longer depend on a fork of the Karma project. Changes needed for
ibazel
were released in Karma 4.0.0 - Performance improvement to our static analyzer, http://tsetse.info
0.22.1
Important Fix for 0.21
Release 0.21 had a major flaw. First, during a refactoring we lost the test coverage for compilation failures. Then, during a refactoring we accidentally dropped the diagnostic gathering, so TypeScript files were not actually type-checked.
This release also fixes a warning about deprecated Buffer constructor
BREAKING CHANGES:
-
rules_typescript_dependencies() will no longer install transitive dependencies of build_bazel_rules_nodejs. User WORKSPACE files will now need to install rules_nodejs transitive deps directly:
load("@build_bazel_rules_nodejs//:package.bzl", "rules_nodejs_dependencies") rules_nodejs_dependencies()
DO NOT USE
This release contained a critical bug: no TypeScript diagnostics were gathered, including type-checking
Features:
- Support
--nolegacy_external_runfiles
bazel flag - Support
rules_webtesting
Firefox karma tests - Disable Chrome sandbox when unavailable
- New attribute on
ts_web_test
http://tsetse.info/api/karma/ts_web_test.html#ts_web_test.runtime_deps
Breaking changes:
If you use the internal API of tsc_wrapped you need to update the CompilerHost constructor calls to account for a removed parameter.
0.20.1
0.20.0
0.19.0
Breaking changes:
- Now requires Bazel 0.17.1 or later, for
@
support in labels - New tsetse check https://github.com/bazelbuild/rules_typescript/blob/master/docs/ban-promise-as-condition.md
- target
@build_bazel_rules_typescript//:karma/karma
is removed, you can use@npm//:@bazel/karma/karma
instead
Fine-grained dependencies
Breaking Changes:
ts_library
and ts_web_test_suite
rules attributes now default to use bazel managed deps downstream and depend on a user installing @bazel/typescript
and @bazel/karma
deps with yarn_install
or npm_install
into an @npm
workspace. See README for more information.