d7f7826363
With this change downstream users will no longer need to build ts-api-guardian from source as now the bazel rule is available in the npm package. This can be used by installing ts-api-guardian as a devDependency and changing the load syntax from: ``` load("@angular//tools/ts-api-guardian:index.bzl", "ts_api_guardian_test") ``` to: ``` load("@npm_ts_api_guardian//:index.bzl", "ts_api_guardian_test") ``` **Note**: downstream users should also clean their `WORKSPACE` and remove the dependencies of angular workspace. PR Close #29977 |
||
---|---|---|
.. | ||
bin | ||
lib | ||
test | ||
BUILD.bazel | ||
README.md | ||
index.bzl | ||
package.json |
README.md
Typescript API Guardian
Keeps track of public API surface of a typescript library.
Examples:
# Generate one declaration file
ts-api-guardian --out api_guard.d.ts index.d.ts
# Generate multiple declaration files
# (output location like typescript)
ts-api-guardian --outDir api_guard [--rootDir .] core/index.d.ts core/testing.d.ts
# Print usage
ts-api-guardian --help
# Check against one declaration file
ts-api-guardian --verify api_guard.d.ts index.d.ts
# Check against multiple declaration files
ts-api-guardian --verifyDir api_guard [--rootDir .] core/index.d.ts core/testing.d.ts
For developers
Build and test this library:
$ yarn bazel run //:install
$ yarn bazel test //tools/ts-api-guardian:all
Publish to NPM:
$ npm whoami # should be logged in as angular
$ grep version tools/ts-api-guardian/package.json # advance as needed
$ yarn bazel run //tools/ts-api-guardian:ts-api-guardian.publish