256 Commits

Author SHA1 Message Date
Charles Lyding
c4313f55e4 refactor(@angular/cli): unify color handling and support 2019-06-24 17:27:59 -07:00
cexbrayat
3cd0931eb7 fix(@angular/cli): correct git branch in ng version
When testing a local CLI build with `npm link @angular/cli`, if you run `ng version`,
you currently see:

    Angular CLI: local (v8.1.0-beta.2+24.3bb67d8.with-local-changes, branch: version)

if the Git branch is `fix/version`.

Whit this PR, `ng version` now displays the proper Git branch name:

    Angular CLI: local (v8.1.0-beta.2+24.3bb67d8.with-local-changes, branch: fix/version)
2019-06-19 17:06:52 -07:00
Lakhyari
58599e125e feat(@angular/cli): ng doc accepts a version flag
With this commit, we can now specify a `version`
for the `ng doc` command

    ng doc --version 6
    ng doc -v 6

and this will open `v6.angular.io` instead of `angular.io`.
The default domain is still used
if no version is specified.

Refs #12365
2019-06-17 11:02:56 -07:00
Charles Lyding
dea6bb317b fix(@angular/cli): only enable CLI 1.x update handling when no new config
Fixes #14703
2019-06-11 14:23:04 -07:00
Judy Bogart
dc117324ac docs: differentiate lib build from app build 2019-06-11 10:23:43 -07:00
Charles Lyding
09149fe5e4 fix(@angular/cli): allow update when git is unclean outside the workspace 2019-06-11 09:53:56 -07:00
Charles Lyding
ed4baa4884 fix(@angular/cli): avoid updating when package is already up to date
Fixes #14647
2019-06-06 14:24:36 -07:00
Charles Lyding
2d27cb4671 fix(@angular/cli): resolve update migrations from referenced package root
This ensures that migration fields that reference other packages use the package version specified in the migrating package's dependencies and not the version that a package manager happens to hoist to the root of the workspace.
2019-06-06 14:22:02 -07:00
Charles Lyding
aceaacde50 fix(@angular/cli): provide an option to update dirty repositories 2019-05-30 13:55:14 -07:00
Alan Agius
757d8df3e6 fix(@angular/cli): ng config doesn't parse positional array
Fixes #14516
2019-05-28 21:01:13 +02: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
b336cc7798 fix(@angular/cli): ensure git repository is clean before updates
If not asking for update status then this change checks for a clean git repository before proceeding.  This allows the user to easily reset any changes from the update and avoid any developer code changes from being mixed with update changes.
2019-05-23 19:13:41 +02:00
Charles Lyding
8f0b3eb09a fix(@angular/cli): show error when using x18n command on Node.js 12.0
Node.js 12.0 contains a defect which will cause the command to crash.  This is due to the locale support in Node.js 12.0 (ICU).  ref: https://github.com/nodejs/node/issues/27379
2019-05-22 10:02:13 +02:00
Alan
8e3efaf70b docs: update project description to full application instead of app 2019-05-21 09:09:42 -04:00
Alex Eagle
ec731f0454 docs: don't reference next.angular.io
When we cut a release, this moves to angular.io.
Use v8.angular.io in places where angular.io is currently a 404.

Fixes https://github.com/angular/angular/issues/30407
2019-05-21 09:08:40 -04:00
Charles Lyding
b7fc6125e5 fix(@angular/cli): improve error handling of update command
This adds extensive option checking and error handling with the goal to catch user errors as early in the process as possible.  Bad option combinations and/or values will result in actionable information and stop the process before network access and processing occurs.
2019-05-15 14:34:03 -07:00
Keen Yee Liau
ff2600b417 fix(@angular/cli): @bazel/* are not shown in ng version
Update `ng version` to show versions for @bazel/* packages to help users
report meaningful errors when they opt in to Bazel.
2019-05-15 14:15:03 -07:00
Captain Caius
c652ec7456 docs: describe prod flag more explicitly 2019-05-10 15:06:50 -07:00
Charles Lyding
7a72f2fb17 refactor(@angular/cli): avoid aggressive eager command loading
Currently, upon execution `ng` will load all description files AND code for all available commands.  This requires a large amount of unnecessary file access and processing since only at most one command will be executed.  This change limits the loading to only command being executed in the common case and a subset of commands in the event an alias is used.  The help command now loads all commands during its execution which is needed to gather command description information.  Further improvements are possible by only loading the necessary metadata instead of the execution code (and its dependencies) as well.
This change allows for savings of ~250ms per execution.

Examples:
Before -- `./node_modules/.bin/ng version  0.99s user 0.17s system 113% cpu 1.020 total`
After -- `./node_modules/.bin/ng version  0.70s user 0.13s system 110% cpu 0.749 total`

Before -- `./node_modules/.bin/ng g c a  1.91s user 0.30s system 111% cpu 1.996 total`
After -- `./node_modules/.bin/ng g c a  1.62s user 0.27s system 110% cpu 1.715 total`
2019-05-10 15:04:32 -07:00
Judy Bogart
5b3ee079d7 docs: edit reference doc for update command 2019-05-07 16:23:54 -06:00
Tiago Temporin
9805e8428d feat(@angular/cli): implement --registry for ng add (#14285)
Closes 14189
2019-05-07 12:34:27 -06:00
Alex Eagle
f5c41e5754 build: Resolve ng generate aliases before logging analytics 2019-04-17 13:40:58 -07:00
Judy Bogart
d2a343a405 docs: add cli usage analytics doc 2019-04-16 14:32:06 -07:00
Filipe Silva
5ec27db6bc feat(@angular/cli): verify Angular version is supported 2019-04-15 11:31:34 -07:00
Alan Agius
fe98024146 docs: align several experimental text and update ng new explanation 2019-04-10 08:44:53 -07:00
Andriy Pyvovarchuk
50cce668cc refactor: replace deprecated package opn with open 2019-04-01 10:53:12 -07:00
Charles Lyding
cfa1649fdd refactor(@angular/cli): use standard node resolution methods where possible 2019-03-30 18:36:22 -07:00
Hans Larsen
2ffbdfa86a build: add a validation script for the analytics.md tables
Also added enums to update when changing dimensions.
2019-03-28 13:28:41 -07:00
Hans Larsen
55471770db refactor: use dimensions for some values instead of metrics
This is after a discussion with someone internal. Metrics are good
for sums but not for comparisons and search/filtering.
2019-03-28 13:28:41 -07:00
Hans Larsen
e9ee58a89e refactor(@angular/cli): move analytics constants to devkit core
They need to be shared with builders and schematics.
2019-03-28 13:28:41 -07:00
Niyaz Akhmetov
eaf6de0040 docs: add example for ng add 2019-03-27 10:05:04 -07:00
Hans Larsen
c42c82f669 feat(@angular/cli): add validation logic for analytics in ng config
And refactored the validation logic to be a bit simpler generally.
2019-03-26 10:07:30 -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
e0acac9c2d feat(@angular/cli): add @nguniversal/* to ng version
Closes #9959
2019-03-13 13:53:38 -07:00
Charles Lyding
be5e2fbfe5 fix(@angular/cli): remove redundant typescript/compiler-cli compatibility check
Angular 5.0+ has a full peer dependencies setup (with 6.0+ also having a configurable runtime error check) to ensure that an appropriate version of typescript is available for compilation.  Angular CLI 8.0+ does not support Angular versions prior to these and therefore the warning is redundant.  For the case where the developer wishes to use an unsupported TypeScript version, the developer would need to adjust two similar but differently name settings in two different configuration files.
2019-02-20 10:36:52 -08:00
Charles Lyding
f58a7ded00 fix(@angular/cli): remove deprecated eject command 2019-02-15 15:09:11 -08:00
WilliamKoza
ec94f42108 fix(@angular/cli): wrap opn in a new Promise because opn is already resolve is already resolve. 2019-02-08 16:10:59 -08:00
William KOZA
416b05061f fix(@angular/cli): Add an error message when we call ng doc without keyword. Currently, we open a page with the keyword undefined. (#13604) 2019-02-07 08:24:29 -08: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
bae67c2de6 fix(@angular/cli): remove unsupported dryRun and force from ng add
Fixes #13479
2019-01-30 11:40:35 -08:00
Keen Yee Liau
c53e875df0 fix(@angular/cli): ng-add should resolve package.json
ng-add checks if a specified collection is installed, and if not it'd
proceed to install the package. However, `isPackageInstalled` would, by
default, resolve the main field or the index of the package. Not all NPM
packages specify the main field or provide an index file. It should
be sufficient to just check the presence of `package.json` to detect
whether a package is installed or not.

For example, `ng add @angular/bazel` should not install the package if
it's already installed locally. `@angular/bazel` does not specify a main
field not an index file in its `package.json`.
2019-01-29 14:13:44 -08:00
Charles Lyding
b956db6262 fix(@angular/cli): 'ng add' selects supported version via peer dependencies
If no version specifier is supplied `ng add` will now try to find the most recent version of the package that has peer dependencies that match the package versions supplied in the project's package.json
2019-01-21 20:27:20 -08:00
Judy Bogart
21894b714b docs: add multi-app technique to ng new description 2019-01-18 12:06:59 -08:00
Charles Lyding
f066e99e3a feat(@angular/cli): initial minimal BEP support 2018-12-11 11:58:05 -08:00
Alan Agius
bc76d0c273 refactor(@angular/cli): move project name being linted logic to builder 2018-12-06 11:24:27 -08:00
Carlo Dapor
fddd71009b docs: remove spurious Unicode character at the end of update-long.md
There is an extra character (\u200c) at the end of the line starting with "ng add".
2018-11-26 10:22:50 -08:00
Judy Bogart
b626ca7c5e docs: add v7 instructions to ng update cmd 2018-11-16 15:15:29 -08:00
Judy Bogart
268ce42933 docs: fix typos 2018-11-16 15:15:29 -08:00
Alan Agius
26245c0c53 docs: update long descriptions for test, e2e and lint
Closes #12930
2018-11-14 12:40:01 -08:00