* 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(linter): add explicit file extension to config files
* feat(linter): update references to .eslintrc for new projects
* fix(linter): fix quotes in global eslint config
When Cypress was invoked using `ng`, it was throwing errors because no additional properties were allowed.
When allowed, all the extra options are passed as array in the `--` key, which is not currently handled.
This commit allows additional properties and makes sure that if any adittional options are passed they are parsed and incorporated correctly.
ISSUES CLOSED: #3571
* fix(core): resolve webpack loaders with `require.resolve()`
With strict package managers such as pnpm or Yarn PnP, transitive
dependencies are *not* hoisted to the root node_modules folder. This
means that a webpack config defined within a package like
'@nrwl/cypress' cannot resolve loaders like 'ts-loader', unless
'ts-loader' is declared in the workspace's own package.json.
This is a problem because the workspace might define a different version
of 'ts-loader', incompatible with the version declared by
'@nrwl/cypress/package.json'. The workspace should not need to declare
a dependency on 'ts-loader' anyway.
See also:
* https://github.com/pnpm/pnpm/issues/801
* https://github.com/webpack/webpack/issues/5087
* fix(core): resolve absolute 'raw-loader' path
When replacing the 'raw-loader' rule in the `getStylesPartial` function,
check for the absolute path of 'raw-loader' rather than just the name.
With strict package managers such as pnpm or Yarn PnP, transitive
dependencies are *not* hoisted to the root node_modules folder. This
means that a webpack config defined within a package like
'@nrwl/cypress' cannot resolve loaders like 'ts-loader', unless
'ts-loader' is declared in the workspace's own package.json.
This is a problem because the workspace might define a different version
of 'ts-loader', incompatible with the version declared by
'@nrwl/cypress/package.json'. The workspace should not need to declare
a dependency on 'ts-loader' anyway.
See also:
* https://github.com/pnpm/pnpm/issues/801
* https://github.com/webpack/webpack/issues/5087
- eslint automatically detects .eslintrc files already
- removing the config option also enables nested configs
- provide a migration to remove config as long as users didn't customize it