@nx/js 23.3.0 → 24.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/README.md CHANGED
@@ -1,7 +1,7 @@
1
- <p style="text-align: center;">
1
+ <p align="center">
2
2
  <picture>
3
- <source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/nrwl/nx/master/images/nx-dark.svg">
4
- <img alt="Nx - Smart Monorepos · Fast Builds" src="https://raw.githubusercontent.com/nrwl/nx/master/images/nx-light.svg" width="100%">
3
+ <source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/nrwl/nx/master/images/nx-logo-light.svg">
4
+ <img alt="Nx Logo" src="https://raw.githubusercontent.com/nrwl/nx/master/images/nx-logo.svg" width="140">
5
5
  </picture>
6
6
  </p>
7
7
 
@@ -62,6 +62,3 @@ npx nx@latest init
62
62
  - [Official Nx YouTube Channel](https://www.youtube.com/@NxDevtools)
63
63
  - [Blog Posts About Nx](https://nx.dev/blog)
64
64
 
65
- <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"
66
- width="100%" alt="Nx - Smart Monorepos · Fast Builds"></a></p>
67
-
@@ -28,7 +28,7 @@ function processTasksAndPopulateTsConfigTaskInfoMap(tsConfigTaskInfoMap, tasksOp
28
28
  tsConfigTaskInfoMap[tsConfigPath] = taskInfo;
29
29
  taskTsConfigCache.add(taskName);
30
30
  }
31
- processTasksAndPopulateTsConfigTaskInfoMap(tsConfigTaskInfoMap, tasksOptions, context, context.taskGraph.dependencies[taskName], taskInMemoryTsConfigMap);
31
+ processTasksAndPopulateTsConfigTaskInfoMap(tsConfigTaskInfoMap, tasksOptions, context, context.taskGraph.dependencies[taskName].map((edge) => edge.id), taskInMemoryTsConfigMap);
32
32
  }
33
33
  }
34
34
  function createTaskInfo(taskName, taskOptions, context, tsConfig) {
@@ -48,7 +48,9 @@ function generateTaskProjectTsConfig(task, tasksOptions, context, taskInMemoryTs
48
48
  }
49
49
  function getDependencyTasksInOtherProjects(task, project, context) {
50
50
  const implicitDependencies = new Set(context.projectGraph.nodes[project].data.implicitDependencies ?? []);
51
- return context.taskGraph.dependencies[task].filter((t) => {
51
+ return context.taskGraph.dependencies[task]
52
+ .map((edge) => edge.id)
53
+ .filter((t) => {
52
54
  const { project: dependencyProject } = (0, devkit_1.parseTargetString)(t, context);
53
55
  // Tasks for implicit dependencies are skipped since incremental builds only apply to explicit dependencies
54
56
  return (t !== task &&
@@ -108,7 +108,10 @@ async function initGeneratorInternal(tree, schema) {
108
108
  // both.
109
109
  const formatterSetup = (0, formatter_setup_1.getFormatterSetup)(schema.formatter);
110
110
  if (formatterSetup) {
111
- tasks.push(formatterSetup.setUp(tree, { skipPackageJson: schema.skipPackageJson }));
111
+ tasks.push(formatterSetup.setUp(tree, {
112
+ skipPackageJson: schema.skipPackageJson,
113
+ keepExistingVersions: schema.keepExistingVersions,
114
+ }));
112
115
  }
113
116
  const rootTsConfigFileName = (0, ts_config_1.getRootTsConfigFileName)(tree);
114
117
  // If the root tsconfig file uses `importHelpers` then we must install tslib
@@ -1,4 +1,4 @@
1
- import { type CreateDependencies, type CreateNodes } from '@nx/devkit';
1
+ import { type CreateNodes } from '@nx/devkit';
2
2
  export interface TscPluginOptions {
3
3
  compiler?: 'tsc' | 'tsgo';
4
4
  typecheck?: boolean | {
@@ -14,10 +14,6 @@ export interface TscPluginOptions {
14
14
  };
15
15
  verboseOutput?: boolean;
16
16
  }
17
- /**
18
- * @deprecated The 'createDependencies' function is now a no-op. This functionality is included in 'createNodesV2'.
19
- */
20
- export declare const createDependencies: CreateDependencies;
21
17
  export declare const PLUGIN_NAME = "@nx/js/typescript";
22
18
  export declare const createNodesV2: CreateNodes<TscPluginOptions>;
23
19
  export declare const createNodes: CreateNodes<TscPluginOptions>;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.createNodes = exports.createNodesV2 = exports.PLUGIN_NAME = exports.createDependencies = void 0;
3
+ exports.createNodes = exports.createNodesV2 = exports.PLUGIN_NAME = void 0;
4
4
  const internal_1 = require("@nx/devkit/internal");
5
5
  const devkit_1 = require("@nx/devkit");
6
6
  const node_fs_1 = require("node:fs");
@@ -100,13 +100,6 @@ function getConfigContext(configPath, workspaceRoot, cache) {
100
100
  cache.configContexts.set(absolutePath, newContext);
101
101
  return newContext;
102
102
  }
103
- /**
104
- * @deprecated The 'createDependencies' function is now a no-op. This functionality is included in 'createNodesV2'.
105
- */
106
- const createDependencies = () => {
107
- return [];
108
- };
109
- exports.createDependencies = createDependencies;
110
103
  exports.PLUGIN_NAME = '@nx/js/typescript';
111
104
  const tsConfigGlob = '**/tsconfig*.json';
112
105
  exports.createNodesV2 = [
@@ -206,7 +206,7 @@ function collectNpmDependencies(projectName, projectGraph, dependentTasks, colle
206
206
  return dependencies;
207
207
  }
208
208
  function collectDependentTasks(project, task, taskGraph, projectGraph, shallow, areTopLevelDeps = true, dependentTasks = new Map()) {
209
- for (const depTask of taskGraph.dependencies[task] ?? []) {
209
+ for (const { id: depTask } of taskGraph.dependencies[task] ?? []) {
210
210
  if (dependentTasks.has(depTask)) {
211
211
  if (!dependentTasks.get(depTask).isTopLevel && areTopLevelDeps) {
212
212
  dependentTasks.get(depTask).isTopLevel = true;
@@ -2,6 +2,7 @@ import type { GeneratorCallback, Tree } from '@nx/devkit';
2
2
  type FormatterSetup = {
3
3
  setUp: (tree: Tree, options: {
4
4
  skipPackageJson?: boolean;
5
+ keepExistingVersions?: boolean;
5
6
  }) => GeneratorCallback;
6
7
  version: string;
7
8
  };
@@ -22,5 +23,6 @@ export declare function getFormatterSetup(formatter: string | undefined): Format
22
23
  */
23
24
  export declare function setUpFormatter(tree: Tree, formatter: string | undefined, options?: {
24
25
  skipPackageJson?: boolean;
26
+ keepExistingVersions?: boolean;
25
27
  }): GeneratorCallback;
26
28
  export {};
@@ -1,4 +1,5 @@
1
1
  import { type GeneratorCallback, type Tree } from '@nx/devkit';
2
2
  export declare function generateOxfmtSetup(tree: Tree, options: {
3
3
  skipPackageJson?: boolean;
4
+ keepExistingVersions?: boolean;
4
5
  }): GeneratorCallback;
@@ -31,5 +31,5 @@ function generateOxfmtSetup(tree, options) {
31
31
  }
32
32
  return options.skipPackageJson
33
33
  ? () => { }
34
- : (0, devkit_1.addDependenciesToPackageJson)(tree, {}, { oxfmt: versions_1.oxfmtVersion });
34
+ : (0, devkit_1.addDependenciesToPackageJson)(tree, {}, { oxfmt: versions_1.oxfmtVersion }, undefined, options.keepExistingVersions ?? true);
35
35
  }
@@ -7,5 +7,6 @@ export interface ExistingPrettierConfig {
7
7
  export declare function resolveUserExistingPrettierConfig(): Promise<ExistingPrettierConfig | null>;
8
8
  export declare function generatePrettierSetup(tree: Tree, options: {
9
9
  skipPackageJson?: boolean;
10
+ keepExistingVersions?: boolean;
10
11
  }): GeneratorCallback;
11
12
  export declare function resolvePrettierConfigPath(tree: Tree): Promise<string | null>;
@@ -74,7 +74,7 @@ function generatePrettierSetup(tree, options) {
74
74
  }
75
75
  return options.skipPackageJson
76
76
  ? () => { }
77
- : (0, devkit_1.addDependenciesToPackageJson)(tree, {}, { prettier: versions_1.prettierVersion });
77
+ : (0, devkit_1.addDependenciesToPackageJson)(tree, {}, { prettier: versions_1.prettierVersion }, undefined, options.keepExistingVersions ?? true);
78
78
  }
79
79
  async function resolvePrettierConfigPath(tree) {
80
80
  (0, nx_formatter_internals_1.assertNxSupportsFormatters)();
@@ -1,6 +1,6 @@
1
1
  export declare const nxVersion: any;
2
2
  export declare const esbuildVersion = "^0.27.0";
3
- export declare const oxfmtVersion = "^0.60.0";
3
+ export declare const oxfmtVersion = "^0.72.0";
4
4
  export declare const prettierVersion = "~3.6.2";
5
5
  export declare const swcCliVersion = "~0.8.1";
6
6
  export declare const swcCoreVersion = "~1.15.5";
@@ -4,7 +4,7 @@ exports.minSupportedTypescriptVersion = exports.typescriptVersion = exports.verd
4
4
  const path_1 = require("path");
5
5
  exports.nxVersion = require((0, path_1.join)('@nx/js', 'package.json')).version;
6
6
  exports.esbuildVersion = '^0.27.0';
7
- exports.oxfmtVersion = '^0.60.0';
7
+ exports.oxfmtVersion = '^0.72.0';
8
8
  exports.prettierVersion = '~3.6.2';
9
9
  exports.swcCliVersion = '~0.8.1';
10
10
  exports.swcCoreVersion = '~1.15.5';
@@ -1 +1 @@
1
- export { createDependencies, createNodes, createNodesV2, } from './src/plugins/typescript/plugin';
1
+ export { createNodes, createNodesV2 } from './src/plugins/typescript/plugin';
@@ -1,7 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.createNodesV2 = exports.createNodes = exports.createDependencies = void 0;
3
+ exports.createNodesV2 = exports.createNodes = void 0;
4
4
  var plugin_1 = require("./src/plugins/typescript/plugin");
5
- Object.defineProperty(exports, "createDependencies", { enumerable: true, get: function () { return plugin_1.createDependencies; } });
6
5
  Object.defineProperty(exports, "createNodes", { enumerable: true, get: function () { return plugin_1.createNodes; } });
7
6
  Object.defineProperty(exports, "createNodesV2", { enumerable: true, get: function () { return plugin_1.createNodesV2; } });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nx/js",
3
- "version": "23.3.0",
3
+ "version": "24.0.0-beta.1",
4
4
  "private": false,
5
5
  "type": "commonjs",
6
6
  "files": [
@@ -138,8 +138,8 @@
138
138
  "@babel/preset-env": "^7.23.2",
139
139
  "@babel/preset-typescript": "^7.22.5",
140
140
  "@babel/runtime": "^7.22.6",
141
- "@nx/devkit": "23.3.0",
142
- "@nx/workspace": "23.3.0",
141
+ "@nx/devkit": "24.0.0-beta.1",
142
+ "@nx/workspace": "24.0.0-beta.1",
143
143
  "@zkochan/js-yaml": "0.0.7",
144
144
  "babel-plugin-const-enum": "^1.0.1",
145
145
  "babel-plugin-macros": "^3.1.0",
@@ -159,14 +159,14 @@
159
159
  "tslib": "^2.3.0"
160
160
  },
161
161
  "devDependencies": {
162
- "@nx/esbuild": "23.3.0",
163
- "@nx/eslint": "23.3.0",
164
- "@nx/jest": "23.3.0",
165
- "@nx/oxlint": "23.3.0",
166
- "@nx/rollup": "23.3.0",
167
- "@nx/vite": "23.3.0",
168
- "@nx/vitest": "23.3.0",
169
- "nx": "23.3.0"
162
+ "@nx/esbuild": "24.0.0-beta.1",
163
+ "@nx/eslint": "24.0.0-beta.1",
164
+ "@nx/jest": "24.0.0-beta.1",
165
+ "@nx/oxlint": "24.0.0-beta.1",
166
+ "@nx/rollup": "24.0.0-beta.1",
167
+ "@nx/vite": "24.0.0-beta.1",
168
+ "@nx/vitest": "24.0.0-beta.1",
169
+ "nx": "24.0.0-beta.1"
170
170
  },
171
171
  "peerDependencies": {
172
172
  "@swc/cli": ">=0.6.0 <0.9.0",
@@ -1,7 +1,7 @@
1
- <p style="text-align: center;">
1
+ <p align="center">
2
2
  <picture>
3
- <source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/nrwl/nx/master/images/nx-dark.svg">
4
- <img alt="Nx - Smart Monorepos · Fast Builds" src="https://raw.githubusercontent.com/nrwl/nx/master/images/nx-light.svg" width="100%">
3
+ <source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/nrwl/nx/master/images/nx-logo-light.svg">
4
+ <img alt="Nx Logo" src="https://raw.githubusercontent.com/nrwl/nx/master/images/nx-logo.svg" width="140">
5
5
  </picture>
6
6
  </p>
7
7