69 Commits

Author SHA1 Message Date
Miroslav Jonaš
aefe782a9f
fix(linter): enforce fresh graph if rule not run by nx command (#8976) 2022-02-16 13:44:00 +01:00
Stephen Wade
09dfe8de83
fix(linter): clean up comment after #8147 (#8691)
PR #8147 removed the ESLint override to turn off @typescript-eslint/no-unused-vars for *.tsx files. This commit removes the comment that references it.
2022-01-28 14:48:57 -05:00
Miroslav Jonaš
541d4e241b
fix(linter): use swc over ts-node for workspace lint rule registration (#8694) 2022-01-27 16:55:25 +01:00
Victor Savkin
4e474773bf
Revert "feat(core): show dep types in dep graph (#2760) (#8132)"
This reverts commit 31bb2f36261fdf222e9e8e962227dcd911dfee66.
2022-01-25 15:23:25 -05:00
Miroslav Jonaš
e394b7d85d
feat(linter): omit require and register if plugin folder is missing (#8689) 2022-01-25 17:10:02 +01:00
Miroslav Jonaš
8719a9a47c
feat(linter): add warning to nx rule when project graph is unavailable (#8668) 2022-01-24 16:27:05 +01:00
Noriyuki Shinpuku
6a3914ed42
fix(linter): remove @typescript-eslint/no-unused-vars override (#8147)
Co-authored-by: Miroslav Jonaš <meeroslav@users.noreply.github.com>
2022-01-24 15:57:25 +01:00
Colum Ferry
86c510b76f
fix(linter): avoid secondary entrypoints flagging as circular dependencies (#8564)
* fix(linter): avoid secondary entrypoints flagging as circular dependencies

ISSUES CLOSED: #8059

* fix(linter): create util around functionality
2022-01-19 10:37:27 +00:00
MaximSagan
31bb2f3626
feat(core): show dep types in dep graph (#2760) (#8132) 2022-01-18 10:20:09 -07:00
Miroslav Jonaš
581e5619e3
fix(linter): improve message when trying to import application (#8138) 2021-12-17 12:12:30 +00:00
Miroslav Jonaš
1aec1124e6
fix(linter): linter utils should respect nx.json folder configuration (#7949) 2021-11-30 16:42:11 +01:00
Miroslav Jonaš
64d388e607
feat(linter): allow banning of transitive dependencies from imports (#7906) 2021-11-30 13:34:32 +01:00
James Henry
8fa36ff3e8
feat(linter): support eslint v8 (#7800)
* feat(core): support eslint v8

* fix(core): align version of eslint across all packages
2021-11-19 17:22:21 +00:00
Miroslav Jonaš
f23a4cf7f1
feat(linter): allow wildcards for banning external imports (#7623) 2021-11-05 15:25:05 +01:00
Miroslav Jonaš
ff3b8b6106
feat(linter): allow banning of external packages (#7378) 2021-10-18 07:23:49 -07:00
Miroslav Jonaš
b23f2d8b80
feat(core): extract project graph external nodes (#7340) 2021-10-15 10:08:12 -04:00
Miroslav Jonaš
8424c69320
fix(linter): improve error message on no matching dependency restriction (#7143) 2021-09-27 12:45:20 +00:00
Miroslav Jonaš
c18a40b1f0
feat(linter): show files involved in circular dependency (#7113) 2021-09-24 09:00:15 +00:00
James Henry
bafabb3a11
feat(linter): add support for workspace rules (#6859)
* feat(linter): add support for workspace rules

* chore(linter): move deps to correct package

* feat(linter): workspace-lint-rules as project with test target

* chore(linter): tiny clean up

* fix(linter): update generators.json after refactor

* chore(linter): implement e2e test and PR feedback

* docs(linter): update generator docs

* docs(linter): update generator docs

* docs(linter): update generator docs
2021-09-01 12:49:11 -04:00
Miroslav Jonaš
3aca62af68
cleanup(repo): remove unused ext from file data and fix ext regex matcher (#6550) 2021-08-04 09:45:07 -04:00
James Henry
f76a33f5bb
chore(core): add readCachedProjectGraph and deprecate previous utility (#6385)
* chore(core): add readCachedProjectGraph and deprecate previous utility

* chore(core): whitespace

* chore(core): explicitly use type ProjectGraphCache

* chore(core): fix typo
2021-07-20 11:44:48 -04:00
Miroslav Jonaš
8ab463e386
cleanup(core): replace deprecated usage of appRootPath (#6241)
* cleanup(core): replace deprecated usage of appRootPath

* cleanup(core): revert migration changes
2021-07-05 15:51:19 -04:00
James Henry
a3c08a9153
feat(linter): do not set eslint parserOptions.project by default (#5798) 2021-05-28 13:35:34 +00:00
Miroslav Jonaš
f112b9283a
fix(linter): improve error message for circular reference (#5721)
Improves original error message by providing a hint

Closes #5625
2021-05-19 17:50:58 +00:00
Phillip Barta
053d488801 cleanup(core): removed reexport of devkit types in workspace 2021-05-19 13:42:03 -04:00
Miroslav Jonaš
ff3cc38b0c
feat(linter): optimize lint performance. resolves #5210 (#5576)
* feat(linter): optimize containsFile function

related to #5210

* feat(linter): optimize find project function

related to #5210

* feat(core): cleanup target project locator

* fix(core): fix false positive match on resolvedModule

* chore(core): mark old code for removal

* feat(linter): move npm check before expensive typescript resolution

* feat(linter): improve performance of extension removal

* feat(linter): improve I/O operations

* feat(linter): read ts config only once in project locator

* feat(linter): remove double path normalization from rule

normalization is already part of getSourceFilePath function

* feat(linter): run find source only once

* feat(linter): defer source file path calculation will after whitelist check

* feat(linter): map project graph node files to hash map

* fix(linter): map projectGraph only once per runtime

* feat(linter): introduce mapped project graph type
2021-05-18 16:41:12 +02:00
Miroslav Jonaš
6d22f628b5
fix(linter): add missing self-circular check for tslint (#5613)
* fix(linter): add missing self-circular check for tslint

* feat(linter): add test for tslint self-circular deps
2021-05-11 16:39:12 +00:00
Miroslav Jonaš
f28097e264
fix(linter): disable absolute paths within project (#5555)
* fix(linter): disable absolute paths within project

* fix(linter): add missing colon before the import path

* feat(linter): add flag to disable self circular check
2021-05-06 12:17:28 +01:00
Jason Jean
e2bec26b18
fix(linter): safely check if angular-eslint is the right version (#5511) 2021-04-30 11:40:56 -04:00
James Henry
1cf7a69ce2
feat(angular): update angular-eslint to v4 (#5499)
* feat(angular): update angular-eslint to v4

* fix(linter): add check to see if right version is used

Co-authored-by: Jason Jean <jasonjean1993@gmail.com>
2021-04-29 22:19:50 +00:00
Zachary DeRose
780bb0300a
fix(linter): Apply enforce-module-boundaries rule to exports (#5160)
* fix(linter): Apply enfore-module-boundaries rule to exports

* fixing formatting
2021-04-22 11:58:49 -04:00
vsavkin
e377a41dec fix(linter): fix enforce-module-boundaries rule to return when no project graph is present 2021-04-10 21:17:17 -04:00
Jack Hsu
20fea36058
feat(linter): use recommended react hooks eslint config (#5258) 2021-04-07 02:52:10 +00:00
vsavkin
b5efa6bfee feat(core): hash only relevant parts of global config files 2021-04-06 20:20:47 -04:00
puku0x
b1d9363bd9 fix(linter): add import source type check for literals
ISSUES CLOSED: #5224
2021-04-04 12:54:54 -04:00
Jack Hsu
c84bbb3c93
feat(react): add support for new jsx transform (#5131) 2021-04-01 13:46:12 +00:00
Noriyuki Shinpuku
d582875599
fix(linter): apply enforce-module-boundaries rule to import expressions (#5054)
ISSUES CLOSED: #3857
2021-03-26 08:27:25 -04:00
James Henry
00dec221e2
feat(linter): convert-tslint-to-eslint generators (#4943)
* 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
2021-03-19 13:41:13 -04:00
Victor Savkin
b977f42f67
fix(core): optimize task orderer to handle large graphs (#4992) 2021-03-10 17:36:05 +00:00
Gustavo Perdomo
5b0f23a3e4
chore(linter): update eslint-config-prettier (#4899)
* chore(linter): update eslint-config-prettier

* fix(linter): fix migrations

* feat(linter): update migrations

* fix(linter): move peer dependency to eslint-plugin-nx

Co-authored-by: Jason Jean <jasonjean1993@gmail.com>
2021-03-05 20:22:16 +00:00
James Henry
48c7c7b6a3
fix(core): always use project level tsconfigs with eslint (#4657)
* 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>
2021-03-05 11:48:18 -05:00
James Henry
a4a2947ae8
fix(core): disable no-var-requires eslint rule for JS files (#4831) 2021-02-18 13:52:44 -05:00
James Henry
cc88815ece
fix(core): set browser + node eslint env in @nrwl/nx/javascript (#4804) 2021-02-16 12:42:13 -05:00
Jason Jean
f25776d903
feat(linter): migrate eslint executor to devkit (#4607) 2021-01-25 15:00:53 -05:00
Victor Savkin
a25e081a84 feat(core): remove angular devkit deps 2021-01-25 12:52:30 -05:00
Kevin Brewer
b10e92818f
fix(linter): allow type imports from lazy-loaded libraries (#4431) 2021-01-14 08:45:26 +00:00
James Henry
bd92a12c33
feat(angular): eslint config including template linting (#3988)
* 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>
2020-11-25 13:55:22 -05:00
Victor Savkin
2824794a92 feat(core): clean up the language to use word executor 2020-11-24 09:49:52 -05:00
James Henry
4f5fb0f8fc
feat(linter): use overrides in root eslint config (#3949)
* feat(linter): use overrides in root eslint config

* feat(linter): update-root-eslint-config-to-use-overrides migration
2020-10-23 16:14:09 -04:00
James Henry
588effd5c5
feat(linter): shareable eslint configs (#3882)
* feat(linter): shareable eslint configs

* chore(linter): migration towards shareable eslint configs
2020-10-16 15:31:26 -04:00