551 Commits

Author SHA1 Message Date
Filipe Silva
bc7da5d076 feat(@ngtools/webpack): support import syntax for loadChildren with ViewEngine
This feature ONLY matches the format below:
```
loadChildren: () => import('IMPORT_STRING').then(m => m.EXPORT_NAME)
```

It will not match nor alter variations, for instance:
- not using arrow functions
- not using `m` as the module argument
- using `await` instead of `then`
- using a default export (https://github.com/angular/angular/issues/11402)

The only parts that can change are the ones in caps: IMPORT_STRING and EXPORT_NAME.
2019-03-29 14:39:48 -07:00
Charles Lyding
7e9297b64d refactor(@angular-devkit/build-ng-packagr): cleanup experimental architect API 2019-03-29 14:37:46 -07:00
Charles Lyding
ba21c855c0 refactor(@angular-devkit/build-angular): cleanup stable architect API builder file names 2019-03-29 14:37:35 -07:00
Charles Lyding
dd058a2cc3 refactor(@angular-devkit/build-angular): remove experimental architect builders 2019-03-29 14:37:35 -07:00
Charles Lyding
1327ee3ec9 test(@angular-devkit/build-angular): update service worker browser tests to stable API 2019-03-29 14:37:35 -07:00
Charles Lyding
61717b7c27 test(@angular-devkit/build-angular): update svg browser test to stable API 2019-03-29 14:37:35 -07:00
Hans Larsen
20103a35d6 fix(@angular-devkit/build-angular): fix countOccurences
And add testing for it.
2019-03-28 13:28:41 -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
00fb4cea4f feat(@angular-devkit/build-angular): use builder name for category
So we can differentiate between dev-server, browser, karma, etc.
2019-03-28 13:28:41 -07:00
Hans Larsen
a2ff62e2b0 feat(@angular-devkit/build-angular): add analytics for build
Add a few metrics that we want to capture in the build.
2019-03-28 13:28:41 -07:00
Hans Larsen
d25fb89078 feat(@angular-devkit/architect): add analytics to builder context
It should be NoopAnalytics if no analytics are supported.
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
Charles Lyding
bf52b26219 fix(@angular-devkit/core): correct workspace discovery 2019-03-27 16:33:39 -07:00
Charles Lyding
4a8022ea00 fix(@angular-devkit/architect): ensure workspaceRoot is actually set to workspaceRoot 2019-03-27 16:33:39 -07:00
Charles Lyding
7b1bb478b5 fix(@angular-devkit/build-angular): use package import for build-webpack in server builder 2019-03-27 16:33:39 -07:00
Renovate Bot
688ed6aca9 build: update zone.js to version ^0.9.0 2019-03-27 12:23:59 -07:00
Alan Agius
952da428f6 feat(@angular-devkit/build-ng-packagr): add support for ng-packagr version 5 2019-03-27 12:11:38 -07:00
Renovate Bot
a516f8ad91 build: update semver to version 6.0.0 2019-03-27 10:05:43 -07:00
Charles Lyding
a011863477 feat(@angular-devkit/build-angular): implement stable architect API for extract-i18n 2019-03-25 12:39:05 -07:00
Renovate Bot
c0b57ef7d0 build: update copy-webpack-plugin to version 5.0.2 2019-03-25 10:38:54 -07:00
Hans Larsen
872799e174 feat(@angular-devkit/build-angular): add AppShell new API builder
This is fully compatible with the new API. The tests have been moved 1:1.
The cleanup in general is noticable.
2019-03-25 10:38:42 -07:00
Hans Larsen
69e4103cef feat(@angular-devkit/build-angular): add server output path 2019-03-25 10:38:42 -07:00
Hans Larsen
818bf32d68 refactor(@angular-devkit/build-angular): use quicktype of app-shell schema 2019-03-25 10:38:42 -07:00
Renovate Bot
4782b1b3a4 build: update typescript to version 3.3.4000 2019-03-22 15:32:04 -07:00
Charles Lyding
2f791395d2 feat(@angular-devkit/build-angular): implement stable architect API for karma 2019-03-22 07:13:51 -07:00
Alan Agius
54a6bee7c5 feat(@angular-devkit/build-webpack): report emitted files
With this change the builder will report the emitted chunks and assets after the compilation, this is needed for deferential loading so that we can build an index from the outputs of multiple builds
2019-03-22 07:11:20 -07:00
Alan Agius
ce15899020 feat(@angular-devkit/build-angular): use sass instead of node-sass
BREAKING CHANGE: we no longer use `node-sass` by default, instead we use `sass` (dart-sass).

While in most cases this should not have an impact the generated code, dart sass has some differences from Ruby Sass. See https://github.com/sass/dart-sass#behavioral-differences-from-ruby-sass for more details

If you wish to use `node-sass` instead of `sass` you need to install node-sass as a dev dependency.

npm users
```
npm install node-sass --save-dev
```

yarn users
```
yarn add node-sass --dev
```

**Note:** for larger Sass projects to avoid this performance hit you might want to install `fibers`. See: https://www.npmjs.com/package/fibers

Ref: TOOL-748
2019-03-20 15:12:18 -07:00
Hans Larsen
15032aa2e8 feat(@angular-devkit/schematics): add support for analytics
Schematics context now have an (optional) analytics field that, if set,
should be used to report usage. This can be set even in some cases where
analytics is disabled (to a noop analytics).
2019-03-20 15:08:07 -07:00
Hans Larsen
2e9dc3d252 docs: add analytics dimensions for schematics flags and internal doc
The analytics.md should be kept up to date with the flags.
2019-03-20 15:08:07 -07:00
Filipe Silva
6e3d2e0c4d feat(@ngtools/webpack): support Angular 8
This requires updating projects to TypeScript 3.3
2019-03-20 12:29:01 -07:00
Hans Larsen
5500ad2504 feat(@angular-devkit/build-angular): add Server Builder v2
Using the new Architect API. Including moving the tests.
2019-03-19 10:07:46 -07:00
Hans Larsen
53f6b5ccfe refactor: extract the deleteOutputPath logic from the builder 2019-03-19 10:07:46 -07:00
Hans Larsen
230f491343 refactor: use quicktype for the server schema generation 2019-03-19 10:07:46 -07:00
Alan Agius
8f77d6711a fix(@angular-devkit/build-angular): update speed-measure-webpack-plugin to 1.3.1
This fixes the issue of it generating an empty speed-measure-plugin.json.

Fixes #12763
2019-03-19 09:28:20 -07:00
Alan Agius
f71896874e feat(@angular-devkit/build-angular): enable webpack profile when using stats-json flag
More information about what `profile` does can be found here: https://webpack.js.org/api/stats

Closes #13907
2019-03-19 09:25:28 -07:00
Alan Agius
20a644ec4b fix(@angular-devkit/build-angular): passing port 0 when using serve will not find a suitable port
At the moment, when passing port `0` it will default to `4200` which is incorrect. `4200` should be used a baseport.
2019-03-19 09:23:08 -07:00
Charles Lyding
a49d278baa feat(@angular-devkit/build-angular): implement stable architect API for protractor 2019-03-19 09:17:15 -07:00
Charles Lyding
fc48101a90 feat(@angular-devkit/build-ng-packagr): implement stable architect API 2019-03-19 09:05:01 -07:00
Hans Larsen
deeea03650 test: fix invalid architect tests
See fe229faf78
2019-03-15 16:07:06 -07:00
Renovate Bot
c85e4048d7 build: update autoprefixer to version 9.5.0 2019-03-15 16:06:53 -07:00
Alan Agius
330e56ed6d feat(@angular-devkit/build-angular): deprecate profile option in build
This flag has been deprecated in favor of the `NG_BUILD_PROFILING`  environment variable. This is mainly due not to expose debugging flag in our API.
2019-03-15 16:06:15 -07:00
Hans Larsen
ef3dd70001 test: remove build-angular browser tests for old API
Move the new API tests in its place.
2019-03-15 16:05:42 -07:00
Hans Larsen
c28fb10f40 test: use toContain instead of simply true/false
It will show up better in the logs if it doesnt match.
2019-03-15 12:23:43 -07:00
Alex Eagle
fe229faf78 test: comment out broken assertion 2019-03-13 14:28:25 -07:00
Charles Lyding
ebf90b3d6a refactor(@angular-devkit/build-angular): remove unused host parameter from typescript webpack methods 2019-03-13 13:55:26 -07:00
Charles Lyding
8644608987 refactor(@angular-devkit/build-angular): remove redundant getNonAotTestConfig function
The `getNonAotConfig` and `getNonAotTestConfig` functions are equivalent in regards to behavior.  The `extract` optional parameter for `_createAotPlugin` is false by default.
2019-03-13 13:55:26 -07:00
Olivier Combe
3d8064bb64 feat(@angular-devkit/build-angular): remove Closure compiler i18n code for ivy
For runtime i18n with ivy we generate code for both Closure compiler (used at Google) and for external people that don't use Closure compiler.
We added a new global flag named `ngI18nClosureMode` that allows uglify (and Closure compiler) to effectively tree-shake all of the code that isn't used in the current setup.
By default we remove all of the Closure compiler code because we assume that it won't be used.
2019-03-13 13:55:07 -07:00
Alan Agius
f70b9060d0 fix(@angular-devkit/build-angular): don't show warning when font shorthand is used
At the moment when `font` shorthand property is used a warning is emitted when using this syntax
```
font: 10px "Font Awesome";
```

This should be addressed by clean-css

Fixes #9648
2019-03-13 13:54:09 -07:00
Alan Agius
8d09594874 fix(@angular-devkit/build-angular): resolve fonts with space in filename
At the moment the uri of the font instead of spaced it will be `%20`, hence we need to decode it first before trying to resolve it.

Fixes #9648
2019-03-13 13:54:09 -07:00