75 Commits

Author SHA1 Message Date
Alan Agius
0659cf09e3 fix(@angular-devkit/build-angular): add externalDependencies to server builders
Certain node packages depend on native bindings which cannot be bundled, with this fix we add a way to exclude these from being processed by the bundler.

Closes: #16348
2019-12-05 18:53:08 -08:00
Alan Agius
0a7ace3595 fix(@angular-devkit/build-angular): allow bundleDependencies to be a boolean 2019-12-05 18:53:08 -08:00
Charles Lyding
c37eaeec43 fix(@angular-devkit/build-angular): augment base HREF when localizing
All locale i18n options now support an object form which allows a base HREF to be defined for the locale.  Each locale can now optionally define a custom base HREF that will be combined with the base HREF defined for the build configuration.  By default if the shorthand form for the locale is used or the field is not present in the longhand form, the locale code will be used as the base HREF.  To disable automatic augmentation a base HREF value of an empty string (`""`) can be used.  This will prevent anything from being added to the existing base HREF.

For common scenarios, the shorthand form will result in the preferred and recommended outcome of each built locale variant of the application containing a defined base HREF  containing the locale code.
2019-12-04 08:14:16 -08:00
Charles Lyding
415b966dd4 fix(@angular/cli): improve robustness of Node.js version check
This change ensures that both the global version and the project version Node.js version requirements are met before the CLI executes a command.  Previously an older global version of the CLI would allow a newer project version to execute even if the project version had more strict Node.js version requirements.  The Node.js version is now checked twice.  Once in an ES5 safe script to ensure that ancient Node.js versions are not in use.  And secondly in the CLI entry code that is executed after global/project bootstrapping.
2019-11-21 14:06:21 -08:00
Kayla Altepeter
3100182ab1 fix(@angular/cli): change analytics type to boolean or string 2019-11-04 13:24:15 -08:00
Eusen
31a35ae060 fix(@angular/cli): scoped project names
change projects.patternProperties to npm.name.pattern

Closes #14797
2019-10-28 10:05:43 -07:00
Alan Agius
e92c46a3cf refactor(@schematics/angular): remove deprecated spec and styleext options
BREAKING CHANGE:

Deprecated `styleext` and `spec` options have been removed.  Use `style` and `skipTests` options instead.
2019-10-22 13:27:08 -07:00
Alan Agius
b0dcfd08a0 fix(@angular/cli): logic to determine if the installed CLI is out of date
With this change we now check if the current CLI version is the latest published version. If it is not, we install a temporary version to run the `ng update` with.
2019-10-22 13:13:54 -07:00
Alan Agius
c3169ae7d2 New i18n schema (#15760)
* feat(@angular-devkit/core): update schema to support new i18n options

"projects": {
  "my-app": {
    "projectType": "application",
    "schematics": {},
    "root": "",
    "i18n": {
      "sourceLocale": "en-US",
      "locales": {
        "fr": "src/locale/messages.fr.xlf"
      }
    },
    "sourceRoot": "src",
    ...
  }
}

* feat(@angular-devkit/build-angular): add new i18n options to browser and server builders

With this change we add `translateLocales` as new options for i18n in browser and server builders.

We also deprecate the following options;
* i18nLocale
* i18nFormat
* i18nFile

* feat(@angular-devkit/build-angular): deprecate `i18nFormat` and `i18nLocale` options of `extract-i18n` builder

Option `i18nFormat` has been deprecated in favor of `format` and `i18nLocale` option has been deprecated in favor of the `sourceLocale` sub option of the `i18n` project level option.

* feat(@angular/cli): add alias of `i18n-extract` for `x18n` command

* refactor: rename `translateLocales` to `localize`
2019-10-10 12:39:00 -07:00
Charles Lyding
9deaf87754 fix(@angular/cli): add browser builder index option longhand form to schema 2019-09-19 14:39:51 -07:00
noeri
366e51be04 feat(@angular-devkit/build-angular): expose webpack-dev-server's allowedHosts option
Closes #13656
2019-09-09 14:09:58 -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
Alan Agius
15ef15e94a style: remove redundant max-line-length disables and fix other lint issues 2019-07-24 19:06:21 -07:00
Alan Agius
f32c9dde1a feat(@angular/cli): add anyComponentStyle budget type 2019-07-24 19:05:00 -07:00
Charles Lyding
762d95741b refactor(@angular/cli): simplify unhandled exception message 2019-07-02 11:36:18 -07:00
Alan
2b367be1c3 feat(@angular-devkit/build-angular): deprecate scripts and styles lazy option in favor ofinject
The lazy option inside the script and style option is confusing as this option doesn't lazy load a bundle but rather it doesn't inject/reference the script in the HTML. While this option is an enabler for lazy loading, the users will still need to handle on how how this bundle will be lazy loaded. There are also potential use cases beyond lazy loading for the option.

Closes #14814
2019-07-02 11:05:51 -07:00
Alan Agius
68227565ce feat(@angular-devkit/build-angular): add crossorigin options
This options allows to define the crossorigin attribute setting of elements that provide CORS support

Closes #14743
2019-06-27 15:12:43 -07:00
Alan
70a4cbe306 style: enable no-debugger and no-console tslint rules 2019-06-27 09:28:35 -07:00
Alan
d7460517cf fix(@angular/cli): log file path normalization
In windows the logfile path in the console will be printed with both back and forward slashes if not normalized.
2019-06-25 13:28:47 -07:00
Charles Lyding
c4313f55e4 refactor(@angular/cli): unify color handling and support 2019-06-24 17:27:59 -07:00
Charles Lyding
3dced5491b feat(@angular/cli): log unhandled exceptions
Whenever an unhandled exception during command processing occurs, the message and stack trace will be saved to a debug log located in a temporary directory.  The user will be informed of the log location as well as the exception message and instructions to file a bug report at the GitHub repository.
2019-06-17 12:14:20 -07:00
Charles Lyding
a70932b1ac refactor(@angular/cli): standardize color handling and support checking
Node.js 10+ provides built-in functionality to test for color support based on chalk's `supports-color` package as well as several others. This alleviates the need for custom code or third-party packages to determine color support.  In addition for this PR, the `ansi-colors` package is added to the CLI which provides color, cross-platform symbol, and style/color removal support.  The package is light-weight, contains typings, and has no dependencies. The removal support is leveraged to remove all styling from logger messages when color is not supported.  This removes a current defect in which color/styling is still displayed if generated manually or via methods that do not perform supportability checks.  Finally, the typically used console functions are overriden to leverage the logger to ensure that the color processing is applied to third-party code (e.g., webpack internally as well as some of its loaders and plugins) which output to the console directly.
2019-06-17 11:03:21 -07:00
Matt Lewis
ef981d63b7 fix(@angular/cli): add analytics option to options schema 2019-06-06 14:16:23 -07:00
Filipe Silva
0f9de92dcb feat(@angular-devkit/build-angular): remove experimentalImportFactories option
It will just be always be used when applicable.

Fix #14218
2019-04-22 16:16:58 -07:00
Filipe Silva
92913e46b1 fix(@angular/cli): add missing experimentalImportFactories to schema 2019-04-12 12:21:13 -07:00
Filipe Silva
e6bba9eaf9 fix(@angular/cli): update config schema for karma webworker 2019-04-10 08:43:14 -07:00
Filipe Silva
ed0e6aab57 feat(@angular-devkit/build-angular): support TS web workers 2019-04-02 04:49:34 -07:00
Jason Miller
c630d5f811 feat(@angular-devkit/build-angular): support module web workers.
Supports new Worker(...,{type:module}) using github.com/googlechromelabs/worker-plugin
2019-04-02 04:49:34 -07:00
Charles Lyding
cfa1649fdd refactor(@angular/cli): use standard node resolution methods where possible 2019-03-30 18:36:22 -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
94b087c9e1 fix(@angular-devkit/build-angular): disable by default stylesheet root relative URL rebasing
BREAKING CHANGE:
Root relative URLs are a standardized method to reference a resource path from the root of a host.  The previous behavior of the Angular CLI prevented this from occuring and resulted in an inability to reference stylesheet assets in this manner.  The initial reason for this behavior is no longer present in the internal implementation of the Angular CLI.  Therefore, this now unnecessary and non-standard behavior is being phased out.  If an application currently relies on this behavior, a compatibility option `rebaseRootRelativeCssUrls` has been provided for the 8.x release cycle to facilitate transition away from this non-standard and limiting behavior.  The recommended method to transition is to use relative paths within the source stylesheet.  This allows the build system to process and generate a full URL for the asset.
2019-02-19 10:14:46 -08:00
Charles Lyding
c4376d067f fix(@angular/cli): explicitly define console color logging 2019-02-15 08:01:41 -08:00
Alan
daab547731 docs: remove analyse link from statsJson description
https://webpack.github.io/analyse has been broken for over a year and it seems that it is no longer maintained.

See  https://github.com/webpack/analyse/issues/30

Closes #10589
2019-02-13 15:26:12 -08:00
Charles Lyding
a6f51f566e feat(@angular/cli): support pnpm as a package manager option 2019-02-08 16:06:11 -08:00
Alan
4718de4dae feat(@schematics/angular): only support known style extentions
Fixes #13149
2019-01-18 11:56:19 -08:00
Charles Lyding
e3a148a74b feat(@angular-devkit/build-angular): conditional ES2015 polyfill loading 2019-01-15 14:17:55 -08:00
Judy Bogart
4729397a68 docs: dev server 2018-12-26 12:31:49 -08:00
Judy Bogart
019a4df631 docs: clarify public-host option 2018-12-26 12:31:49 -08:00
Judy Bogart
d6c0e6fdef docs: edit ng serve option doc 2018-12-26 12:31:49 -08:00
Alan Agius
a12a4e02a4 feat(@schematics/angular): consistent naming of options and arguments that do the same thing
This aligns options that do the same thing:
1) `skipSpecs` and `spec` has been deprecated in favor of `skipTests`.
2) `styleext` has been deprecated in favor of `style` since the latest is two words.

Fixes #12784
2018-12-11 11:55:54 -08:00
Alan Agius
a613a9759e style: add spacing to error message 2018-12-06 11:49:20 -08:00
Alan Agius
6b65e4cbc3 feat(@angular/cli): update optimization options 2018-12-06 11:44:27 -08:00
Alan Agius
8516d68213 feat(@angular-devkit/build-angular): fine grain settings for sourceMaps (#13062)
* feat(@angular/cli): update schema to match new `sourceMap`

* feat(@angular-devkit/build-angular): fine grain settings for sourceMaps

This PR add more control over which sourceMaps you want, Now you can enable sourceMaps for scripts only, styles only or both. Also we added another functionality which are hidden sourcemaps. These are normaly used for error reporting tools.

Fixes #7527
2018-11-30 13:11:52 -08:00
Mathou54
81670ae13b docs(@angular/cli): change default test watch flag (#13051) 2018-11-30 12:02:58 -08:00
Alan Agius
1d5d5153f3 feat(@angular/cli): add resourcesOutputPath to schema 2018-11-15 17:09:43 -08:00
Alan Agius
b659f1eef6 fix(@angular/cli): add missing ngswConfigPath to schema 2018-11-14 12:48:24 -08:00
Alan Agius
bd4dc38359 refactor: use createConsoleLogger and remove duplicate code (#12787) 2018-11-08 10:30:41 -08:00
Alan Agius
6e0b60df32 fix(@angular/cli): errors and warnings are hard to read in windows cmd (#12767)
* fix(@angular-devkit/core): errors and warnings are hard to read in windows cmd

Closes #12755

* fix(@angular/cli): errors and warnings are hard to read in windows cmd

Closes #12755
2018-10-31 21:03:03 -07:00
Charles Lyding
5af69ba43b refactor(@angular/cli): remove rxjs direct dependency 2018-10-31 14:53:56 -07:00
Alan Agius
f52f043e4f docs: update descriptions 2018-10-24 13:11:55 -07:00