48 Commits

Author SHA1 Message Date
Alan Agius
e96fbd3c8a refactor(@angular-devkit/build-angular): change errors and warnings messages
Sometimes the WARNING IN/ERROR IN can lead of ambiguous messages

 - Use `Warning` instead of `WARNING IN`
-  Use `Error` instead of `Error In`
2020-09-30 16:17:05 +02:00
Alan Agius
88c3acb945 fix(@angular/cli): favor dirname when resolving @schematics/angular
This ensures that the correct build-in version of `@schematics/angular` is resolved.

Closes #18840
2020-09-24 00:05:58 +03:00
Alan Agius
64cc005f0b refactor: change UPDATE action color to cyan 2020-09-14 16:36:30 -04:00
Alan Agius
951d99e979 feat(@angular/cli): show warning when using deprecated options
With this change we show a warning when a deprecated option is also defined in the workspace configuration file (angular.json).

Closes: #14966
2020-08-17 18:18:24 +02:00
Alan Agius
c824bbb4f7 refactor(@angular/cli): update CLI package to be strict compliant 2020-08-12 19:29:13 +01:00
Alan Agius
05588fcee1 refactor: clean up unused code and imports 2020-07-24 08:01:52 +02:00
Alan Agius
5bb853f1d5 build: update @types/inquirer to 7.3.0 2020-07-23 23:30:22 +02:00
Charles Lyding
f4127b5b43 fix(@angular/cli): fully use add command registry option when installing packages
Fixes: #16766
2020-02-10 16:02:05 -08:00
Charles Lyding
7cce3f0811 fix(@angular/cli): ensure built-in Angular schematics package can be found
The `@angular/cli` package contains a built-in version of the `@schematics/angular` package.  The module resolution paths for the schematics workflow should not assume package hoisting behavior when resolving.  This change corrects that oversight.
2020-01-22 09:00:04 -08:00
Alan Agius
23589ed00e fix(@angular/cli): inform user and error if schematics package is in unreachable location (#16466)
This is a workaround for the schematics runtime to support the requirement of packages containing migrations (or other schematics) to not have a direct/runtime dependency on the schematics package.

Closes: #16392
2020-01-02 11:27:04 -08:00
Alan Agius
35ca3901ac refactor: strip leading slash to prevent confusion 2019-12-02 10:10:34 -08:00
Charles Lyding
5df776780d fix(@angular-devkit/schematics): use NodeWorkflow root to resolve collections 2019-10-28 17:48:08 -07:00
Keen Yee Liau
7e1e8adf7a feat(@angular/cli): allow subclass to override default collection name
This PR provides a way for subclass that extends `SchematicCommand` to
provide a different default collection name.
This is needed in g3 where the collection name is different from
external.
2019-10-03 14:42:20 -07:00
Alan Agius
26dd51221a style: collapse if statements (#15449) 2019-08-27 10:25:14 -07:00
Charles Lyding
b630317b4b refactor(@angular/cli): convert workspace access to async
This is in preparation for conversion from the experimental workspace API to the stable workspace API.
2019-08-16 09:32:04 -07:00
Minko Gechev
d274add7b4
fix(@angular/cli): use correct schematic defaults considering workspace (#15041)
Fix #14986

This PR includes some refactoring to simplify the interaction
of the `NodeWorkflow` and the `BaseWorkflow` with the registry.

We were registering redundant `addPostTransform`s. Some of them in
the constructor of the `BaseWorkflow`, which did not allow us to
intercept `addUndefinedDefaults`.

Additionally, we were setting the `validateOptionsWithSchema` transform
multiple times unnecessarily.

An issue left to fix is support for the `--project` option in
schematic commands. Currently, `getProjectName` does not know about
this option, since `createWorkflow` does not know how to parse the
command line arguments. The parsing logic is implemented partially
by the concrete implementation of the `SchematicCommand` template
method.
2019-07-16 09:58:01 -07:00
Charles Lyding
5b5f140109 refactor(@angular/cli): use stable workspace API 2019-07-10 04:05:26 +08:00
Charles Lyding
c4313f55e4 refactor(@angular/cli): unify color handling and support 2019-06-24 17:27:59 -07:00
Alan Agius
db344641f4 fix(@angular/cli): ng generate --help shows the wrong collection
At the moment, collectionName and schematicCollections are not set in various schematics command which result in fallbacking to the hardcoded default collectionName https://github.com/angular/angular-cli/blob/master/packages/angular/cli/models/schematic-command.ts#L79

Hence, this will result in incorrect information being present when using the `--help`, `--list`.

Fixes #14519
2019-05-28 20:57:21 +02:00
Charles Lyding
57189f6eca fix(@angular/cli): standardize TTY checks 2019-05-22 10:02:58 +02:00
Charles Lyding
290898536b fix(@angular/cli): prevent nested schematic execution from generating analytics
Fixes #14190
2019-05-15 14:11:48 -07:00
Filipe Silva
b6b00ebc98 build: update typescript to version 3.4.3 2019-04-13 10:23:02 -07:00
Hans Larsen
2e58fb33ca feat(@angular/cli): add custom implementation for analytics for commands
Some commands (like schematics) need to have custom reporting for
analytics. Schematics and Architect commands need to verify if the
schematic/architect builder run is in the safelist, for example.
2019-03-20 15:08:07 -07:00
Hans Larsen
1cbd915c26 feat(@angular/cli): add support for analytics command proper
To add/remove/prompt about the analytics configuration.
2019-03-20 15:08:07 -07:00
Alan Agius
71c6cc506e refactor: add allowAdditionalArgs to be able to bypass extra params validations (#13556) 2019-02-05 21:13:45 -08:00
Alan Agius
f8e873b645 fix(@angular/cli): schematics commands should fail on unknown options
When an addition argument is parsed the schematic commands should fail with an error.

Fixes #12549
2019-01-30 11:41:42 -08:00
Michael O'Keefe
db0fc7759b feat(@angular/cli): Added support for multiselect list prompt (#13031)
* feat(@angular/cli): Added support for multiselect list prompt

* If multiselect option is true use the checkbox
   inquirer prompt type, otherwise use list.

* feat(@angular-devkit/core): Added support for multiselect list prompt

* Added multiselect to PromptDefinition interface and usages
2018-11-30 12:01:57 -08:00
clydin
43aabb4be6 fix(@schematics/update): improve npmrc discovery (#12871)
* fix(@schematics/update): improve npmrc discovery

* feat(@angular/cli): support yarnrc options during update when using yarn
2018-11-14 10:30:00 -08:00
Hans Larsen
456614828f feat(@angular/cli): allow flags to have deprecation
The feature comes from the "x-deprecated" field in schemas (any schema that is used
to parse arguments), and can be a boolean or a string.

The parser now takes a logger and will warn users when encountering a deprecated
option. These options will also appear in JSON help.
2018-11-14 10:29:07 -08:00
clydin
5e354d17f1 feat(@angular/cli): autodetect default package manager (#12753) 2018-11-06 22:00:40 -08:00
Charles Lyding
5af69ba43b refactor(@angular/cli): remove rxjs direct dependency 2018-10-31 14:53:56 -07:00
Charles Lyding
5d8af57112 feat(@angular/cli): add --defaults option to ng new
Any option with a default value will not be prompted (if a prompt is defined) and the default will be used instead.

Closes #12084
2018-09-27 12:58:43 -04:00
Hans
34818b0346 feat(@angular/cli): add subcommand to options
SubCommands are not tied to the option that triggers them. They
contain a subset of a CommandDescription interface, with at least
a short and long description and usage notes. These are generated
from the subcommand schema (e.g. schematics in case of generate).
2018-09-19 13:02:40 -07:00
Hans
af96ccfb65 fix(@angular/cli): fix support for hidden options
They were showing when they should have been hidden.
2018-09-14 21:29:31 -07:00
Hans
afa71a1471 feat(@angular/cli): add help for ng-new schematics
Before it was missing because we need to load the schematics engine for it.
I moved the ng update logic that did this to SchematicCommand.
2018-09-14 21:29:31 -07:00
Hans Larsen
30b0cbda0d refactor(@angular/cli): automated JSON schema interface generation 2018-09-13 16:44:17 -07:00
Charles Lyding
9e7391c685 fix(@angular/cli): warn if targets is present when using a schematic 2018-09-13 16:43:31 -07:00
Hans
37d1a43d71 fix(@angular/cli): only print options once for schematic --help 2018-09-06 07:37:48 -07:00
Hans
7ffd3b3033 refactor(@angular/cli): rename project to workspace and clean up
Removed unnecessary fields in interfaces, added some comments. Overall QoL.
2018-09-06 07:37:48 -07:00
Hans
de7ec84872 feat(@angular/cli): add --helpJson (or --help-json) too all commands
And other refactors.

The interface for the JSON is available in command.ts (the CommandDescription).
2018-09-06 07:37:48 -07:00
Charles Lyding
489f0e9055 feat(@angular/cli): initialize a console prompt provider for schematics 2018-08-29 09:25:56 -07:00
Yi Qi
0535e2b738 feat(@angular/cli): allow schematic command to specify the default colletion. 2018-08-24 15:02:44 -07:00
Mike Brocchi
ae9817b7ee feat(@angular/cli): Update commands to extract meta data into JSON 2018-08-13 20:58:47 -07:00
qiyi
cd8801ca7b fix(@angular-devkit/schematics): fix issues in google (#11857)
1. update the return type of 'validateOptionsWithSchema' to make it
conform the signature of engineHost.registerOptionsTransform
2. fix minor naming issue
2018-08-13 12:31:26 -07:00
Yi Qi
569acc40d8 feat(@angular/cli): allow specifying workflow and engineHost for schematic commands. 2018-08-08 20:39:43 -04:00
Charles Lyding
6449a75364 fix(@angular/cli): use default project when project path is ambiguous 2018-06-21 09:23:41 -04:00
Alex Eagle
d1e392fa78 refactor: add missing license headers under packages/angular/cli 2018-06-06 15:11:31 -07:00
Hans Larsen
44086c60ff build: move devkit repo back to angular-cli 2018-06-05 18:50:06 -07:00