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/typescriptand/or@bazel/karmaand call the installer withafter yourload("@npm//:install_bazel_dependencies.bzl", "install_bazel_dependencies") install_bazel_dependencies()yarn_installornpm_installis done. See the updated README.md. - Karma rules (
ts_web_test,ts_web_test_suite) are now loaded from@build_bazel_rules_karmaworkspace 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_dependenciesfunction is deprecated. You can remove usage of it. - New rules
karma_web_testandkarma_web_test_suitewhich 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
devserverbinary runs on Windows, but we are still making fixes to the rules to work on Windows. - The
tsc_wrappedbinary is getting a special hook to run Angular's newngtsccompiler - We no longer depend on a fork of the Karma project. Changes needed for
ibazelwere 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_runfilesbazel flag - Support
rules_webtestingFirefox karma tests - Disable Chrome sandbox when unavailable
- New attribute on
ts_web_testhttp://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/karmais removed, you can use@npm//:@bazel/karma/karmainstead
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.