- Single char alternation (e.g. a|b|c|d) in a RegExp can be simplified to use a character class ([abcd]) instead.
This usually also provides slightly better matching performance.
- Character escapes that are replaceable with the unescaped character without a change in meaning. Inside the square brackets of a character class, many escapes are unnecessary that would be necessary outside of a character class. For example the regex [\.] is identical to [.]
- If several qualified expressions occur after the qualifier having been checked for nullable, they can be replaced with optional chaining
* feat(linter): convert-tslint-to-eslint generators
* fix(core): remove generators in collection for ng and nest
* fix(core): update tao to support mixed generators and schematics
* fix(core): update tao to support mixed generators and schematics
* fix(core): address some PR feedback
* fix(core): fix snapshots after syncing up with master
* feat(core): store user preference for removeTSLintIfNoMoreTSLintTargets
* fix(linter): unit tests
* feat(core): apply root tslint.json conversion to root .eslintrc.json
* chore(core): increase coverage of eslint config file contents
* fix(core): always use project level tsconfigs with eslint
* chore(core): enhance depcheck to ignore type only imports
* chore(linter): migration always-use-project-level-tsconfigs-with-eslint
* fix(core): snapshots
* feat(core): thin wrapper around tseslint parser
* fix(core): depcheck for eslint-plugin-nx
* fix(core): revert wrapped parser
* fix(linter): add tsconfig root dir to allow for normalized paths for project configs
* fix(linter): move migration to 11.5.0
* fix(linter): add dependency on to @nrwl/workspace
Co-authored-by: Jason Jean <jasonjean1993@gmail.com>
* feat(angular): eslint config including template linting
* feat(angular): migration add-template-support-and-presets
* feat(angular): add support for component and directive prefix in lint config
* fix(angular): tests
* fix(angular): e2e tests
* fix(angular): update to latest and make updates
* fix(angular): update to latest and make updates
* fix(angular): lockfile
* fix(angular): update to latest and make updates
* fix(angular): bump angular-eslint
Co-authored-by: Jason Jean <jasonjean1993@gmail.com>
* fix(core): use typescript module resolution only for linting
* fix(core): fix unit tests
* fix(core): pass npm scope to target project locator for fallback
* chore(core): move comment about npmscope
* Revert "Revert "fix(core): sort node names for module resolution""
This reverts commit 0b77072fcfe63f8d02fccb73ba138aca99cb7f66.
* fix(core): add target project locator
This will sort nodes by length of the root (high to low) then nodes that have no root.
It also uses TypeScript to first try and resolve a module. If it is not found via TypeScript, it will
fall back to using a string match.
buildable libraries should only be able to import other buildable libraries
to avoid confusion. Importing non-buildable libs would effectively
mean embedding their src into the buildable libs, even potentially
multiple times.