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.
Node.js 8 is now in maintenance LTS status and will be EOL in December 2019. Node.js 10 is now the active LTS version with Node.js 12 due for arrival in April 2019. Node.js 10+ provides an improved performance baseline as well as access to newer Node.js APIs and Javascript language features which the Angular CLI will now be able to leverage.
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
With this change we include ivy tests to run under windows, also this changes `ivy-lazy-load` test to create a project only 1 time. This is important for windows, as `npm install` & `ngcc` take a lot of time, and for this specific test it is done 3 times.
Now `npm install` and `ngcc` will only run once
At the moment we are leaking devkit paths as `getCurrentDirectory` is used by the ngtsc compiler if no `rootDir` directories is provided.
`getCurrentDirectory` is also used to contruct the `rootDirs` option which is causing this to be incorrect as under Windows as `rootDirs` will be have an invalid value example: `/c/foo/bar`
This PR complements https://github.com/angular/angular/pull/29151
**Note** that this currently works because we are normalizing paths with posix seperators and is mimicking the behaviour of the logical file system used by the ngtsc.
Fixes: #13849
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
This is a follow up on https://github.com/angular/angular-cli/pull/13811, with this now all application have the same structure and hence `ng g service-worker` should follow suit and have the same folder strucute if generated in a root app, or an app inside the projects.
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.