1127 Commits

Author SHA1 Message Date
Alan Agius
8f9a0d70cd feat(@angular-devkit/build-angular): support standalone apps route discovery during prerendering
This fixes an issue were routes could not be discovered automatically in a standalone application.

This is a total overhaul of the route extraction process as instead of using `guess-parser` NPM package, we now use the Angular Router. This enables a number of exciting possibilities for the future which were not possible before.

# How it works?
The application is bootstrapped and through DI injection we get the injector and router config instance and recursively build the routes tree.
2023-09-18 22:26:06 +02:00
Alan Agius
5a204b81c7 refactor(@angular-devkit/build-angular): accept boolean and string in ssr option
This is to align with the `serviceWorker` option.
2023-09-15 22:12:34 +02:00
Alan Agius
3f8aa9d8c7 feat(@schematics/angular): update ng new to use the esbuild application builder based builder
This commit updates the `ng generate application` to use the esbuild `application` builder. This also updates the schematics to support both `browser` and `application` builders.

BREAKING CHANGE: `rootModuleClassName`, `rootModuleFileName` and `main` options have been removed from the public `pwa` and `app-shell` schematics.
2023-09-13 17:40:50 +02:00
Nikolay Vitkov
6eee74c8f5 docs(@angular/cli): Add Puppeteer schematics to e2e command 2023-09-11 09:13:04 +02:00
HamdaanAliQuatil
05b9ce5099 docs: update @angular/pwa readme 2023-09-11 09:12:49 +02:00
Charles Lyding
0811f641b3 build: update package output to use ES2022
The JavaScript generated for the published packages is now using ES2022.
This removes additional downleveling of code that was previously necessary
to use newer features.
The minimum Node.js version of 18.13 provides support for the needed features.
While this change does require a patch to `@bazel/concatjs` to allow the target
to be set to `ES2022`, this patch is now already required by the migration of
the universal repository into the CLI repository.
2023-09-08 10:19:37 -07:00
Doug Parker
cb66c3d445 build: add repository field to @angular/ssr package
This is necessary for Wombat publishing. Normally most packages have this generated at build time through `pkg_npm`, however we need to use `ng_package` in this case which does not do this by default.
2023-09-06 14:01:08 -07:00
Angular Robot
1cdbf5db4f build: update all non-major dependencies 2023-09-06 09:05:33 -07:00
Alan Agius
99e153ada7 docs(@angular/cli): update outdated statement about CLI accepting camelCase
The Angular CLI does not accept camelCase args.
2023-09-05 10:02:36 -07:00
Alan Agius
17ffedc3ec refactor(@angular/cli): remove legacy NPM compatibility check
This check should no longer be needed as on supported versions of Node.js NPM 7.5 is no longer installed by default.
2023-09-01 15:17:52 +02:00
Angular Robot
04f61aa7ef build: update all non-major dependencies 2023-08-31 09:04:29 +02:00
Alan Agius
2702419364 build: update peer Angular peer deps
This is needed to satisfy the pre-release checks.
2023-08-30 18:28:18 +02:00
Alan Agius
f917b67e75 refactor: remove polynomial regular expression
This change updates the critical css processor to remove the need for a Polynomial regular expression.

Addresses: https://github.com/angular/angular-cli/security/code-scanning/51
Closes #25742
2023-08-30 17:02:10 +02:00
Alan Agius
c30e3692b3 refactor(@angular/ssr): remove express engine
This removes the util function for express, instead the "CommonEngine" is called directly infuture before this package is final we might rename the "CommonEngine" to something else.
2023-08-30 09:53:57 +02:00
Charles Lyding
a00b21afdf build: use bazel ts_library rule to build @angular/ssr
The `@angular/ssr` package does not require the Angular compiler and can instead use the
`ts_library` to compile the TypeScript code.  The `@angular/bazel` package has also been
update and a more limited patch is now used due to only needing the `ng_package` rule.
The continued use of the `ng_package` rule maintains the existing output structure for the
`@angular/ssr` package.
2023-08-30 09:08:18 +02:00
Angular Robot
d8d815bd36 build: update dependency npm-pick-manifest to v9 2023-08-29 06:44:58 -07:00
Angular Robot
4785dd7d3c build: update dependency pacote to v17 2023-08-29 05:11:44 -07:00
Angular Robot
fd5591d527 build: update dependency npm-package-arg to v11 2023-08-29 05:11:22 -07:00
Alan Agius
297cdab413 build: update Angular version to v17 prerelease
Update package peer deps to version 17
2023-08-29 03:53:23 -07:00
Angular Robot
8330914e50 build: update dependency critters to v0.0.20 [security] 2023-08-29 00:39:05 -07:00
Alan Agius
3fe432c71b refactor: update code to integrate universal repo
This commit updates the moved universal code into the cli pipeline
2023-08-22 20:44:53 +00:00
Alan Agius
8fe8cdf05a refactor: move universal code into CLI repo
Merge remote-tracking branch 'universal/move-to-cli' into universal-merge
2023-08-16 11:34:47 +00:00
Alan Agius
e6ce7f8414 refactor: prepare code for CLI move 2023-08-16 09:55:58 +00:00
Angular Robot
2f77234725 build: update dependency pacote to v16 2023-08-14 10:58:17 +02:00
Charles Lyding
5bf7022c47 fix(@angular-devkit/build-angular): remove support for Node.js v16
BREAKING CHANGE: Node.js v16 support has been removed

Node.js v16 is planned to be End-of-Life on 2023-09-11. Angular will stop supporting Node.js v16 in Angular v17.
For Node.js release schedule details, please see: https://github.com/nodejs/release#release-schedule
2023-08-14 10:57:54 +02:00
Alan Agius
89e644b245 build: update all non-major dependencies
(cherry picked from commit 90f0b818a459ec288342364d364b3d24694b639f)
2023-08-10 11:06:45 -07:00
aanchal
9506d4bafa docs: fix typos 2023-08-03 14:13:50 -04:00
Angular Robot
6c5c71103f build: update all non-major dependencies 2023-08-03 12:36:35 -04:00
Alan Agius
d0f005913f fix(@angular/cli): add zone.js to ng version output
This commit add `zone.js` to the `ng version` command output.
2023-07-12 10:06:48 -04:00
Alan Agius
ba7686283b build: update all non-major dependencies 2023-07-10 09:54:57 -04:00
Doug Parker
da3c1c32ae fix(@angular/cli): throw an error when executed in a google3-context
There is a separate, internal version of the Angular CLI which should be used instead. Running this version can lead to unintuitive and unexpected behavior. This commit intentionally does not include an opt-out because there is no supported use case for running the external CLI inside google3. If someone is broken by this and presents a compelling use case, we can reconsider and add an opt-out for this check.
2023-07-07 11:15:30 -07:00
Alan Agius
08ff43b887 build: update Angular peer dependencies to ^16.0.0 || ^16.2.0-next.0
This is needed to cut the `next` prerelease.
2023-06-28 15:25:43 +02:00
Angular Robot
fdd1958941 build: update all non-major dependencies 2023-06-27 07:00:12 +02:00
Alan Agius
c05c83be7c feat(@angular-devkit/build-angular): add initial application builder implementation
This commits add the initial application builder schema and build configuration and refactors several files.
2023-06-23 15:36:06 -04:00
Angular Robot
4d87b7d1f7 build: update dependency semver to v7.5.2 [security] 2023-06-23 15:35:03 -04:00
aanchal
eaffdc0ff7 docs: remove duplicate words 2023-06-14 11:22:54 +02:00
Doug Parker
d4a2849010 build: bump versions for minor release 2023-06-13 09:22:39 -07:00
alkavats1
76a12277f7 refactor: removed unused import statements 2023-06-09 13:39:32 +02:00
Charles Lyding
11e0a51b17 build: minor cleanup of bazel build rules
BUILD files for each package have had outdated glob excludes removed.
Additionally, some src args have been reduced to a single file where possible.
The root bazel ignore file has also been expanded to include all node module
directories in each package. The ignore file does not appear to currently support
globs so each path has been individually specified.
2023-05-22 09:36:44 -04:00
Alan Agius
b628cff77b build: update all non-major dependencies
(cherry picked from commit 1afbec1e36708737b6ae75277e0649d0e334d1b2)
2023-05-19 17:14:01 +02:00
Angular Robot
cbadb8080f build: update all non-major dependencies 2023-05-17 12:06:49 +00:00
Angular Robot
419cc8282e build: update all non-major dependencies 2023-05-12 15:56:22 -04:00
Alan Agius
22c1cb66c5 fix(@angular-devkit/schematics): do not generate an UpdateBuffer for created and overridden files
`UpdateBuffer` only supports UTF-8 encoded files, which causes schematics to emit corrupted binary like files such as images.

This commit also introduce an errors when the `UpdateRecorder` is used for non UTF-8 files.

Closes #25174
2023-05-10 11:20:29 +00:00
Alan Agius
7dc0049be9 fix(@angular/pwa): compress PWA icons
This commit reduces the size the generated PWA icons.
2023-05-09 15:53:06 +00:00
Doug Parker
d160856958 refactor: widen peer dependencies to ^16.0.0 || ^16.1.0-next.0 2023-05-03 19:38:47 +00:00
Angular Robot
17112a38a0 build: update all non-major dependencies 2023-04-28 07:33:11 +00:00
Doug Parker
7fe6570c27 refactor: add experimental jest builder
For now this just runs ESBuild-er to build test code, Jest is not actually invoked yet.

This uses `glob` to find test files matching the given pattern. I went out of my way to limit `glob` functionality as much as possible in case we change the implementation later.
2023-04-26 22:41:47 +00:00
Alan Agius
4b9405cce3 docs: improve wording in doc command version description 2023-04-26 18:36:15 +00:00
Angular Robot
7a7ad7fe85 build: update all non-major dependencies 2023-04-25 15:18:20 +00:00
Alan Agius
c0a0f727f8 fix(@angular/cli): process keeps running when analytics are enabled
In newer Node.js versions ng commands do not terminate properly when analytics are enabled.

This is because the request is never closed unless a `data` event listener is attached.

Closes #25034 and closes #25008
2023-04-18 20:22:20 +00:00