parent
b04c3cce09
commit
47f233a4a7
|
@ -47,10 +47,10 @@ Our peer dependencies (such as TypeScript, Zone.js, or RxJS) are not considered
|
||||||
<a name="golden-files"></a>
|
<a name="golden-files"></a>
|
||||||
|
|
||||||
## Golden files
|
## Golden files
|
||||||
|
Angular tracks the status of the public API in *golden files*. These files are stored in [tools/public_api_guard/](../tools/public_api_guard) and are maintained with a tool called [TS API Guardian](https://www.npmjs.com/package/ts-api-guardian).
|
||||||
Angular tracks the status of the public API in a *golden file*, maintained with a tool called the *public API guard*. If you modify any part of a public API in one of the supported public packages, the PR can fail a Circle CI test with failures in `testlogs/tools/public_api_guard`, and an error message that instructs you to accept the golden file.
|
If you modify any part of a public API in one of the supported public packages, you must update the golden files that track the public API surface.
|
||||||
|
If the golden files are not updated correctly, our test suite will detect the problem and the PR will fail to pass the tests.
|
||||||
The public API guard provides a Bazel target that updates the current status of a given package. If you add to or modify the public API in any way, you must use [yarn](https://yarnpkg.com/) to execute the Bazel target in your terminal shell of choice (a recent version of `bash` is recommended).
|
In such cases, a test error message will provide instructions for a command that updates the golden files.
|
||||||
|
|
||||||
```shell
|
```shell
|
||||||
yarn bazel run //tools/public_api_guard:<modified_package>_api.accept
|
yarn bazel run //tools/public_api_guard:<modified_package>_api.accept
|
||||||
|
|
Loading…
Reference in New Issue