11 Commits

Author SHA1 Message Date
Alex Eagle
d32939d51a build: restrict visibility of npm_package targets ()
dependencies on these cause very long rebuilds which have to re-package angular.
Such tests belong in the integration/ folder

PR Close 
2018-12-14 10:20:40 -08:00
Igor Minar
4237c34c78 test(ivy): mark failing test targets with fixme-ivy-jit and fixme-ivy-local tags ()
We are close enough to blacklist a few test targets, rather than whitelist targets to run...

Because bazel rules can be composed of other rules that don't inherit tags automatically,
I had to explicitly mark all of our ts_library and ng_module targes with "ivy-local" and
"ivy-jit" tags so that we can create a query that excludes all fixme- tagged targets even
if those targets are composed of other targets that don't inherit this tag.

This is the updated overview of ivy related bazel tags:

- ivy-only: target that builds or runs only under ivy
- fixme-ivy-jit: target that doesn't yet build or run under ivy with --compile=jit
- fixme-ivy-local: target that doesn't yet build or run under ivy with --compile=local
- no-ivy-jit: target that is not intended to build or run under ivy with --compile=jit
- no-ivy-local: target that is not intended to build or run under ivy with --compile=local

PR Close 
2018-10-23 08:57:42 -07:00
Alex Rickabaugh
02b5087685 build(ivy): enable ngtsc AOT builds for a few packages ()
Turn on AOT builds using ngtsc for:

* animations
* common
* compiler
* compiler-cli
* forms
* platform-browser

PR Close 
2018-07-12 16:36:35 -04:00
Alex Rickabaugh
7983f0a69b ci(ivy): configure CI environments for Ivy JIT and AOT ()
Two new CircleCI environments are created: test_ivy_jit and test_ivy_aot.
Both run a subset of the tests that have been marked with Bazel tags as
being appropriate for that environment.

Once all the tests pass, builds are published to the *-builds repo both
for the legacy View Engine compiled code as well as for ivy-jit and ivy-aot.

PR Close 
2018-06-08 13:34:27 -07:00
Alex Eagle
15278784fc release(bazel): change publish-next script to publish bazel artifacts ()
PR Close 
2018-03-30 14:03:05 -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
88b3198c80 feat(bazel): change ng_package rule to APF v6 ()
Angular Package Format v6 stops bundling files in the esm5 and esm2015
directories, now that Webpack 4 can tree-shake per-file.

Adds some missing files like package.json to make packages closer to
what we publish today.

Refactor ng_package to be a type of npm_package and re-use the packaging
action from that rule.

PR Close 
2018-03-15 11:38:31 -07:00
Alex Eagle
1e6cc42a01 test: migrate remaining public-api tests to Bazel ()
We now create npm packages to cover all the public api assertions in tools/public_api_guard.
We no longer depend on ts-api-guardian from npm - it is now stale since the repository was archived.
There is no longer a gulp task to enforce or accept the public API, this is in CircleCI as part of running all bazel test targets.

PR Close 
2018-03-09 09:11:40 -08:00
Alex Eagle
a069e08354 refactor(bazel): convert most ts_library to ng_module ()
This is necessary so we can produce ng metadata for our packages that are published as libraries

PR Close 
2018-02-15 14:08:53 -08:00
Alex Eagle
c4f02e21dd build: move repeated tsconfig attributes to a macro ()
This helps ensure we use the same tsconfig.json file for all compilations.
Next steps are to make it the same tsconfig.json file used by the editor

PR Close 
2018-01-10 12:30:19 -08:00
Alex Eagle
ef534c0cc1 build: upgrade bazel rules to latest ()
Add enough BUILD files to make it possible to
`bazel build packages/core/test`

Also re-format BUILD.bazel files with Buildifier.
Add a CI lint check that they stay formatted.

PR Close 
2017-12-07 11:27:50 -08:00