93 Commits

Author SHA1 Message Date
Juri
8e6a66cdb2 fix(linter): correctly fix absolute imports across package boundaries 2022-07-22 15:11:18 +02:00
Laforge Thomas
c117ad51ec
fix(linter): update typescript eslint dependency (#11112)
Co-authored-by: Miroslav Jonas <missing.manual@gmail.com>
2022-07-20 21:57:51 +00:00
Miroslav Jonaš
5194551d85
fix(linter): improve performance of runtime lint utils (#11100) 2022-07-12 17:04:01 +02:00
Miroslav Jonaš
d7bbf85f29
feat(linter): support transitive hasBannedImport (#11000) 2022-07-11 14:31:13 +02:00
Craigory Coppola
15c04b099e
chore(repo): enable eslint plugin checks (#10666) 2022-06-09 18:04:06 -04:00
Craigory Coppola
7f4abd9e3c
fix(linter): plugin-lint-checks should allow some strings as valid versions (#10647) 2022-06-09 09:27:31 -04:00
Craigory Coppola
10363e3bec
feat(nx-plugin): add plugin eslint rules (#9697)
* feat(nx-plugin): add lint rule for nx-plugin validation

* chore(repo): review feedback

Co-authored-by: Giora Guttsait <giora111@gmail.com>

* chore(repo): review feedback

Co-authored-by: Giora Guttsait <giora111@gmail.com>

* chore(nx-plugin): review comments

* chore(nx-plugin): review feedback

Co-authored-by: Giora Guttsait <giora111@gmail.com>
2022-06-03 16:03:39 -04:00
Victor Savkin
e491c6f738 feat(core): make nx.json optional 2022-05-31 15:35:28 -04:00
Miroslav Jonaš
4863e5124d
fix(linter): make entry point check for ts paths more specific (#10365) 2022-05-19 09:07:02 +02:00
Miroslav Jonaš
5baaab4b70
fix(linter): do not remap paths that cannot be matched on fix (#10371) 2022-05-19 09:06:49 +02:00
Miroslav Jonaš
87fd3ffdbe
cleanup(core): remove unused npm scope from target project locator (#9695) 2022-04-05 23:05:21 +02:00
Victor Savkin
428106f6be
cleanup(core): create more meaningful file structure in nx package (#9621) 2022-03-31 09:07:22 -04:00
Miroslav Jonaš
3b21f4dfea
fix(core): switch from appRootPath to workspaceRoot (#9600) 2022-03-30 09:15:20 -04:00
Craigory Coppola
9123665bed
fix(core): normalize file path for node-hasher (#9585)
Node hasher paths need to be normalized, since on windows they return with '\' instead of '/' and don't match keys in workspace configuration.

Fixes #9584
Fixes #9581
2022-03-29 14:16:24 -04:00
Victor Savkin
d4b5c30eba
cleanup(core): remove the indirection left after inlining ta… (#9469) 2022-03-23 22:18:17 -04:00
Victor Savkin
9c25cd9f59
chore(repo): reenable tests 2022-03-15 09:52:43 -04:00
Victor Savkin
53a0528d7a
fix(repo): temporary disable tests 2022-03-14 21:31:55 -04:00
Victor Savkin
6f038e7a4a feat(core): reorganize packges to consolidate all cli-related code in nx 2022-03-14 16:42:51 -04:00
Miroslav Jonaš
5db394ecd8
fix(linter): use import to check for secondary entrypoint in angular (#9285) 2022-03-11 14:52:43 +01:00
Juri Strumpflohner
45bf0e5a25
feat(linter): automatic fixes for noRelativeOrAbsoluteImportsAcrossLibraries and noSelfCircularDependencies (#8901)
Co-authored-by: Miroslav Jonas <missing.manual@gmail.com>
2022-03-09 08:14:33 +00:00
Jay Tavares
0a17a619d0
feat(linter): add notDependOnLibsWithTags constraint option to enforce-module-boundaries rule (#8633)
Co-authored-by: Miroslav Jonas <missing.manual@gmail.com>
2022-03-08 11:55:03 +01:00
Miroslav Jonaš
fa4cb1a958
fix(linter): ensure onlyDependOnLibsWithTags is present before check (#9192) 2022-03-04 08:07:30 -05:00
Ryan Diehl
ecf66750b4
fix(linter): update circular file path message to wrap onto multiple lines (#9033) 2022-03-04 13:57:20 +01:00
Miroslav Jonaš
c1ebe8020f
feat(core): expose swc/register via tao (#9142) 2022-03-04 12:54:58 +01:00
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