395 Commits

Author SHA1 Message Date
Jason Bedard
4de9045de8 test: unit test multiple node versions in separate jobs 2022-09-14 10:43:17 -07:00
Charles Lyding
b2add316e7 build: remove unneeded BUILD file licenses rule comments 2022-09-13 10:33:49 -07:00
Charles Lyding
f33fb34ae1 build: adjust BUILD file external comment markers
Improvements to the syncing process allow for reduced usage of the comment markers.
2022-09-01 06:24:31 -04:00
Charles Lyding
e402c2358c build: adjust BUILD file external comment markers
Improvements to the syncing process allow for reduced usage of the comment markers.
2022-08-31 08:37:19 -04:00
Angular Robot
56b3299f12 build: update all non-major dependencies 2022-08-30 08:54:10 -04:00
Jason Bedard
1cc2d655e5 build: allow no-remote-exec targets to be cached on CI 2022-08-29 08:16:30 -04:00
Kristiyan Kostadinov
48dec89e91 build: update to TypeScript 4.8 RC
Updates to the TypeScript 4.8 RC and adds some code to account for a breaking change where the decorators and modifiers of an AST node have been combined into a single array.
2022-08-22 15:28:47 -06:00
Alan Agius
4368c85983 refactor: remove unused local variables 2022-08-12 08:19:26 -04:00
Charles Lyding
ddf1257d14 refactor(@angular-devkit/core): remove deprecated rxjs empty function usage
The RxJS `empty` function is deprecated and will be removed in future versions.
The `EMPTY` constant is the recommended replacement.
2022-08-11 13:00:48 -04:00
AgentEnder
db17eac251 fix(@angular-devkit/core): update workspace extension warning to use correct phrasing 2022-08-11 11:56:12 -04:00
Jason Bedard
db5c1fc13c test: run tests on multiple node versions 2022-08-03 10:33:46 -07:00
Charles Lyding
fa0404daf4 refactor(@angular-devkit/core): add allowed extensions options to JSON workspace reader
Adjust the internal `readJsonWorkspace` to allow for future generalization
of the allowed unprefixed extension fields for the workspace and project objects.
Custom fields that start with a one to three lowercase letter prefix are still
allowed in both locations.
2022-07-28 09:46:29 +02:00
Paul Gschwendtner
087ab46ca9 build: update dev-infra packages and account for build-tooling split from ng-dev
The dev-infra build tooling is now decoupled from `ng-dev`. This will
make it easier to update `ng-dev` without necessarily needing to upgrade
the whole build system, Bazel etc. This is useful when e.g. new release
tool features have been added and should also be ported to active LTS
branches.
2022-07-27 12:35:15 +02:00
Alan Agius
e63375ea39 fix(@angular-devkit/core): classify string util should concat string without using a .
`.` is not a valid character in ES6 class names.

Prior to this change `foo.module` before used to be incorrectly classified to `Foo.Module` instead of `FooModule`.

Closes #13824
2022-07-21 19:18:48 -04:00
Angular Robot
0a990c525a build: update all non-major dependencies 2022-07-14 15:21:03 -07:00
Katerina Skroumpelou
9defbdf534 fix(@angular-devkit/core): log name of invalid extension too 2022-07-14 15:15:29 -07:00
Fortunato Ventre
3ec69320f0 fix(@angular-devkit/core): add i18n as valid project extension
When parsing the angular.json file, the 'i18n' key used to configure localization in a localized project should be treated as a special project extension key.

This fixes the warning "Project extension with invalid name found." printed when starting/building the project.
2022-07-14 15:15:07 -07:00
Alan Agius
624e0b0ec6 fix(@angular-devkit/core): provide actionable warning when a workspace project has missing root property
The `root` property is required in a workspace project. Now we issue an actionable warning message when this is missing.

Note: this will become an error in the next major version.

Closes: #21310
2022-07-08 15:57:51 +02:00
renovate[bot]
04160c58ce build: update all non-major dependencies 2022-06-27 08:15:08 -04:00
Alan Agius
1af3f71aa2 fix(@angular-devkit/core): workspace writer skip creating empty projects property
Before
```json
{
  "$schema": "./node_modules/@angular/cli/lib/config/schema.json",
  "version": 1,
  "projects": {},
  "cli": {
    "analytics": false,
    "warnings": {
      "versionMismatch": false
    }
  }
}
````

After
```json
{
  "$schema": "./node_modules/@angular/cli/lib/config/schema.json",
  "version": 1,
  "cli": {
    "analytics": false,
    "warnings": {
      "versionMismatch": false
    }
  }
}
```
2022-06-22 10:37:25 -07:00
Charles Lyding
1e21440c10 build: mark external only bazel rules 2022-06-17 16:25:41 +02:00
Charles Lyding
e81a6f1c46 test(@angular-devkit/core): update several tests to use async expectations
Using Jasmine's `expectAsync` allows for reduced test code when testing that
a function returning a promise rejects with a specific error.
2022-06-14 11:28:21 +02:00
Charles Lyding
2edb2a0508 refactor(@angular-devkit/core): assert catch clause variable type before usage
Prepares the `@angular-devkit/core` package for the eventual change of enabling the
TypeScript `useUnknownInCatchVariables` option. This option provides additional
code safety by ensuring that the catch clause variable is the proper type before
attempting to access its properties. Similar changes will be needed in the other
packages in the repository prior to enabling `useUnknownInCatchVariables`.
2022-06-14 11:28:21 +02:00
Kristiyan Kostadinov
0301cf6c10 build: prepare TypeScript 4.7
Expands the version range to allow TypeScript 4.7 and makes the necessary code changes in order to support it.
2022-05-06 15:51:02 -07:00
Charles Lyding
13fce451d8 refactor(@angular-devkit/core): delete deepCopy temporary symbol property after use
The `deepCopy` utility function previously set its internal tracking symbol property to `undefined` after completion.
However, this still caused the property to exist with a value of `undefined`. Jasmine 4.1 now checks for symbols with
its `toEqual` expectation which resulted in failing tests. The internal tracking symbol property is now removed instead
via `delete`.
2022-05-04 10:13:18 -07:00
Alan Agius
f74a79f7c8 refactor(@angular-devkit/core): remove no longer needed fast-json-stable-stringify dependency
This dependency is no longer needed.
2022-04-14 17:13:52 +02:00
Alan Agius
c0eb926121 refactor(@angular-devkit/core): remove custom json parser
With this change we replace the workspace reader and write to use `jsonc-parser` instead of our custom build JSON parser
2022-04-14 17:13:52 +02:00
Alan Agius
108a0b6acd refactor(@angular-devkit/core): remove fast-json-stable-stringify usage in memoize helper
This is not needed as inputs are typed checked to be `JsonValue`. With this change we get a step closer to remove `fast-json-stable-stringify` dependency.
2022-04-13 12:08:07 -07:00
Alan Agius
a66cfd0c6d refactor(@angular-devkit/core): replace fast-json-stable-stringify import to es6 2022-04-08 09:37:22 -07:00
Alan Agius
67144b9e54 refactor(@angular-devkit/core): remove deprecated parseJson and ParseJsonOptions APIs
BREAKING CHANGE:

`parseJson` and `ParseJsonOptions` APIs have been removed in favor of 3rd party JSON parsers such as `jsonc-parser`.
2022-04-05 11:19:19 -04:00
Alan Agius
c5b3e92991 refactor(@angular-devkit/core): deprecate unused exception classes
With this change we deprecate exception classes that are not used in the CLI repo.

DEPRECATED:

- `ContentHasMutatedException`, `InvalidUpdateRecordException`, `UnimplementedException` and `MergeConflictException` symbol from `@angular-devkit/core` have been deprecated in favor of the  symbol from `@angular-devkit/schematics`.
- `UnsupportedPlatformException` - A custom error exception should be created instead.
2022-03-30 17:17:04 +02:00
Alan Agius
4b4cecf88f test: update tests to work with Jasmine version 4
These changes include fixes to tests, timeout and stop of architect to make tests work with Jasmine 4.

One noticeable change that when we didn't stop architect through `run.stop()` this causes Bazel to timeout now.

Example
```
-- Test timed out at 2022-03-24 12:07:07 UTC --
/private/var/tmp/_bazel_alanagius/5168427e57f204ca069c602aa7ed1931/sandbox/darwin-sandbox/398/execroot/angular_cli/bazel-out/darwin-fastbuild/bin/packages/angular_devkit/build_angular/build_angular_browser_test.sh.runfiles/angular_cli/packages/angular_devkit/build_angular/build_angular_browser_test.sh: line 424: 41835 Terminated: 15          "${node}" ${LAUNCHER_NODE_OPTIONS[@]+"${LAUNCHER_NODE_OPTIONS[@]}"} ${USER_NODE_OPTIONS[@]+"${USER_NODE_OPTIONS[@]}"} "${MAIN}" ${ARGS[@]+"${ARGS[@]}"} 0<&0
```
2022-03-24 14:41:26 +01:00
Alan Agius
455aeea12d fix(@angular-devkit/core): add Angular CLI major version as analytics dimension
With this change we replace the custom dimension 8 `AOT Enabled`, with `Angular CLI Major Version`. The motivation behind replacing this dimension is that the there is already an `aot` dimension with id 13 which serves for the same purpose.

More information to why we need a new dimension for the Angular CLI major version can be found #22130

Closes #22130
2022-03-24 08:53:10 +01:00
Renovate Bot
c315b47068 build: update all non-major dependencies 2022-03-23 12:59:21 -07:00
Tobias Speicher
137651645c refactor: replace deprecated String.prototype.substr()
.substr() is deprecated so we replace it with .slice() which works similarily but isn't deprecated

Signed-off-by: Tobias Speicher <rootcommander@gmail.com>
2022-03-21 12:27:52 -07:00
Alan Agius
4ebfe03415 feat(@angular/cli): drop support for Node.js 12
Node.js v12 will become EOL on 2022-04-30. As a result, Angular CLI v14 will no longer support Node.js v12.

BREAKING CHANGE:

Support for Node.js v12 has been removed as it will become EOL on 2022-04-30. Please use Node.js v14.15 or later.
2022-03-04 22:38:45 +01:00
Renovate Bot
a3c0aa9f86 build: update all non-major dependencies 2022-03-03 18:53:49 +01:00
Daniele Maltese
b20f34ec17 docs(@angular-devkit/core): typo in string.ts doc
Typo in underscore function code documentation.
2022-02-24 11:15:33 -08:00
Charles Lyding
51e1521359 build: remove unused development dependency seedrandom
The `seedrandom` dependency is not currently used within the package or project.
As a result, it has been removed to prevent unneeded packages from being installed during development.
2022-02-16 17:19:51 +01:00
Renovate Bot
f8c3ad8d41 build: update all non-major dependencies 2022-02-07 10:55:10 +00:00
Alan Agius
bf733d6758 fix(@angular-devkit/core): correctly resolve schema references defaults
Closes #22600
2022-02-02 11:48:32 -08:00
Alan Agius
a0c02af7e3 refactor(@angular-devkit/core): remove deprecated fs, object and array APIs
BREAKING CHANGE:

The below APIs have been removed without replacement. Users should leverage other Node.js or other APIs.
- `fs` namespace
- `clean`
- `mapObject`
2022-01-31 11:35:18 -08:00
Renovate Bot
79a474de68 build: update all non-major dependencies 2022-01-19 07:21:10 +01:00
Derek Cormier
c2737dd51a build: use placeholder version for stamping 2022-01-12 10:02:23 -08:00
Derek Cormier
4b5c52b0d8 build: perform package.json substitutions in bazel build 2022-01-10 10:25:49 -08:00
Doug Parker
f9187bcc9b refactor(@angular-devkit/core): update missing workspace file error to explicitly call out angular.json
Internally, we've gotten a lot of bugs of users running the CLI in the wrong directory and not understanding this error. Hopefully calling this out more explicitly will key users to double-check their working directory before filing a bug.
2021-12-11 09:20:16 +01:00
Derek Cormier
31801c1a1a build: reproduce original package structure using bazel 2021-12-10 11:06:41 +01:00
Renovate Bot
3925768e7e build: update all non-major dependencies 2021-11-22 08:55:46 +01:00
Renovate Bot
22f8e8a83a build: update all non-major dependencies 2021-11-17 09:32:28 +00:00
Renovate Bot
f049feeace build: update all non-major dependencies 2021-11-09 13:04:00 -05:00