43 Commits

Author SHA1 Message Date
Ben Lesh
b2962db4cb test: add additional test for codeGenApi ()
Addresses comments made by @gkalpak in 

PR Close 
2019-04-15 10:51:24 -07:00
Alex Rickabaugh
b0578061ce refactor(ivy): use ɵɵ instead of Δ for now ()
The `Δ` caused issue with other infrastructure, and we are temporarily
changing it to `ɵɵ`.

This commit also patches ts_api_guardian_test and AIO to understand `ɵɵ`.

PR Close 
2019-04-11 16:27:56 -07:00
Ben Lesh
ddadb8e22c refactor(ivy): Update @publicApi to @codeGenApi on ivy instructions ()
- Removes `@publicApi` annotation from ivy instructions
- Adds new `@codeGenApi` annotation to ivy instructions
- Updates ts_api_guardian to support the new annotation properly

PR Close 
2019-04-11 08:19:23 -07:00
Filipe Silva
ef85336719 build: update to TypeScript 3.4 ()
PR Close 
2019-04-10 12:12:16 -07:00
Ben Lesh
1c07061246 refactor: change error message ()
Removes usage of whitelist from error messages, comments and test descriptions in ts_api_guardian

Related to 

PR Close 
2019-04-02 10:29:33 -07:00
Igor Minar
75748d6044 feat: add support for TypeScript 3.3 (and drop older versions) ()
https://blogs.msdn.microsoft.com/typescript/2019/01/31/announcing-typescript-3-3/

BREAKING CHANGE: TypeScript 3.1 and 3.2 are no longer supported.

Please update your TypeScript version to 3.3

PR Close 
2019-03-13 10:38:37 -07:00
Greg Magolan
ea09430039 build: rules_nodejs 0.26.0 & use @npm instead of @ngdeps now that downstream angular build uses angular bundles ()
PR Close 
2019-02-28 12:06:36 -08:00
Wassim Chegham
ce68b4d839 style: enforce buildifier lint on CI ()
PR Close 
2019-02-26 16:57:41 -08:00
Greg Magolan
ebffde7143 build: update to rules_typescript 0.25.1 ()
Updated a spot in the compiler which assumed es5 downlevelling get ready for es2015 devmode in the future.

PR Close 
2019-02-21 07:46:21 -08:00
Igor Minar
17e702bf8b feat: add support for typescript 3.2 ()
https://www.typescriptlang.org/docs/handbook/release-notes/typescript-3-2.html
https://blogs.msdn.microsoft.com/typescript/2018/11/29/announcing-typescript-3-2/

Any application using tsickle for closure compatibility will need to update it's tsickle
dependency to 0.34

PR Close 
2018-12-18 13:20:01 -08:00
Miško Hevery
60e403bf6d build: ts-api-guardian should support interface with value types ()
This fixes an issue where a value would hide the type.

```
export interface Foo {
  someMethod(): void;
}

export const Foo: Function = ...;
```

In the above example the `Foo` constant will hide the `interface Foo` symbol.
This change properly saves the interface in addition to the type.

PR Close 
2018-11-27 13:42:23 -08:00
Paul Gschwendtner
89b8c88389 build: fix source-map warnings for ts-api-guardian ()
* Fixes that running `ts-api-guardian` targets always causes source map warnings to appear.

PR Close 
2018-11-26 09:25:38 -08:00
Alan Agius
6b1780d77e build: avoid writing \r in windows ()
In windows when using readFile `\n` are replaced with `\r\n` which causes issues when comparing golden files

PR Close 
2018-11-13 10:50:21 -08:00
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
8fc4ae51fb build: use bazel version from node modules ()
* No longer depends on a custom CircleCI docker image that comes with Bazel pre-installed. Since Bazel is now available through NPM, we should be able to use the version from `@bazel/bazel` in order to enforce a consistent environment on CI and locally.
* This also reduces the amount of packages that need to be published (ngcontainer is removed)

PR Close 
2018-10-30 16:19:13 -04: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
Greg Magolan
15c2467dbd build: review comments addressed ()
PR Close 
2018-10-19 20:59:29 -07:00
Greg Magolan
631998b2df build: idiomatic install of @angular/bazel npm package () ()
PR Close 
2018-10-19 20:59:29 -07:00
Greg Magolan
1f3331f5e6 build(bazel): use fine-grained npm deps () ()
PR Close 
2018-10-19 20:59:29 -07: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
Alex Eagle
d216a46412 release: ts_api_guardian 0.4.0 ()
PR Close 
2018-10-02 13:46:41 -07:00
Igor Minar
9993c72335 feat: add support for TypeScript 3.1 ()
PR Close 
2018-09-28 09:34:51 -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
Wei Huang
5241ea086d test(bazel): Run Angular test on RBE ()
PR Close 
2018-09-18 13:29:54 -07:00
Alan Agius
21e566d9bc build: use nodejs public api ()
`nodejs_binary` and `nodejs_test` from `@build_bazel_rules_nodejs//:defs.bzl` and `@build_bazel_rules_nodejs//internal/node:node.bzl` are different as the first one uses a macro https://github.com/bazelbuild/rules_nodejs/blob/master/internal/node/node.bzl#L229 to wrap the `nodejs_binary` and `nodejs_test` as an `.exe` for Windows.

PR Close 
2018-09-17 12:52:39 -07:00
Alan Agius
2a21ca09d2 feat(bazel): add additional parameters to ts_api_guardian_test def ()
Added `strip_export_pattern` and `allow_module_identifiers` so that these can be passed from downstream

PR Close 
2018-09-07 14:24:31 -07:00
Alan Agius
ddc13352e9 fix(bazel): specify the package and lock files using the workspace ()
PR Close 
2018-09-07 14:24:31 -07:00
Alan Agius
5653fada32 feat: add TypeScript 3 support ()
PR Close 
2018-08-27 21:07:53 -04:00
Greg Magolan
9605456b66 build: refactor ambient node & jasmine types so they are only included where needed ()
PR Close 
2018-08-16 13:46:43 -07:00
Alex Eagle
a3f1e2cb42 style: format .bzl files with buildifier ()
PR Close 
2018-08-08 13:12:07 -07:00
Paul Gschwendtner
fa70a2a650 build(bazel): entry point file couldn't be resolved [ts-api-guardian] ()
* When using `ts-api-guardian` on Windows, the input file can't be found due to wrong normalized path delimiters.

PR Close 
2018-08-01 13:29:27 -07:00
Greg Magolan
5254d3447d build(bazel): update to rules_nodejs 0.11.2 and latest rules_typescript ()
PR Close 
2018-07-31 11:41:50 -07:00
Greg Magolan
1e74ea9e60 build(bazel): update to rule_nodejs 0.10.0 ()
PR Close 
2018-07-06 10:17:36 -07:00
Alex Eagle
c2b5ebfa24 build: update buildifier to latest ()
this matches the version in ngcontainer:0.3.1

PR Close 
2018-06-12 11:42:35 -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
34981063ec build: ts-api-guardian reuses root node_modules ()
This avoids the need to run bazel run :install instead of yarn install.
We merge the devDependencies of ts-api-guardian into the root package.json file.

PR Close 
2018-03-22 19:23:33 -04: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
Alan
e8326e600d fix: overloading a function doesn't generate all of the signatures ()
PR Close 
2018-03-09 13:07:36 -08: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