@nx/eslint 20.2.0-canary.20241130-ec5a5e6 → 20.2.0-canary.20241204-75b2080

Sign up to get free protection for your applications and to get access to all the features.
package/migrations.json CHANGED
@@ -19,6 +19,11 @@
19
19
  "version": "17.2.9",
20
20
  "description": "Move executor options to target defaults",
21
21
  "implementation": "./src/migrations/update-17-2-9/move-options-to-target-defaults"
22
+ },
23
+ "update-typescript-eslint-v8.13.0": {
24
+ "version": "20.2.0-beta.5",
25
+ "description": "Update TypeScript ESLint packages to v8.13.0 if they are already on v8",
26
+ "implementation": "./src/migrations/update-20-2-0/update-typescript-eslint-v8-13-0"
22
27
  }
23
28
  },
24
29
  "packageJsonUpdates": {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nx/eslint",
3
- "version": "20.2.0-canary.20241130-ec5a5e6",
3
+ "version": "20.2.0-canary.20241204-75b2080",
4
4
  "private": false,
5
5
  "description": "The ESLint plugin for Nx contains executors, generators and utilities used for linting JavaScript/TypeScript projects within an Nx workspace.",
6
6
  "repository": {
@@ -35,11 +35,11 @@
35
35
  "eslint": "^8.0.0 || ^9.0.0"
36
36
  },
37
37
  "dependencies": {
38
- "@nx/devkit": "20.2.0-canary.20241130-ec5a5e6",
39
- "@nx/js": "20.2.0-canary.20241130-ec5a5e6",
38
+ "@nx/devkit": "20.2.0-canary.20241204-75b2080",
39
+ "@nx/js": "20.2.0-canary.20241204-75b2080",
40
40
  "semver": "^7.5.3",
41
41
  "tslib": "^2.3.0",
42
- "typescript": "~5.4.2"
42
+ "typescript": "~5.6.2"
43
43
  },
44
44
  "peerDependenciesMeta": {
45
45
  "@zkochan/js-yaml": {
@@ -0,0 +1,2 @@
1
+ import { type GeneratorCallback, type Tree } from '@nx/devkit';
2
+ export default function (tree: Tree): Promise<GeneratorCallback>;
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.default = default_1;
4
+ const devkit_1 = require("@nx/devkit");
5
+ const semver_1 = require("semver");
6
+ const version_utils_1 = require("../../utils/version-utils");
7
+ async function default_1(tree) {
8
+ const devDependencies = {};
9
+ const checkPackageAndMigrate = (pkgName) => {
10
+ const pkgVersion = (0, version_utils_1.getInstalledPackageVersion)(pkgName, tree);
11
+ if (!!pkgVersion && (0, semver_1.gte)(pkgVersion, '8.0.0') && (0, semver_1.lt)(pkgVersion, '8.13.0')) {
12
+ devDependencies[pkgName] = '^8.13.0';
13
+ }
14
+ };
15
+ checkPackageAndMigrate('typescript-eslint');
16
+ checkPackageAndMigrate('@typescript-eslint/eslint-plugin');
17
+ checkPackageAndMigrate('@typescript-eslint/parser');
18
+ checkPackageAndMigrate('@typescript-eslint/utils');
19
+ if (Object.keys(devDependencies).length > 0) {
20
+ return (0, devkit_1.addDependenciesToPackageJson)(tree, {}, devDependencies);
21
+ }
22
+ return () => { };
23
+ }
@@ -1,2 +1,3 @@
1
1
  import { type Tree } from '@nx/devkit';
2
+ export declare function getInstalledPackageVersion(pkgName: string, tree?: Tree): string | null;
2
3
  export declare function getInstalledEslintVersion(tree?: Tree): string | null;
@@ -1,31 +1,35 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getInstalledPackageVersion = getInstalledPackageVersion;
3
4
  exports.getInstalledEslintVersion = getInstalledEslintVersion;
4
5
  const devkit_1 = require("@nx/devkit");
5
6
  const semver_1 = require("@nx/devkit/src/utils/semver");
6
7
  const devkit_internals_1 = require("nx/src/devkit-internals");
7
- function getInstalledEslintVersion(tree) {
8
+ function getInstalledPackageVersion(pkgName, tree) {
8
9
  try {
9
- const eslintPackageJson = (0, devkit_internals_1.readModulePackageJson)('eslint').packageJson;
10
- return eslintPackageJson.version;
10
+ const packageJson = (0, devkit_internals_1.readModulePackageJson)(pkgName).packageJson;
11
+ return packageJson.version;
11
12
  }
12
13
  catch { }
13
- // eslint is not installed on disk, it could be in the package.json
14
+ // the package is not installed on disk, it could be in the package.json
14
15
  // but waiting to be installed
15
16
  const rootPackageJson = tree
16
17
  ? (0, devkit_1.readJson)(tree, 'package.json')
17
18
  : (0, devkit_1.readJsonFile)('package.json');
18
- const eslintVersionInRootPackageJson = rootPackageJson.devDependencies?.['eslint'] ??
19
- rootPackageJson.dependencies?.['eslint'];
20
- if (!eslintVersionInRootPackageJson) {
21
- // eslint is not installed
19
+ const pkgVersionInRootPackageJson = rootPackageJson.devDependencies?.[pkgName] ??
20
+ rootPackageJson.dependencies?.[pkgName];
21
+ if (!pkgVersionInRootPackageJson) {
22
+ // the package is not installed
22
23
  return null;
23
24
  }
24
25
  try {
25
26
  // try to parse and return the version
26
- return (0, semver_1.checkAndCleanWithSemver)('eslint', eslintVersionInRootPackageJson);
27
+ return (0, semver_1.checkAndCleanWithSemver)(pkgName, pkgVersionInRootPackageJson);
27
28
  }
28
29
  catch { }
29
30
  // we could not resolve the version
30
31
  return null;
31
32
  }
33
+ function getInstalledEslintVersion(tree) {
34
+ return getInstalledPackageVersion('eslint', tree);
35
+ }
@@ -3,6 +3,6 @@ export declare const eslintVersion = "~8.57.0";
3
3
  export declare const eslintrcVersion = "^2.1.1";
4
4
  export declare const eslintConfigPrettierVersion = "^9.0.0";
5
5
  export declare const typescriptESLintVersion = "^7.16.0";
6
- export declare const eslint9__typescriptESLintVersion = "^8.0.0";
6
+ export declare const eslint9__typescriptESLintVersion = "^8.13.0";
7
7
  export declare const eslint9__eslintVersion = "^9.8.0";
8
8
  export declare const eslintCompat = "^1.1.1";
@@ -7,6 +7,6 @@ exports.eslintrcVersion = '^2.1.1';
7
7
  exports.eslintConfigPrettierVersion = '^9.0.0';
8
8
  exports.typescriptESLintVersion = '^7.16.0';
9
9
  // Updated linting stack for ESLint v9, typescript-eslint v8
10
- exports.eslint9__typescriptESLintVersion = '^8.0.0';
10
+ exports.eslint9__typescriptESLintVersion = '^8.13.0';
11
11
  exports.eslint9__eslintVersion = '^9.8.0';
12
12
  exports.eslintCompat = '^1.1.1';