11 Commits

Author SHA1 Message Date
Alan Agius
7865abf667 build: fix api guardian path for windows ()
At the moment, `path.posix.relative` will break paths in windows as it will return something like
```
Error: Source file "../C:/users/alag/_bazel_alag/3tbqurya/execroot/angular/bazel-out/x64_windows-fastbuild/bin/packages/core/core.d.ts" not found
```

PR Close 
2018-11-13 10:50:21 -08:00
Paul Gschwendtner
9ad54d74d2 build: fix ts-api-guardian does not work on windows w/ bazel ()
* Fixes that the `ts-api-guardian` package does not work on Windows with Bazel. This is because `ts-api-guardian` does not resolve the runfiles through theNodeJS `require` function that properly handles runfiles within Bazel.

PR Close 
2018-10-30 13:45:58 -04:00
Paul Gschwendtner
0e1cceed50 build: add option to disable ts-api-guardian default angular tag rules ()
Since the API guardian can be also used by other projects, we should not set up the default Angular project tag rules unless specified explicitly through a given command option (`useAngularTagRules`)

PR Close 
2018-10-30 13:45:58 -04:00
Igor Minar
4f250726aa build: fix the accept binary path in ts-api-guardian error message ()
Fixes 

PR Close 
2018-10-29 12:59:47 -04:00
Pete Bacon Darwin
c5949f85ef build: update ts-api-guardian jsdoc tag requirements ()
Now `@experimental` tags are banned; and `@publicApi`
tags are required on exports.

PR Close 
2018-10-19 14:35:52 -07:00
Pete Bacon Darwin
2ea57cdcc3 build: refactor ts-api-guardian jsdoc tag handling ()
Allow the jsdoc tag processing to be configured by
type (export, member, param) and by action (required,
banned, toCopy).

This is a pre-requisite to moving over to using `@publicApi`
tags rather than `@stable` and `@experimental`.

PR Close 
2018-10-19 14:35:52 -07:00
Alan Agius
aac08e0438 build: pass stripExportPattern as an array of RegExp ()
This is a workaround for https://github.com/bazelbuild/rules_nodejs/issues/317

PR Close 
2018-09-27 12:07:03 -07:00
Pete Bacon Darwin
ac316be79b build: remove unnecessary stability check ()
Previously, it was necessary to attach on of the three "stability"
jsdoc tags (`@stable`, `@deprecated` or `@experimental`) to each
public API export.

To ensure that the public API was correctly tagged, the `ts-api-guardian`
would check that one of these tags appeared on every public export.

Now the doc-gen is able to compute that a code item is stable if
it does not contain the `@experimental` nor `@deprecated` tags.

Therefore there is no need to provide the `@stable` tag any more; and
this tag has now been marked as deprecated - i.e. it should not be used.

The ts-api-guardian has been modified in this commit so that it no longer
warns/fails if the `@stable` is missing.

PR Close 
2018-04-05 10:03:39 -07:00
Alex Eagle
689f351092 build: expose flatModuleOutFile option on ng_module ()
This lets projects like Material change ng_package "bundle index" files to non-conflicting paths

Currently packages like @angular/core ship with the generated metadata
in a path like 'core.js' which overwrites one of the inputs.

Angular material puts the generated file in a path like 'index.js'

Either way these files generated by ng_module rules have the potential
to collide with inputs given by the user, which results in an error.

Instead, give users the freedom to choose a different non-conflicting name.

Also this refactors the ng_package rule, removing the redundant
secondary_entry_points attribute.

Instead, we assume that any ng_module in the deps with a module_name
attribute is a secondary entry point.

PR Close 
2018-03-20 13:28:57 -07:00
Alex Eagle
4f60968704 test(bazel): Build and test ts-api-guardian locally ()
Also use it to test the public API for core and common

Once we have an ng_package for every package, we can remove
the npm dependency on ts-api-guardian and the gulp-based
public api check.

PR Close 
2018-03-02 15:00:00 -08:00
Alex Eagle
25faf808a5 build: copy ts-api-guardian sources ()
This is an exact mirror of 750f651eca

PR Close 
2018-03-02 15:00:00 -08:00