@nrwl/linter 16.0.0-beta.0 → 16.0.0-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/executors.json +5 -5
- package/generators.json +2 -28
- package/index.d.ts +1 -5
- package/index.js +1 -13
- package/index.js.map +1 -1
- package/package.json +7 -20
- package/README.md +0 -61
- package/migrations.json +0 -226
- package/src/executors/eslint/compat.d.ts +0 -2
- package/src/executors/eslint/compat.js +0 -6
- package/src/executors/eslint/compat.js.map +0 -1
- package/src/executors/eslint/hasher.d.ts +0 -7
- package/src/executors/eslint/hasher.js +0 -47
- package/src/executors/eslint/hasher.js.map +0 -1
- package/src/executors/eslint/lint.impl.d.ts +0 -5
- package/src/executors/eslint/lint.impl.js +0 -116
- package/src/executors/eslint/lint.impl.js.map +0 -1
- package/src/executors/eslint/schema.d.ts +0 -38
- package/src/executors/eslint/schema.json +0 -139
- package/src/executors/eslint/utility/eslint-utils.d.ts +0 -4
- package/src/executors/eslint/utility/eslint-utils.js +0 -52
- package/src/executors/eslint/utility/eslint-utils.js.map +0 -1
- package/src/generators/init/global-eslint-config.d.ts +0 -36
- package/src/generators/init/global-eslint-config.js +0 -77
- package/src/generators/init/global-eslint-config.js.map +0 -1
- package/src/generators/init/init-migration.d.ts +0 -3
- package/src/generators/init/init-migration.js +0 -68
- package/src/generators/init/init-migration.js.map +0 -1
- package/src/generators/init/init.d.ts +0 -9
- package/src/generators/init/init.js +0 -63
- package/src/generators/init/init.js.map +0 -1
- package/src/generators/lint-project/lint-project.d.ts +0 -16
- package/src/generators/lint-project/lint-project.js +0 -137
- package/src/generators/lint-project/lint-project.js.map +0 -1
- package/src/generators/utils/eslint-file.d.ts +0 -4
- package/src/generators/utils/eslint-file.js +0 -27
- package/src/generators/utils/eslint-file.js.map +0 -1
- package/src/generators/utils/eslint-targets.d.ts +0 -2
- package/src/generators/utils/eslint-targets.js +0 -13
- package/src/generators/utils/eslint-targets.js.map +0 -1
- package/src/generators/utils/linter.d.ts +0 -4
- package/src/generators/utils/linter.js +0 -9
- package/src/generators/utils/linter.js.map +0 -1
- package/src/generators/workspace-rule/files/__name__.spec.ts__tmpl__ +0 -11
- package/src/generators/workspace-rule/files/__name__.ts__tmpl__ +0 -37
- package/src/generators/workspace-rule/schema.json +0 -26
- package/src/generators/workspace-rule/workspace-rule.d.ts +0 -7
- package/src/generators/workspace-rule/workspace-rule.js +0 -79
- package/src/generators/workspace-rule/workspace-rule.js.map +0 -1
- package/src/generators/workspace-rules-project/files/index.ts__tmpl__ +0 -27
- package/src/generators/workspace-rules-project/files/tsconfig.json__tmpl__ +0 -13
- package/src/generators/workspace-rules-project/files/tsconfig.lint.json__tmpl__ +0 -9
- package/src/generators/workspace-rules-project/schema.json +0 -23
- package/src/generators/workspace-rules-project/workspace-rules-project.d.ts +0 -8
- package/src/generators/workspace-rules-project/workspace-rules-project.js +0 -86
- package/src/generators/workspace-rules-project/workspace-rules-project.js.map +0 -1
- package/src/migrations/update-12-4-0/remove-eslint-project-config-if-no-type-checking-rules.d.ts +0 -2
- package/src/migrations/update-12-4-0/remove-eslint-project-config-if-no-type-checking-rules.js +0 -32
- package/src/migrations/update-12-4-0/remove-eslint-project-config-if-no-type-checking-rules.js.map +0 -1
- package/src/migrations/update-12-9-0/add-outputs.d.ts +0 -2
- package/src/migrations/update-12-9-0/add-outputs.js +0 -23
- package/src/migrations/update-12-9-0/add-outputs.js.map +0 -1
- package/src/migrations/update-13-3-0/eslint-8-updates.d.ts +0 -2
- package/src/migrations/update-13-3-0/eslint-8-updates.js +0 -44
- package/src/migrations/update-13-3-0/eslint-8-updates.js.map +0 -1
- package/src/migrations/update-14-1-9/add-swc-deps-if-needed.d.ts +0 -2
- package/src/migrations/update-14-1-9/add-swc-deps-if-needed.js +0 -20
- package/src/migrations/update-14-1-9/add-swc-deps-if-needed.js.map +0 -1
- package/src/migrations/update-14-4-4/experimental-to-utils-deps.d.ts +0 -2
- package/src/migrations/update-14-4-4/experimental-to-utils-deps.js +0 -30
- package/src/migrations/update-14-4-4/experimental-to-utils-deps.js.map +0 -1
- package/src/migrations/update-14-4-4/experimental-to-utils-rules.d.ts +0 -2
- package/src/migrations/update-14-4-4/experimental-to-utils-rules.js +0 -38
- package/src/migrations/update-14-4-4/experimental-to-utils-rules.js.map +0 -1
- package/src/migrations/update-15-0-0/add-eslint-inputs.d.ts +0 -2
- package/src/migrations/update-15-0-0/add-eslint-inputs.js +0 -33
- package/src/migrations/update-15-0-0/add-eslint-inputs.js.map +0 -1
- package/src/migrations/update-15-7-1/add-eslint-ignore.d.ts +0 -2
- package/src/migrations/update-15-7-1/add-eslint-ignore.js +0 -42
- package/src/migrations/update-15-7-1/add-eslint-ignore.js.map +0 -1
- package/src/utils/convert-tslint-to-eslint/convert-nx-enforce-module-boundaries-rule.d.ts +0 -5
- package/src/utils/convert-tslint-to-eslint/convert-nx-enforce-module-boundaries-rule.js +0 -57
- package/src/utils/convert-tslint-to-eslint/convert-nx-enforce-module-boundaries-rule.js.map +0 -1
- package/src/utils/convert-tslint-to-eslint/convert-to-eslint-config.d.ts +0 -9
- package/src/utils/convert-tslint-to-eslint/convert-to-eslint-config.js +0 -152
- package/src/utils/convert-tslint-to-eslint/convert-to-eslint-config.js.map +0 -1
- package/src/utils/convert-tslint-to-eslint/example-tslint-configs.d.ts +0 -326
- package/src/utils/convert-tslint-to-eslint/example-tslint-configs.js +0 -325
- package/src/utils/convert-tslint-to-eslint/example-tslint-configs.js.map +0 -1
- package/src/utils/convert-tslint-to-eslint/index.d.ts +0 -2
- package/src/utils/convert-tslint-to-eslint/index.js +0 -9
- package/src/utils/convert-tslint-to-eslint/index.js.map +0 -1
- package/src/utils/convert-tslint-to-eslint/project-converter.d.ts +0 -72
- package/src/utils/convert-tslint-to-eslint/project-converter.js +0 -396
- package/src/utils/convert-tslint-to-eslint/project-converter.js.map +0 -1
- package/src/utils/convert-tslint-to-eslint/utils.d.ts +0 -10
- package/src/utils/convert-tslint-to-eslint/utils.js +0 -91
- package/src/utils/convert-tslint-to-eslint/utils.js.map +0 -1
- package/src/utils/rules-requiring-type-checking.d.ts +0 -3
- package/src/utils/rules-requiring-type-checking.js +0 -88
- package/src/utils/rules-requiring-type-checking.js.map +0 -1
- package/src/utils/testing.d.ts +0 -2
- package/src/utils/testing.js +0 -13
- package/src/utils/testing.js.map +0 -1
- package/src/utils/versions.d.ts +0 -5
- package/src/utils/versions.js +0 -9
- package/src/utils/versions.js.map +0 -1
- package/src/utils/workspace-lint-rules.d.ts +0 -1
- package/src/utils/workspace-lint-rules.js +0 -6
- package/src/utils/workspace-lint-rules.js.map +0 -1
package/executors.json
CHANGED
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
{
|
|
2
2
|
"builders": {
|
|
3
3
|
"eslint": {
|
|
4
|
-
"implementation": "
|
|
5
|
-
"schema": "
|
|
4
|
+
"implementation": "@nx/linter/src/executors/eslint/compat",
|
|
5
|
+
"schema": "@nx/linter/src/executors/eslint/schema.json",
|
|
6
6
|
"description": "Run ESLint on a project."
|
|
7
7
|
}
|
|
8
8
|
},
|
|
9
9
|
"executors": {
|
|
10
10
|
"eslint": {
|
|
11
|
-
"implementation": "
|
|
12
|
-
"schema": "
|
|
13
|
-
"hasher": "
|
|
11
|
+
"implementation": "@nx/linter/src/executors/eslint/lint.impl",
|
|
12
|
+
"schema": "@nx/linter/src/executors/eslint/schema.json",
|
|
13
|
+
"hasher": "@nx/linter/src/executors/eslint/hasher",
|
|
14
14
|
"description": "Run ESLint on a project."
|
|
15
15
|
}
|
|
16
16
|
}
|
package/generators.json
CHANGED
|
@@ -1,30 +1,4 @@
|
|
|
1
1
|
{
|
|
2
|
-
"
|
|
3
|
-
"
|
|
4
|
-
"schematics": {
|
|
5
|
-
"workspace-rules-project": {
|
|
6
|
-
"factory": "./src/generators/workspace-rules-project/workspace-rules-project#lintWorkspaceRulesProjectSchematic",
|
|
7
|
-
"schema": "./src/generators/workspace-rules-project/schema.json",
|
|
8
|
-
"description": "Create the Workspace Lint Rules Project.",
|
|
9
|
-
"hidden": true
|
|
10
|
-
},
|
|
11
|
-
"workspace-rule": {
|
|
12
|
-
"factory": "./src/generators/workspace-rule/workspace-rule#lintWorkspaceRuleSchematic",
|
|
13
|
-
"schema": "./src/generators/workspace-rule/schema.json",
|
|
14
|
-
"description": "Create a new Workspace ESLint rule."
|
|
15
|
-
}
|
|
16
|
-
},
|
|
17
|
-
"generators": {
|
|
18
|
-
"workspace-rules-project": {
|
|
19
|
-
"factory": "./src/generators/workspace-rules-project/workspace-rules-project#lintWorkspaceRulesProjectGenerator",
|
|
20
|
-
"schema": "./src/generators/workspace-rules-project/schema.json",
|
|
21
|
-
"description": "Create the Workspace Lint Rules Project.",
|
|
22
|
-
"hidden": true
|
|
23
|
-
},
|
|
24
|
-
"workspace-rule": {
|
|
25
|
-
"factory": "./src/generators/workspace-rule/workspace-rule#lintWorkspaceRuleGenerator",
|
|
26
|
-
"schema": "./src/generators/workspace-rule/schema.json",
|
|
27
|
-
"description": "Create a new Workspace ESLint rule."
|
|
28
|
-
}
|
|
29
|
-
}
|
|
2
|
+
"extends": ["@nx/linter"],
|
|
3
|
+
"schematics": {}
|
|
30
4
|
}
|
package/index.d.ts
CHANGED
|
@@ -1,5 +1 @@
|
|
|
1
|
-
export
|
|
2
|
-
export { lintInitGenerator } from './src/generators/init/init';
|
|
3
|
-
export { Linter } from './src/generators/utils/linter';
|
|
4
|
-
export * from './src/utils/convert-tslint-to-eslint';
|
|
5
|
-
export { hasRulesRequiringTypeChecking } from './src/utils/rules-requiring-type-checking';
|
|
1
|
+
export * from '@nx/linter';
|
package/index.js
CHANGED
|
@@ -1,17 +1,5 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.hasRulesRequiringTypeChecking = exports.Linter = exports.lintInitGenerator = exports.lintProjectGenerator = void 0;
|
|
4
3
|
const tslib_1 = require("tslib");
|
|
5
|
-
|
|
6
|
-
Object.defineProperty(exports, "lintProjectGenerator", { enumerable: true, get: function () { return lint_project_1.lintProjectGenerator; } });
|
|
7
|
-
var init_1 = require("./src/generators/init/init");
|
|
8
|
-
Object.defineProperty(exports, "lintInitGenerator", { enumerable: true, get: function () { return init_1.lintInitGenerator; } });
|
|
9
|
-
var linter_1 = require("./src/generators/utils/linter");
|
|
10
|
-
Object.defineProperty(exports, "Linter", { enumerable: true, get: function () { return linter_1.Linter; } });
|
|
11
|
-
tslib_1.__exportStar(require("./src/utils/convert-tslint-to-eslint"), exports);
|
|
12
|
-
// @nrwl/angular needs it for the Angular CLI workspace migration to Nx to
|
|
13
|
-
// infer whether a config is using type aware rules and set the
|
|
14
|
-
// `hasTypeAwareRules` option of the `@nrwl/linter:eslint` executor.
|
|
15
|
-
var rules_requiring_type_checking_1 = require("./src/utils/rules-requiring-type-checking");
|
|
16
|
-
Object.defineProperty(exports, "hasRulesRequiringTypeChecking", { enumerable: true, get: function () { return rules_requiring_type_checking_1.hasRulesRequiringTypeChecking; } });
|
|
4
|
+
tslib_1.__exportStar(require("@nx/linter"), exports);
|
|
17
5
|
//# sourceMappingURL=index.js.map
|
package/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../packages/linter/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../packages-legacy/linter/index.ts"],"names":[],"mappings":";;;AAAA,qDAA2B"}
|
package/package.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@nrwl/linter",
|
|
3
|
-
"version": "16.0.0-beta.
|
|
3
|
+
"version": "16.0.0-beta.1",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "The Linter plugin for Nx contains executors, generators and utilities used for linting JavaScript/TypeScript projects within an Nx workspace.",
|
|
6
6
|
"repository": {
|
|
7
7
|
"type": "git",
|
|
8
8
|
"url": "https://github.com/nrwl/nx.git",
|
|
9
|
-
"directory": "packages/linter"
|
|
9
|
+
"directory": "packages-legacy/linter"
|
|
10
10
|
},
|
|
11
11
|
"keywords": [
|
|
12
12
|
"Monorepo",
|
|
@@ -23,30 +23,17 @@
|
|
|
23
23
|
"url": "https://github.com/nrwl/nx/issues"
|
|
24
24
|
},
|
|
25
25
|
"homepage": "https://nx.dev",
|
|
26
|
-
"ng-update": {
|
|
27
|
-
"requirements": {},
|
|
28
|
-
"migrations": "./migrations.json"
|
|
29
|
-
},
|
|
30
26
|
"builders": "./executors.json",
|
|
31
27
|
"schematics": "./generators.json",
|
|
32
|
-
"peerDependencies": {
|
|
33
|
-
"eslint": "^8.0.0"
|
|
34
|
-
},
|
|
35
28
|
"dependencies": {
|
|
36
|
-
"@
|
|
37
|
-
"@nrwl/js": "16.0.0-beta.0",
|
|
38
|
-
"@phenomnomnominal/tsquery": "~5.0.1",
|
|
39
|
-
"tmp": "~0.2.1",
|
|
40
|
-
"tslib": "^2.3.0"
|
|
41
|
-
},
|
|
42
|
-
"peerDependenciesMeta": {
|
|
43
|
-
"eslint": {
|
|
44
|
-
"optional": true
|
|
45
|
-
}
|
|
29
|
+
"@nx/linter": "16.0.0-beta.1"
|
|
46
30
|
},
|
|
47
31
|
"publishConfig": {
|
|
48
32
|
"access": "public"
|
|
49
33
|
},
|
|
34
|
+
"nx-migrations": {
|
|
35
|
+
"migrations": "@nx/linter/migrations.json"
|
|
36
|
+
},
|
|
50
37
|
"types": "./index.d.ts",
|
|
51
|
-
"gitHead": "
|
|
38
|
+
"gitHead": "abf534c265f5aa3aac146e55bb31de598ea281d7"
|
|
52
39
|
}
|
package/README.md
DELETED
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
<p style="text-align: center;"><img src="https://raw.githubusercontent.com/nrwl/nx/master/images/nx.png" width="600" alt="Nx - Smart, Fast and Extensible Build System"></p>
|
|
2
|
-
|
|
3
|
-
<div style="text-align: center;">
|
|
4
|
-
|
|
5
|
-
[](https://circleci.com/gh/nrwl/nx)
|
|
6
|
-
[]()
|
|
7
|
-
[](https://www.npmjs.com/@nrwl/workspace)
|
|
8
|
-
[]()
|
|
9
|
-
[](http://commitizen.github.io/cz-cli/)
|
|
10
|
-
[](https://gitter.im/nrwl-nx/community?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
|
|
11
|
-
[](https://join.slack.com/t/nrwlcommunity/shared_invite/enQtNzU5MTE4OTQwOTk0LTgxY2E0ZWYzMWE0YzA5ZDA2MWM1NDVhNmI2ZWMyYmZhNWJiODk3MjkxZjY3MzU5ZjRmM2NmNWU1OTgyZmE4Mzc)
|
|
12
|
-
|
|
13
|
-
</div>
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
<hr>
|
|
17
|
-
|
|
18
|
-
# Nx: Smart, Fast and Extensible Build System
|
|
19
|
-
|
|
20
|
-
Nx is a next generation build system with first class monorepo support and powerful integrations.
|
|
21
|
-
|
|
22
|
-
## Getting Started
|
|
23
|
-
|
|
24
|
-
### Creating an Nx Workspace
|
|
25
|
-
|
|
26
|
-
**Using `npx`**
|
|
27
|
-
|
|
28
|
-
```bash
|
|
29
|
-
npx create-nx-workspace
|
|
30
|
-
```
|
|
31
|
-
|
|
32
|
-
**Using `npm init`**
|
|
33
|
-
|
|
34
|
-
```bash
|
|
35
|
-
npm init nx-workspace
|
|
36
|
-
```
|
|
37
|
-
|
|
38
|
-
**Using `yarn create`**
|
|
39
|
-
|
|
40
|
-
```bash
|
|
41
|
-
yarn create nx-workspace
|
|
42
|
-
```
|
|
43
|
-
|
|
44
|
-
### Adding Nx to an Existing Repository
|
|
45
|
-
|
|
46
|
-
Run:
|
|
47
|
-
|
|
48
|
-
```bash
|
|
49
|
-
npx nx@latest init
|
|
50
|
-
```
|
|
51
|
-
|
|
52
|
-
## Documentation & Resources
|
|
53
|
-
|
|
54
|
-
- [Nx.Dev: Documentation, Guides, Tutorials](https://nx.dev)
|
|
55
|
-
- [Intro to Nx](https://nx.dev/getting-started/intro)
|
|
56
|
-
- [Official Nx YouTube Channel](https://www.youtube.com/@NxDevtools)
|
|
57
|
-
- [Blog Posts About Nx](https://blog.nrwl.io/nx/home)
|
|
58
|
-
|
|
59
|
-
<p style="text-align: center;"><a href="https://nx.dev/#learning-materials" target="_blank" rel="noreferrer"><img src="https://raw.githubusercontent.com/nrwl/nx/master/images/nx-courses-and-videos.svg"
|
|
60
|
-
width="100%" alt="Nx - Smart, Fast and Extensible Build System"></a></p>
|
|
61
|
-
|
package/migrations.json
DELETED
|
@@ -1,226 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"schematics": {
|
|
3
|
-
"remove-eslint-project-config-if-no-type-checking-rules": {
|
|
4
|
-
"cli": "nx",
|
|
5
|
-
"version": "12.4.0-beta.0",
|
|
6
|
-
"description": "Remove ESLint parserOptions.project config if no rules requiring type-checking are in use",
|
|
7
|
-
"factory": "./src/migrations/update-12-4-0/remove-eslint-project-config-if-no-type-checking-rules"
|
|
8
|
-
},
|
|
9
|
-
"add-outputs": {
|
|
10
|
-
"cli": "nx",
|
|
11
|
-
"version": "12.9.0-beta.0",
|
|
12
|
-
"description": "Add outputs for caching",
|
|
13
|
-
"factory": "./src/migrations/update-12-9-0/add-outputs"
|
|
14
|
-
},
|
|
15
|
-
"remove-eslint-project-config-if-no-type-checking-rules-again": {
|
|
16
|
-
"cli": "nx",
|
|
17
|
-
"version": "12.9.0-beta.0",
|
|
18
|
-
"description": "Remove ESLint parserOptions.project config if no rules requiring type-checking are in use",
|
|
19
|
-
"factory": "./src/migrations/update-12-4-0/remove-eslint-project-config-if-no-type-checking-rules"
|
|
20
|
-
},
|
|
21
|
-
"eslint-8-updates": {
|
|
22
|
-
"cli": "nx",
|
|
23
|
-
"version": "13.3.0-beta.0",
|
|
24
|
-
"description": "Update eslint-rules jest.config.js in order to support ESLint v8 exports mapping, remove category field",
|
|
25
|
-
"factory": "./src/migrations/update-13-3-0/eslint-8-updates"
|
|
26
|
-
},
|
|
27
|
-
"add-swc-deps": {
|
|
28
|
-
"cli": "nx",
|
|
29
|
-
"version": "14.1.9-beta.0",
|
|
30
|
-
"description": "Adds @swc/core and @swc-node as a dev dep if you are using them",
|
|
31
|
-
"factory": "./src/migrations/update-14-1-9/add-swc-deps-if-needed"
|
|
32
|
-
},
|
|
33
|
-
"add-swc-deps-again": {
|
|
34
|
-
"cli": "nx",
|
|
35
|
-
"version": "14.2.3-beta.0",
|
|
36
|
-
"description": "Adds @swc/core and @swc-node as a dev dep if you are using them (repeated due to prior mistake)",
|
|
37
|
-
"factory": "./src/migrations/update-14-1-9/add-swc-deps-if-needed"
|
|
38
|
-
},
|
|
39
|
-
"experimental-to-utils-deps": {
|
|
40
|
-
"cli": "nx",
|
|
41
|
-
"version": "14.4.4",
|
|
42
|
-
"description": "Adds @typescript-eslint/utils as a dev dep",
|
|
43
|
-
"factory": "./src/migrations/update-14-4-4/experimental-to-utils-deps"
|
|
44
|
-
},
|
|
45
|
-
"experimental-to-utils-rules": {
|
|
46
|
-
"cli": "nx",
|
|
47
|
-
"version": "14.4.4",
|
|
48
|
-
"description": "Switch from @typescript-eslint/experimental-utils to @typescript-eslint/utils in all rules and rules.spec files",
|
|
49
|
-
"factory": "./src/migrations/update-14-4-4/experimental-to-utils-rules"
|
|
50
|
-
},
|
|
51
|
-
"add-eslint-inputs": {
|
|
52
|
-
"cli": "nx",
|
|
53
|
-
"version": "15.0.0-beta.0",
|
|
54
|
-
"description": "Stop hashing eslint config files for build targets and dependent tasks",
|
|
55
|
-
"factory": "./src/migrations/update-15-0-0/add-eslint-inputs"
|
|
56
|
-
},
|
|
57
|
-
"add-eslint-ignore": {
|
|
58
|
-
"cli": "nx",
|
|
59
|
-
"version": "15.7.1-beta.0",
|
|
60
|
-
"description": "Add node_modules to root eslint ignore",
|
|
61
|
-
"factory": "./src/migrations/update-15-7-1/add-eslint-ignore"
|
|
62
|
-
}
|
|
63
|
-
},
|
|
64
|
-
"packageJsonUpdates": {
|
|
65
|
-
"12.6.0": {
|
|
66
|
-
"version": "12.6.0-beta.8",
|
|
67
|
-
"packages": {
|
|
68
|
-
"@typescript-eslint/parser": {
|
|
69
|
-
"version": "~4.28.0"
|
|
70
|
-
},
|
|
71
|
-
"@typescript-eslint/eslint-plugin": {
|
|
72
|
-
"version": "~4.28.0"
|
|
73
|
-
}
|
|
74
|
-
}
|
|
75
|
-
},
|
|
76
|
-
"12.10.0": {
|
|
77
|
-
"version": "12.10.0-beta.1",
|
|
78
|
-
"packages": {
|
|
79
|
-
"@typescript-eslint/parser": {
|
|
80
|
-
"version": "~4.31.1"
|
|
81
|
-
},
|
|
82
|
-
"@typescript-eslint/eslint-plugin": {
|
|
83
|
-
"version": "~4.31.1"
|
|
84
|
-
},
|
|
85
|
-
"@typescript-eslint/experimental-utils": {
|
|
86
|
-
"version": "~4.31.1"
|
|
87
|
-
}
|
|
88
|
-
}
|
|
89
|
-
},
|
|
90
|
-
"13.0.0": {
|
|
91
|
-
"version": "12.10.0",
|
|
92
|
-
"packages": {
|
|
93
|
-
"@typescript-eslint/parser": {
|
|
94
|
-
"version": "~4.33.0"
|
|
95
|
-
},
|
|
96
|
-
"@typescript-eslint/eslint-plugin": {
|
|
97
|
-
"version": "~4.33.0"
|
|
98
|
-
},
|
|
99
|
-
"@typescript-eslint/experimental-utils": {
|
|
100
|
-
"version": "~4.33.0"
|
|
101
|
-
},
|
|
102
|
-
"eslint": {
|
|
103
|
-
"version": "7.32.0"
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
|
-
},
|
|
107
|
-
"13.3.0": {
|
|
108
|
-
"version": "13.3.0-beta.0",
|
|
109
|
-
"packages": {
|
|
110
|
-
"@typescript-eslint/parser": {
|
|
111
|
-
"version": "~5.3.0"
|
|
112
|
-
},
|
|
113
|
-
"@typescript-eslint/eslint-plugin": {
|
|
114
|
-
"version": "~5.3.0"
|
|
115
|
-
},
|
|
116
|
-
"@typescript-eslint/experimental-utils": {
|
|
117
|
-
"version": "~5.3.0"
|
|
118
|
-
},
|
|
119
|
-
"eslint": {
|
|
120
|
-
"version": "8.2.0"
|
|
121
|
-
}
|
|
122
|
-
}
|
|
123
|
-
},
|
|
124
|
-
"13.7.0": {
|
|
125
|
-
"version": "13.7.0-beta.0",
|
|
126
|
-
"packages": {
|
|
127
|
-
"@typescript-eslint/parser": {
|
|
128
|
-
"version": "~5.10.0"
|
|
129
|
-
},
|
|
130
|
-
"@typescript-eslint/eslint-plugin": {
|
|
131
|
-
"version": "~5.10.0"
|
|
132
|
-
},
|
|
133
|
-
"@typescript-eslint/experimental-utils": {
|
|
134
|
-
"version": "~5.10.0"
|
|
135
|
-
},
|
|
136
|
-
"eslint": {
|
|
137
|
-
"version": "~8.7.0"
|
|
138
|
-
}
|
|
139
|
-
}
|
|
140
|
-
},
|
|
141
|
-
"13.10.0": {
|
|
142
|
-
"version": "13.10.0-beta.0",
|
|
143
|
-
"packages": {
|
|
144
|
-
"@typescript-eslint/parser": {
|
|
145
|
-
"version": "~5.18.0"
|
|
146
|
-
},
|
|
147
|
-
"@typescript-eslint/eslint-plugin": {
|
|
148
|
-
"version": "~5.18.0"
|
|
149
|
-
},
|
|
150
|
-
"@typescript-eslint/experimental-utils": {
|
|
151
|
-
"version": "~5.18.0"
|
|
152
|
-
},
|
|
153
|
-
"eslint": {
|
|
154
|
-
"version": "~8.12.0"
|
|
155
|
-
}
|
|
156
|
-
}
|
|
157
|
-
},
|
|
158
|
-
"14.2.0": {
|
|
159
|
-
"version": "14.2.0-beta.0",
|
|
160
|
-
"packages": {
|
|
161
|
-
"@typescript-eslint/parser": {
|
|
162
|
-
"version": "~5.24.0"
|
|
163
|
-
},
|
|
164
|
-
"@typescript-eslint/eslint-plugin": {
|
|
165
|
-
"version": "~5.24.0"
|
|
166
|
-
},
|
|
167
|
-
"@typescript-eslint/experimental-utils": {
|
|
168
|
-
"version": "~5.24.0"
|
|
169
|
-
},
|
|
170
|
-
"eslint": {
|
|
171
|
-
"version": "~8.15.0"
|
|
172
|
-
}
|
|
173
|
-
}
|
|
174
|
-
},
|
|
175
|
-
"14.3.7": {
|
|
176
|
-
"version": "14.3.6",
|
|
177
|
-
"packages": {
|
|
178
|
-
"@typescript-eslint/parser": {
|
|
179
|
-
"version": "^5.29.0"
|
|
180
|
-
},
|
|
181
|
-
"@typescript-eslint/eslint-plugin": {
|
|
182
|
-
"version": "^5.29.0"
|
|
183
|
-
},
|
|
184
|
-
"@typescript-eslint/experimental-utils": {
|
|
185
|
-
"version": "^5.29.0"
|
|
186
|
-
}
|
|
187
|
-
}
|
|
188
|
-
},
|
|
189
|
-
"14.4.4": {
|
|
190
|
-
"version": "14.4.4",
|
|
191
|
-
"packages": {
|
|
192
|
-
"@typescript-eslint/utils": {
|
|
193
|
-
"version": "^5.29.0"
|
|
194
|
-
}
|
|
195
|
-
}
|
|
196
|
-
},
|
|
197
|
-
"14.6.0": {
|
|
198
|
-
"version": "14.6.0-rc.2",
|
|
199
|
-
"packages": {
|
|
200
|
-
"@typescript-eslint/parser": {
|
|
201
|
-
"version": "~5.33.1"
|
|
202
|
-
},
|
|
203
|
-
"@typescript-eslint/eslint-plugin": {
|
|
204
|
-
"version": "~5.33.1"
|
|
205
|
-
},
|
|
206
|
-
"@typescript-eslint/utils": {
|
|
207
|
-
"version": "~5.33.1"
|
|
208
|
-
}
|
|
209
|
-
}
|
|
210
|
-
},
|
|
211
|
-
"14.8.0": {
|
|
212
|
-
"version": "14.8.0-beta.0",
|
|
213
|
-
"packages": {
|
|
214
|
-
"@typescript-eslint/parser": {
|
|
215
|
-
"version": "^5.36.1"
|
|
216
|
-
},
|
|
217
|
-
"@typescript-eslint/eslint-plugin": {
|
|
218
|
-
"version": "^5.36.1"
|
|
219
|
-
},
|
|
220
|
-
"@typescript-eslint/utils": {
|
|
221
|
-
"version": "^5.36.1"
|
|
222
|
-
}
|
|
223
|
-
}
|
|
224
|
-
}
|
|
225
|
-
}
|
|
226
|
-
}
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const devkit_1 = require("@nrwl/devkit");
|
|
4
|
-
const lint_impl_1 = require("./lint.impl");
|
|
5
|
-
exports.default = (0, devkit_1.convertNxExecutor)(lint_impl_1.default);
|
|
6
|
-
//# sourceMappingURL=compat.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"compat.js","sourceRoot":"","sources":["../../../../../../packages/linter/src/executors/eslint/compat.ts"],"names":[],"mappings":";;AAAA,yCAAiD;AAEjD,2CAAuC;AAEvC,kBAAe,IAAA,0BAAiB,EAAC,mBAAY,CAAC,CAAC"}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import { ProjectGraph, Task, TaskGraph, ProjectsConfigurations, Hasher, Hash } from '@nrwl/devkit';
|
|
2
|
-
export default function run(task: Task, context: {
|
|
3
|
-
hasher: Hasher;
|
|
4
|
-
projectGraph: ProjectGraph;
|
|
5
|
-
taskGraph: TaskGraph;
|
|
6
|
-
projectsConfigurations: ProjectsConfigurations;
|
|
7
|
-
}): Promise<Hash>;
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const tslib_1 = require("tslib");
|
|
4
|
-
function run(task, context) {
|
|
5
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
6
|
-
const res = yield context.hasher.hashTask(task);
|
|
7
|
-
if (task.overrides['hasTypeAwareRules'] === true) {
|
|
8
|
-
return res;
|
|
9
|
-
}
|
|
10
|
-
const deps = allDeps(task.id, context.taskGraph, context.projectGraph);
|
|
11
|
-
const tags = context.hasher.hashArray(deps.map((d) => (context.projectsConfigurations.projects[d].tags || []).join('|')));
|
|
12
|
-
const command = res.details['command'];
|
|
13
|
-
let selfSource = '';
|
|
14
|
-
for (let n of Object.keys(res.details)) {
|
|
15
|
-
if (n.startsWith(`${task.target.project}:`)) {
|
|
16
|
-
selfSource = res.details.nodes[n];
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
const nodes = {};
|
|
20
|
-
const hashes = [];
|
|
21
|
-
for (const d of Object.keys(res.details.nodes)) {
|
|
22
|
-
if (d.indexOf('$fileset') === -1) {
|
|
23
|
-
nodes[d] = res.details.nodes[d];
|
|
24
|
-
hashes.push(res.details.nodes[d]);
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
return {
|
|
28
|
-
value: context.hasher.hashArray([command, selfSource, ...hashes, tags]),
|
|
29
|
-
details: {
|
|
30
|
-
command,
|
|
31
|
-
nodes: Object.assign({ [task.target.project]: selfSource, tags }, nodes),
|
|
32
|
-
},
|
|
33
|
-
};
|
|
34
|
-
});
|
|
35
|
-
}
|
|
36
|
-
exports.default = run;
|
|
37
|
-
function allDeps(taskId, taskGraph, projectGraph) {
|
|
38
|
-
if (!taskGraph.tasks) {
|
|
39
|
-
return [];
|
|
40
|
-
}
|
|
41
|
-
const project = taskGraph.tasks[taskId].target.project;
|
|
42
|
-
const dependencies = projectGraph.dependencies[project]
|
|
43
|
-
.filter((d) => !!projectGraph.nodes[d.target])
|
|
44
|
-
.map((d) => d.target);
|
|
45
|
-
return dependencies;
|
|
46
|
-
}
|
|
47
|
-
//# sourceMappingURL=hasher.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"hasher.js","sourceRoot":"","sources":["../../../../../../packages/linter/src/executors/eslint/hasher.ts"],"names":[],"mappings":";;;AASA,SAA8B,GAAG,CAC/B,IAAU,EACV,OAKC;;QAED,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAChD,IAAI,IAAI,CAAC,SAAS,CAAC,mBAAmB,CAAC,KAAK,IAAI,EAAE;YAChD,OAAO,GAAG,CAAC;SACZ;QAED,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;QACvE,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,SAAS,CACnC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CACb,CAAC,OAAO,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAClE,CACF,CAAC;QAEF,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QACvC,IAAI,UAAU,GAAG,EAAE,CAAC;QACpB,KAAK,IAAI,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE;YACtC,IAAI,CAAC,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,GAAG,CAAC,EAAE;gBAC3C,UAAU,GAAG,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;aACnC;SACF;QAED,MAAM,KAAK,GAAG,EAAE,CAAC;QACjB,MAAM,MAAM,GAAG,EAAc,CAAC;QAC9B,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YAC9C,IAAI,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE;gBAChC,KAAK,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;gBAChC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;aACnC;SACF;QACD,OAAO;YACL,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,OAAO,EAAE,UAAU,EAAE,GAAG,MAAM,EAAE,IAAI,CAAC,CAAC;YACvE,OAAO,EAAE;gBACP,OAAO;gBACP,KAAK,kBAAI,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,UAAU,EAAE,IAAI,IAAK,KAAK,CAAE;aAC7D;SACF,CAAC;IACJ,CAAC;CAAA;AA5CD,sBA4CC;AAED,SAAS,OAAO,CACd,MAAc,EACd,SAAoB,EACpB,YAA0B;IAE1B,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE;QACpB,OAAO,EAAE,CAAC;KACX;IACD,MAAM,OAAO,GAAG,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;IACvD,MAAM,YAAY,GAAG,YAAY,CAAC,YAAY,CAAC,OAAO,CAAC;SACpD,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;SAC7C,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IACxB,OAAO,YAAY,CAAC;AACtB,CAAC"}
|
|
@@ -1,116 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const tslib_1 = require("tslib");
|
|
4
|
-
const eslint_1 = require("eslint");
|
|
5
|
-
const fs_1 = require("fs");
|
|
6
|
-
const path_1 = require("path");
|
|
7
|
-
const eslint_utils_1 = require("./utility/eslint-utils");
|
|
8
|
-
function run(options, context) {
|
|
9
|
-
var _a, _b, _c, _d, _e;
|
|
10
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
11
|
-
// this is only used for the hasher
|
|
12
|
-
delete options.hasTypeAwareRules;
|
|
13
|
-
const systemRoot = context.root;
|
|
14
|
-
// eslint resolves files relative to the current working directory.
|
|
15
|
-
// We want these paths to always be resolved relative to the workspace
|
|
16
|
-
// root to be able to run the lint executor from any subfolder.
|
|
17
|
-
process.chdir(systemRoot);
|
|
18
|
-
const projectName = context.projectName || '<???>';
|
|
19
|
-
const printInfo = options.format && !options.silent;
|
|
20
|
-
if (printInfo) {
|
|
21
|
-
console.info(`\nLinting ${JSON.stringify(projectName)}...`);
|
|
22
|
-
}
|
|
23
|
-
const projectESLint = yield (0, eslint_utils_1.loadESLint)();
|
|
24
|
-
const version = (_b = (_a = projectESLint.ESLint) === null || _a === void 0 ? void 0 : _a.version) === null || _b === void 0 ? void 0 : _b.split('.');
|
|
25
|
-
if (!version ||
|
|
26
|
-
version.length < 2 ||
|
|
27
|
-
Number(version[0]) < 7 ||
|
|
28
|
-
(Number(version[0]) === 7 && Number(version[1]) < 6)) {
|
|
29
|
-
throw new Error('ESLint must be version 7.6 or higher.');
|
|
30
|
-
}
|
|
31
|
-
const eslint = new projectESLint.ESLint({});
|
|
32
|
-
/**
|
|
33
|
-
* We want users to have the option of not specifying the config path, and let
|
|
34
|
-
* eslint automatically resolve the `.eslintrc.json` files in each folder.
|
|
35
|
-
*/
|
|
36
|
-
const eslintConfigPath = options.eslintConfig
|
|
37
|
-
? (0, path_1.resolve)(systemRoot, options.eslintConfig)
|
|
38
|
-
: undefined;
|
|
39
|
-
options.cacheLocation = options.cacheLocation
|
|
40
|
-
? (0, path_1.join)(options.cacheLocation, projectName)
|
|
41
|
-
: undefined;
|
|
42
|
-
let lintResults = [];
|
|
43
|
-
try {
|
|
44
|
-
lintResults = yield (0, eslint_utils_1.lint)(eslintConfigPath, options);
|
|
45
|
-
}
|
|
46
|
-
catch (err) {
|
|
47
|
-
if (err.message.includes('You must therefore provide a value for the "parserOptions.project" property for @typescript-eslint/parser')) {
|
|
48
|
-
let eslintConfigPathForError = `for ${projectName}`;
|
|
49
|
-
if ((_e = (_d = (_c = context.projectsConfigurations) === null || _c === void 0 ? void 0 : _c.projects) === null || _d === void 0 ? void 0 : _d[projectName]) === null || _e === void 0 ? void 0 : _e.root) {
|
|
50
|
-
const { root } = context.projectsConfigurations.projects[projectName];
|
|
51
|
-
eslintConfigPathForError = `\`${root}/.eslintrc.json\``;
|
|
52
|
-
}
|
|
53
|
-
console.error(`
|
|
54
|
-
Error: You have attempted to use a lint rule which requires the full TypeScript type-checker to be available, but you do not have \`parserOptions.project\` configured to point at your project tsconfig.json files in the relevant TypeScript file "overrides" block of your project ESLint config ${eslintConfigPath || eslintConfigPathForError}
|
|
55
|
-
|
|
56
|
-
Please see https://nx.dev/guides/eslint for full guidance on how to resolve this issue.
|
|
57
|
-
`);
|
|
58
|
-
return {
|
|
59
|
-
success: false,
|
|
60
|
-
};
|
|
61
|
-
}
|
|
62
|
-
// If some unexpected error, rethrow
|
|
63
|
-
throw err;
|
|
64
|
-
}
|
|
65
|
-
if (lintResults.length === 0) {
|
|
66
|
-
const ignoredPatterns = (yield Promise.all(options.lintFilePatterns.map((pattern) => tslib_1.__awaiter(this, void 0, void 0, function* () { return (yield eslint.isPathIgnored(pattern)) ? pattern : null; }))))
|
|
67
|
-
.filter((pattern) => !!pattern)
|
|
68
|
-
.map((pattern) => `- '${pattern}'`);
|
|
69
|
-
if (ignoredPatterns.length) {
|
|
70
|
-
throw new Error(`All files matching the following patterns are ignored:\n${ignoredPatterns.join('\n')}\n\nPlease check your '.eslintignore' file.`);
|
|
71
|
-
}
|
|
72
|
-
throw new Error('Invalid lint configuration. Nothing to lint. Please check your lint target pattern(s).');
|
|
73
|
-
}
|
|
74
|
-
// output fixes to disk, if applicable based on the options
|
|
75
|
-
yield projectESLint.ESLint.outputFixes(lintResults);
|
|
76
|
-
// if quiet, only show errors
|
|
77
|
-
if (options.quiet) {
|
|
78
|
-
console.debug('Quiet mode enabled - filtering out warnings\n');
|
|
79
|
-
lintResults = eslint_1.ESLint.getErrorResults(lintResults);
|
|
80
|
-
}
|
|
81
|
-
const formatter = yield eslint.loadFormatter(options.format);
|
|
82
|
-
let totalErrors = 0;
|
|
83
|
-
let totalWarnings = 0;
|
|
84
|
-
for (const result of lintResults) {
|
|
85
|
-
if (result.errorCount || result.warningCount) {
|
|
86
|
-
totalErrors += result.errorCount;
|
|
87
|
-
totalWarnings += result.warningCount;
|
|
88
|
-
}
|
|
89
|
-
}
|
|
90
|
-
const formattedResults = yield formatter.format(lintResults);
|
|
91
|
-
if (options.outputFile) {
|
|
92
|
-
const pathToOutputFile = (0, path_1.join)(context.root, options.outputFile);
|
|
93
|
-
(0, fs_1.mkdirSync)((0, path_1.dirname)(pathToOutputFile), { recursive: true });
|
|
94
|
-
(0, fs_1.writeFileSync)(pathToOutputFile, formattedResults);
|
|
95
|
-
}
|
|
96
|
-
else {
|
|
97
|
-
console.info(formattedResults);
|
|
98
|
-
}
|
|
99
|
-
if (totalWarnings > 0 && printInfo) {
|
|
100
|
-
console.warn('Lint warnings found in the listed files.\n');
|
|
101
|
-
}
|
|
102
|
-
if (totalErrors > 0 && printInfo) {
|
|
103
|
-
console.error('Lint errors found in the listed files.\n');
|
|
104
|
-
}
|
|
105
|
-
if (totalWarnings === 0 && totalErrors === 0 && printInfo) {
|
|
106
|
-
console.info('All files pass linting.\n');
|
|
107
|
-
}
|
|
108
|
-
return {
|
|
109
|
-
success: options.force ||
|
|
110
|
-
(totalErrors === 0 &&
|
|
111
|
-
(options.maxWarnings === -1 || totalWarnings <= options.maxWarnings)),
|
|
112
|
-
};
|
|
113
|
-
});
|
|
114
|
-
}
|
|
115
|
-
exports.default = run;
|
|
116
|
-
//# sourceMappingURL=lint.impl.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"lint.impl.js","sourceRoot":"","sources":["../../../../../../packages/linter/src/executors/eslint/lint.impl.ts"],"names":[],"mappings":"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"}
|