This PR requires https://github.com/nrwl/nx/pull/758
## Current Behavior
The option to generate an application with a unit-test-runner of jest is not available
## Expected Behavior
User is able to generate an application which uses jest to run unit tests via:
```sh
ng g jest
ng g app jest-app --unit-test-runner jest
ng test jest-app
```
## Current Behavior
`package.json` was reformatted incorrectly after publishing.
## Expected Behavior
`/package.json` is ignored from `prettier`. This makes it so the two formatters do not conflict with one another.
## Notes
This is causing all PRs to fail currently
The format command now splits all the array containing all the urls and patterns given, in smaller chunks arrays, executing the command on each chunks. This prevent to have too long argument on the command for the terminal, which can lead to error on specific OS. The chaining of command is transparent for the user.
close#511
When running the affected command with the `--parallel` option, `npm-run-all` is used to achieve the parallel execution of the desired tasks. Because of the use of `npm-run-all`, the `ng` command should be visible and declared as script command in the `package.json` of your project.
This adds a verification before runing the command with the `--parallel` option to make sure the `package.json` has the `ng: "ng"` command in the `scripts` section.
close#700
This adds a hook to the git command to run prettier on the staged files, before committing. Prettier
has now more broad and general rules with excluded folder and more files to correct.
This adds the ability to automate the format of the commit by prompting the information needed in sequence.
It is then easier to follow the standard format of the repository.
A commit check has been added to the CI too.
Currently the `dry-run` command speed is on an average of:
* `ng g app app_name --dry-run`: 7099.051ms to 7207.579ms;
* `ng g lib lib_name --dry-run`: 4015.622ms to 3881.893ms;
This is due to too many files in the tree. While performing the transformation required
by the schematic, the tree inclues files in the _node_modules, .git, .idea, .vscode_ folders.
These files are not needed and impact the performance of the commandline.
This add a filter function on the tree, before anything is moved. With that filter function
the average speed is:
* `ng g app app_name --dry-run`: 1420.826ms to 1435.487ms;
* `ng g lib lib_name --dry-run`: 1382.279ms to 1413.042ms;
close#706
When injecting a store reference, the store state should be an inline type
based on the feature key that was registered with `StoreModule.forFeature(...)`.
Consider the facade generated for feature 'cars':
```ts
StoreModule.forFeature('cars', carsReducer, { initialState: carsInitialState })
```
```ts
@Injectable()
export class CarsFacade {
constructor( private store: Store<{cars: CarsState}> ) { }
}
```
implicitDependencies between files and projects are already able to be
specified in nx.json, so this adds the ability to specify implicitDependencies
between one project and (multiple) others.
By extension, this also enables a more flexible e2e suite naming
convention than was previously supported.
Closes#665
This adds the support to generate an application with the `inline-template` flag activated.
Two new utils added: `getDecoratorPropertyValueNode` & `replaceNodeValue`.
Add some tests ensure to test the two ways of generating template, using `templateUrls` and `inlineTemplate`.
Tests are unising the flag `inlineTemplate`.
close#519
Angular CLI now supports `host.delete()`. `updateProject()` now properly removes
the library generated service and component files.
> Earlier workarounds using `unlink()` were not working.
Refs #650.