The `getNonAotConfig` and `getNonAotTestConfig` functions are equivalent in regards to behavior. The `extract` optional parameter for `_createAotPlugin` is false by default.
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.
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
It is unused within our code, as webpack will do the file watching.
This removes 1.4 MB from the download size of the package.
See https://codepen.io/alexeagle/full/zbZWRM
BREAKING CHANGE:
Users who rely on angular-devkit/core to do the file watching must add chokidar to their devDependencies.
This gives better support for watching builders (such as serve). It clears the
console, and everytime an output happens from the builder it shows the logs
so far. This allows people to see the logs.
Also shows the result object (without builder info) so people can see custom
builder output.
getBuilderNameForTarget() allows someone to get the builder name string for a specific
target (or return a rejected promise if it fails).
validateOptions() allows a builder to validate options against the same mechanics that
are used when scheduling builders.
These two methods allow builders to get options from a workspace (or build some option
object), change it, validate it, and execute scheduleBuilder() if they want to schedule
directly (or want a parallel run).
This should make it easier to manage and diff. This takes 2 things into account:
1. we have either stable or experimental versions and each are kept in monorepo.
2. we dont keep hash and update only changed packages.
This commit also removed the hash to make sure this does not happen.
It came up with Nrwl that this is a common pattern; someone wants to schedule a
target but does not want to manage the run himself. This function cancels the
run when the Observable is unsubscribed from (which is not the case for a
traditional run).
Because stop logic can be asynchronous, we need to add a teardown logic
handler to the context, which turns out to be useful for other cases as
well.
This changes fixes `Error: You must pass in a NgModule or NgModuleFactory to be bootstrapped`.
At the moment the check for absolute path is not correct for windows.
Fixes#13865 and fixes https://github.com/angular/universal/issues/1139
The HTML specification allows for a wide variety of characters to be present within a custom element name. The previous behavior limited the names to mostly alphanumeric characters. This change opens up the names to include the characters specified within the specification for custom element names.
Currently, all third-party schematic developers are forced to use and directly depend on `rxjs` if any logic is asynchronous. Doing so can can also add overhead and unneeded complexity for organizations that have chosen to standardize on async/await usage. This change allows such parties to rely on native promise support if desired.
NOTE: No changes have yet been made to the public API of the package.
This introduces the core and eventual public API for the stable workspace API. This is not intended to be feature complete but rather represents the initial base infrastucture necessary for pending future feature additions.
This API is already experimental. The move allows for the new stable API to use the "workspace" directory structure and to also better signify that the existing API is in fact experimental and subject to change or removal.
Tslint 5.13+ introduced an addition parameter for the format method, mainly used for check-style formatter.
During runtime users using an older version of tslint that doesn't expose this it is not a problem as this parameter will be ignored.
See: 9000479b69
Add a scheduling options to scheduleTarget and Builder on the context so
builders can schedule sub-builds and override the logger.
Add a getTargetOptions() for builders to get access to options from the
host for a specific target. This allows builders to get options, override
some, then scheduleBuilder with those new options, for example.