Commit Graph

1721 Commits

Author SHA1 Message Date
Renovate Bot 35a1705595 build: update all non-major dependencies (#43760)
PR Close #43760
2021-10-07 20:56:11 +00:00
Renovate Bot 5b1b2fd2f9 build: update dependency google-closure-compiler to v20211006 (#43754)
PR Close #43754
2021-10-07 20:55:49 +00:00
Joey Perrott e1c2fbd2af release: bump the next branch to v13.1.0-next.0 (#43752)
PR Close #43752
2021-10-06 18:26:29 -07:00
Dylan Hunn 0a0cc67c39 release: cut the v13.0.0-next.14 release (#43751)
PR Close #43751
2021-10-06 16:21:44 -07:00
Dylan Hunn 5d7229e6b6 release: cut the v13.0.0-next.13 release (#43741)
PR Close #43741
2021-10-06 11:50:36 -07:00
Paul Gschwendtner e0a0d05d45 feat(core): update node version support range to support v16 (#43740)
This commit updates the `node` engines range for all Angular
framework packages to:

* No longer support NodeJS v12 `< 12.20`. This is done because APF v13
  uses package export patterns which are only supported as of v12.20.
  https://nodejs.org/api/packages.html#packages_subpath_patterns.

* Allows for the latest v16 NodeJS versions. This matches with the CLI
  which added NodeJS v16 support with https://github.com/angular/angular-cli/pull/21854.

  We already limit this to `>= v16.10.0` in preparation to only
  supporting the LTS minors of Node v16.

BREAKING CHANGE: NodeJS versions older than `v12.20.0` are no longer
supported due to the Angular packages using the NodeJS package exports
feature with subpath patterns.

PR Close #43740
2021-10-06 10:55:44 -07:00
Dylan Hunn 7acf3bece4 release: cut the v13.0.0-next.12 release (#43726)
PR Close #43726
2021-10-05 18:09:34 -07:00
Alan Agius e7b647fc06 refactor(dev-infra): remove dependency on minimist (#43644)
Refactor scripts to use `yargs`. The main motivation for this is to align and use a single parser.

PR Close #43644
2021-10-04 17:31:03 -07:00
Dylan Hunn dd0722fd1f release: cut the v13.0.0-next.11 release (#43707)
PR Close #43707
2021-10-04 17:23:50 -07:00
Renovate Bot 3d4432874c build: update dependency google-closure-compiler to v20210907 (#43398)
PR Close #43398
2021-10-04 16:33:13 -07:00
Joey Perrott 0d43148f58 build: update to the latest version of @angular/dev-infra-private (#43541)
Updates to the latest dev-infra version and updates the config as required.

PR Close #43541
2021-10-04 10:51:01 -07:00
Dylan Hunn c721135e37 release: cut the v13.0.0-next.10 release (#43672)
PR Close #43672
2021-10-01 16:19:49 -04:00
Paul Gschwendtner cebcfbe1d9 refactor: update yargs to new API for ESM compatibility (#43431)
Given that we ship all of compiler-cli and localize in ESM
mode now, we need to use a ESM compatible version of Yargs.
The latest version seems ESM compatible but with some small
API changes. This commit updates Yargs and updates the command
line option code to use the new API.

PR Close #43431
2021-10-01 18:28:45 +00:00
Paul Gschwendtner 8d7f1098d8 refactor: make all imports compatible with ESM/CJS output. (#43431)
As outlined in the previous commit which enabled the `esModuleInterop`
TypeScript compiler option, we need to update all namespace imports
for `typescript` to default imports. This is needed to allow for
TypeScript to be imported at runtime from an ES module.

Similar changes are needed for modules like `semver` where the types incorrectly
suggest named exports that will not exist at runtime when imported from ESM.

This commit refactors all imports to match with the lint rule we have
configured in the previous commit. See the previous commit for more
details on why certain imports have been changed.

A special case are the imports to `@babel/core` and `@babel/types`. For
these a special interop is needed as both default imports, or named
imports break the other module format. e.g default imports would work
well for ESM, but it breaks for CJS. For CJS, the named imports would
only work, but in ESM, only the default export exist. We work around
this for now until the devmode is using ESM as well (which would be
consistent with prodmode and gives us more valuable test results). More
details on the interop can be found in the `babel_core.ts` files (two
interops are needed for both localize/or the compiler-cli).

PR Close #43431
2021-10-01 18:28:45 +00:00
Paul Gschwendtner 090861b020 build: update to latest version Angular CLI supporting ESM package output (#43431)
The CLI has been updated with various changes to support for ESM package
output of the framework. This commit updates to a next version of the
CLI v13 that contains these necessary changes, allowing us to test/validate
our package changes through integration tests or AIO examples.

This update also contains a fix for the adjust enum babel optimization
that broke with the latest rollup version.

PR Close #43431
2021-10-01 18:28:44 +00:00
Paul Gschwendtner ab390e49ac test: update i18n integration test to use Ivy (#43431)
Updates the i18n integration test to use Ivy in order to
work with the new Angular v13 package format.

PR Close #43431
2021-10-01 18:28:44 +00:00
Paul Gschwendtner a47794272b test: update basic integration tests to work with new package output (#43431)
Basic integration tests are those which do not require significant
changes as others. The larger ones will have individual commits.

For v13, the NPM package output will always be using partial compilation
output. This makes the ngcc integration test fail because the actual
Angular framework packages are no longer processable. We fix this, and
keep the ngcc test coverage by relying on the v12.x framework packages
in the integration test.

The terser integration test needs to point to the new Flat ESM module
file location. We now output FESM2020 instead of FESM2015. This also
requires us to use the latest version of terser.

The `side-effects` test currently is not maintained by us and relies
on View Engine build output. In the partial compilation output the
partial declarations are not marked with `@PURE` and are not removed
therefore. We would need to update the side-effect test to use the
linker Babel plugin instead. This is currently out-of-scope though
so we disable the test for now.

PR Close #43431
2021-10-01 18:28:43 +00:00
Paul Gschwendtner 297237f981 test(compiler): use v12 view engine packages for compiler AOT test (#43431)
In preparation for the v13 Angular Package Format, where partial
declarations are emitted only, the AOT compiler test is updated
to rely on package artifacts from v12 instead. This allows us
to switch to the new package format without breaking the tests
which require metadata files to exist in the NPM packages.

PR Close #43431
2021-10-01 18:28:43 +00:00
Paul Gschwendtner f87b7c1e65 build: install @bazel/esbuild used for ESM bundling of tools (#43431)
Installs `@bazel/esbuild` so that we can use it for bundling
of the `@angular/compiler-cli`.

PR Close #43431
2021-10-01 18:28:41 +00:00
Paul Gschwendtner 831ede8bf4 build: update bazel setup to latest dev-infra package and rules_nodejs v4.2.0 (#43431)
Updates the Bazel setup to the latest shared dev-infra package. Also the
rules_nodejs version is updated to v4.2.0. We have landed various
changes that prepare us for the APF v13 implementation. e.g.

* Ability to control the linker mappings for the `ng_package` rule. This
will become important for using a transition that could accidentally
cause linker mappings that would otheriwse conflict.
* Use of latest version of rollup & terser in the Bazel rules the
  dev-infra package exposes. This is necessary for ES2020 support.

PR Close #43431
2021-10-01 18:28:41 +00:00
Renovate Bot d9b76e4b3d build: update all non-major dependencies (#43411)
PR Close #43411
2021-10-01 12:27:25 -04:00
Alex Rickabaugh 9d9d05911d release: cut the v13.0.0-next.9 release (#43656)
PR Close #43656
2021-09-30 13:23:26 -07:00
Kristiyan Kostadinov f055a886f3 build: remove api-extractor workaround (#43563)
In #43281 I had to add a `resolutions`for `typescript` due to the `api-extractor` being locked down to an older version. Now that it has been updated, we don't need the workaround anymore.

PR Close #43563
2021-09-27 10:57:04 -07:00
Renovate Bot 6cac36acaf build: update dependency typescript to v4.4.3 (#43557)
PR Close #43557
2021-09-27 10:47:08 -07:00
Alex Rickabaugh 22eebbafbc release: cut the v13.0.0-next.8 release (#43613)
PR Close #43613
2021-09-27 10:27:54 -07:00
Alan Agius 880f021d96 build: update Angular tooling packages to 13.0.0-next.6 (#43417)
This is a followup on #43343

PR Close #43417
2021-09-24 10:49:39 -07:00
Kristiyan Kostadinov ea61ec2562 feat(core): support TypeScript 4.4 (#43281)
Adds support for TypeScript 4.4. High-level overview of the changes made in this PR:

* Bumps the various packages to `typescript@4.4.2` and `tslib@2.3.0`.
* The `useUnknownInCatchVariables` compiler option has been disabled so that we don't have to cast error objects explicitly everywhere.
* TS now passes in a third argument to the `__spreadArray` call inside child class constructors. I had to update a couple of places in the runtime and ngcc to be able to pick up the calls correctly.
* TS now generates code like `(0, foo)(arg1, arg2)` for imported function calls. I had to update a few of our tests to account for it. See https://github.com/microsoft/TypeScript/pull/44624.
* Our `ngtsc` test setup calls the private `matchFiles` function from TS. I had to update our usage, because a new parameter was added.
* There was one place where we were setting the readonly `hasTrailingComma` property. I updated the usage to pass in the value when constructing the object instead.
* Some browser types were updated which meant that I had to resolve some trivial type errors.
* The downlevel decorators tranform was running into an issue where the Closure synthetic comments were being emitted twice. I've worked around it by recreating the class declaration node instead of cloning it.

PR Close #43281
2021-09-23 14:49:19 -07:00
Jessica Janiuk 49d29e1337 release: cut the v13.0.0-next.7 release (#43539) 2021-09-22 12:09:40 -07:00
Andrew Kushnir 5e9eb7abbd release: cut the v13.0.0-next.6 release (#43464) 2021-09-15 10:37:18 -07:00
Pei Wang 006bf654b9 build: Upgrade tsec to 0.1.9 (#43108)
Upgrade tsec version form 0.1.8 to 0.1.9. The new version has a minor
bug fix.

PR Close #43108
2021-09-13 14:45:57 -07:00
Pei Wang d12d068c37 build: Turn tsec checks into bazel tests. (#43108)
Introduce two new bazel rules: tsec_test and tsec_config, for
describing the tsec checks and the tsconfig file needed for such
checks, respectively. Currently, tsec_test only checks the srcs
of a ts_library or ng_module. It does not check direct or transitive
dependencies. Also, tsconfig files need to be manually maintained
to make sure tsec can read all necessary input (including global
symbols).

PR Close #43108
2021-09-13 14:45:57 -07:00
Pei Wang 509031c734 build: Enable tsec checks for critical packages. (#43108)
tsec is a static analyzer that discovers Trusted Types violations.
Deploy tsec to make sure there will be no TT regression in several
critical packages, including core, platform-browser, platform-server
and their dependencies. Existing violations have been reviewed and
exempted in packages/tsec-exemption.json. Future changes to the
exemption list requires security review.

PR Close #43108
2021-09-13 14:45:57 -07:00
Renovate Bot 75a3c778b1 build: update dependency karma to v6 (#43413)
PR Close #43413
2021-09-10 10:56:47 -07:00
Renovate Bot 4c307ad8d7 build: update dependency source-map-support to v0.5.20 (#43401)
PR Close #43401
2021-09-09 09:20:30 -07:00
Renovate Bot 66f13dade5 build: update all non-major dependencies (#43274)
PR Close #43274
2021-09-09 09:18:43 -07:00
Andrew Scott 93c9932d17 release: cut the v13.0.0-next.5 release (#43394) 2021-09-08 09:45:42 -07:00
Alan Agius 2e11be8c91 build: remove unused @types/node-fetch package (#43345)
This package is no longer needed.

PR Close #43345
2021-09-07 21:24:41 +00:00
Renovate Bot 2be0505334 build: update dependency @types/inquirer to v8 (#43371)
PR Close #43371
2021-09-07 18:44:20 +00:00
Paul Gschwendtner 5472c28fa1 build: check .ng-dev tool configuration in CI (#43322)
Checks the `.ng-dev` tool configuration in CI, compared
to doing it locally when the caretaker intends to perform
a merge and then realizes the config is broken.

PR Close #43322
2021-09-02 21:18:36 +00:00
Paul Gschwendtner 9b2732c0ed build: update bazel setup to latest versions (#43322)
Updates the overall Bazel setup to their latest versions:

* rules_nodejs is updated to stable 4.0.0
* rules_sass is updated to the latest version containing a fix
  for the `@bazel/worker` bug we had a workaround for.
* dev-infra-private is updated to avoid duplicated dependencies.
  We should use a version that also relies on stable rules_nodejs v4.

Note: We are not set on how dependencies for the `bazel/` folder
of the dev-infra package are managed, but we removed `@types/`
packages from the transitive dependencies, so we now need to
manually include `@types/uuid` for building the benchmark driver
utilties. We need to revisit this in the future.

PR Close #43322
2021-09-02 21:18:36 +00:00
Jessica Janiuk 478131c519 release: cut the v13.0.0-next.4 release (#43312) 2021-09-01 14:09:35 -05:00
Alan Agius 05089dffbc build: remove no longer needed dependencies (#43264)
These were used for the dev-infra package which has now been moved into a seperate repo.

PR Close #43264
2021-08-26 10:04:05 -07:00
JoostK 030ff0d7a1 test(ngcc): use @angular npm packages in integration test (#43234)
In anticipation of the removal of the View Engine npm package output,
the integration tests of ngcc are switched to use @angular packages for
from npm. The version 12 packages are guaranteed to always be View
Engine format which makes them suitable to be processed in the ngcc
integration tests.

PR Close #43234
2021-08-26 09:45:43 -07:00
Renovate Bot 298d8a4481 build: update all non-major dependencies (#43263)
PR Close #43263
2021-08-26 09:18:37 -07:00
Alex Rickabaugh 49766d2d0a release: cut the v13.0.0-next.3 release (#43259)
PR Close #43259
2021-08-25 14:51:37 -07:00
Joey Perrott e3b6e26565 release: cut the v13.0.0-next.2 release (#43200) 2021-08-18 14:38:39 -07:00
Renovate Bot d7de6d6725 build: update bazel to v4.0.0-rc.0 (#43138)
PR Close #43138
2021-08-17 20:00:37 -07:00
Joey Perrott 564ad0622a build: uipdate to latest @angular/dev-infra-private-builds (#43179)
Update to the latest @angular/dev-infra as it includes the fix to no longer include
husky installs in the published package.json

PR Close #43179
2021-08-16 13:06:30 -07:00
Renovate Bot d743dd9900 build: update dependency http-server to v13 (#43096)
PR Close #43096
2021-08-16 10:46:03 -07:00
Joey Perrott 81e4257761 build: remove dev-infra directory and migrate to relying on @angular/dev-infra-private-builds (#43061)
Remove the dev-infra directory and complete the migration to using the code generated by the
angular/dev-infra repository.

PR Close #43061
2021-08-16 10:44:27 -07:00