32 Commits

Author SHA1 Message Date
Miroslav Jonaš
c18a40b1f0
feat(linter): show files involved in circular dependency (#7113) 2021-09-24 09:00:15 +00: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
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
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
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
Jason Jean
bfb194843f
feat(core): remove readFile argument from createProjectGraph (#5206)
* feat(core): deprecate creating a project graph from a host

* feat(core): remove readFile argument from createProjectGraph
2021-04-06 13:44:09 -04:00
Victor Savkin
a25e081a84 feat(core): remove angular devkit deps 2021-01-25 12:52:30 -05:00
Victor Savkin
2824794a92 feat(core): clean up the language to use word executor 2020-11-24 09:49:52 -05:00
Jason Jean
f057978400
fix(core): fix lint failures for npm packages (#3827) 2020-09-28 18:31:29 -04:00
maxkoretskyi
4a942d9eda fix(linter): fix performance issues with boundaries lint checks 2020-09-28 13:20:25 -04:00
Jason Jean
970a60d08c fix(core): combine npm and project locators to scan files only once 2020-09-28 11:52:31 -04:00
Victor Savkin
67dda10d55 feat(core): redesign workspace file hashing 2020-07-16 13:51:25 -04:00
Jason Jean
a7b7af2dfe
feat(core): switch over to angular 10 (#3056)
* feat(core): switch over to devkit 10-rc.0

* feat(core): implement solution tsconfigs wip

* feat(angular): add angular migrations

* fix(angular): modify angularjs tests
2020-07-07 17:02:06 -04:00
Jonathan Cammisuli
3a4a3bea13
fix(core): use typescript module resolution for linting (#3075)
* 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
2020-06-05 11:11:17 -04:00
Jason Jean
e06822da7e
chore(repo): update prettier to v2 (#2934)
this is just for the repo, and not the workspace

Co-authored-by: Rares Matei <matei.rar@gmail.com>
2020-04-29 01:09:37 -04:00
Jonathan Cammisuli
1c4078986f
TypeScript module resolution and lint updates (#2309)
* 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.
2020-01-31 13:08:12 -05:00
Juri
98a60d118f feat(core): add enforceBuildableLibDependency to make buildable lib rule configurable
This way if the buildable lib dependency rule doesn't work for some people they have an easy way to
opt-out of it
2020-01-21 12:02:13 -05:00
Juri
36463cf2a2 feat(core): add rule to enforce deps buildable-lib to buildable-lib
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.
2020-01-21 12:02:13 -05:00
Victor Savkin
0b77072fcf Revert "fix(core): sort node names for module resolution" 2020-01-11 22:42:33 -05:00
Jonathan Cammisuli
dddc1b1e6c fix(core): sort node names for module resolution 2020-01-09 19:13:53 -05:00
Jonathan Cammisuli
3d05bf08d0 Revert "Revert "fix(misc): resolve projects for linting using TypeScript""
This reverts commit ab25e84b08a938661d5766c5c7f4d501cfaf8b0b.
2020-01-09 19:13:53 -05:00
Victor Savkin
ab25e84b08 Revert "fix(misc): resolve projects for linting using TypeScript"
This reverts commit 6411a29683eff436ad314692aec61ea403155d3a.
2020-01-02 22:19:33 -05:00
Jonathan Cammisuli
6411a29683 fix(misc): resolve projects for linting using TypeScript 2019-12-30 15:39:46 -05:00
Victor Savkin
8749c18f91 cleanup(core): extract "core" folder from "command-line" 2019-12-16 16:04:35 -05:00
Jack Hsu
a82737968b
chore(core): refactor generation of dependency graph (aka project graph) (#2151) 2019-12-12 15:54:31 -05:00
Anthony Garritano
feca793d32 fix(nx): fix support for * in lint rules
fix #2076
2019-12-01 14:17:57 -05:00
Jack Hsu
7df0e58043 fix(nx): add support for regexp in allow option of enforce-module-boundaries lint rule
Closes #1943
2019-10-18 15:26:08 -04:00
Jason Jean
98fc5e00bb refactor(nx): refactor affected to produce affected metadata 2019-10-03 13:47:47 -04:00
Victor Savkin
15b466608b feat(nx): support * and ** in lint rules 2019-09-30 17:19:19 -04:00
Max Sagan
82898f7d21 feat(schematics): allow wildcard in whitelisting of deep imports 2019-06-04 16:35:06 -04:00
Victor Savkin
b5f1966ca5 refactor(nx): extract workspace creation into @nrwl/workspace 2019-04-21 09:46:21 -04:00