@nx/dotnet 23.0.0-beta.22 → 23.0.0-beta.24

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
@@ -20,8 +20,6 @@
20
20
 
21
21
  <hr>
22
22
 
23
- > Note: The `@nx/dotnet` plugin is currently experimental. Features and APIs may change.
24
-
25
23
  # Nx: Smart Monorepos · Fast Builds
26
24
 
27
25
  Get to green PRs in half the time. Nx optimizes your builds, scales your CI, and fixes failed PRs. Built for developers and AI agents.
package/dist/index.d.ts CHANGED
@@ -1,3 +1,3 @@
1
- export * from './plugin';
1
+ export { createNodes, createNodesV2, createDependencies, } from './plugins/plugin';
2
2
  export { DotNetPluginOptions } from './plugins/create-nodes';
3
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AAEzB,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,EACX,aAAa,EACb,kBAAkB,GACnB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC"}
package/dist/index.js CHANGED
@@ -1,4 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- const tslib_1 = require("tslib");
4
- tslib_1.__exportStar(require("./plugin"), exports);
3
+ exports.createDependencies = exports.createNodesV2 = exports.createNodes = void 0;
4
+ var plugin_1 = require("./plugins/plugin");
5
+ Object.defineProperty(exports, "createNodes", { enumerable: true, get: function () { return plugin_1.createNodes; } });
6
+ Object.defineProperty(exports, "createNodesV2", { enumerable: true, get: function () { return plugin_1.createNodesV2; } });
7
+ Object.defineProperty(exports, "createDependencies", { enumerable: true, get: function () { return plugin_1.createDependencies; } });
Binary file
Binary file
@@ -0,0 +1,9 @@
1
+ import { Tree } from '@nx/devkit';
2
+ /**
3
+ * The `@nx/dotnet/plugin` subpath export has been removed in favor of the bare
4
+ * `@nx/dotnet` specifier. This migration rewrites any `nx.json` plugin entries
5
+ * that still register the plugin via the old `@nx/dotnet/plugin` path, updating
6
+ * each entry in place so the order of the `plugins` array is preserved.
7
+ */
8
+ export default function update(tree: Tree): void;
9
+ //# sourceMappingURL=update-plugin-path.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"update-plugin-path.d.ts","sourceRoot":"","sources":["../../../src/migrations/update-23-0-0/update-plugin-path.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,IAAI,EAAgB,MAAM,YAAY,CAAC;AAK5D;;;;;GAKG;AACH,MAAM,CAAC,OAAO,UAAU,MAAM,CAAC,IAAI,EAAE,IAAI,QAuBxC"}
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.default = update;
4
+ const devkit_1 = require("@nx/devkit");
5
+ const OLD_PATH = '@nx/dotnet/plugin';
6
+ const NEW_PATH = '@nx/dotnet';
7
+ /**
8
+ * The `@nx/dotnet/plugin` subpath export has been removed in favor of the bare
9
+ * `@nx/dotnet` specifier. This migration rewrites any `nx.json` plugin entries
10
+ * that still register the plugin via the old `@nx/dotnet/plugin` path, updating
11
+ * each entry in place so the order of the `plugins` array is preserved.
12
+ */
13
+ function update(tree) {
14
+ const nxJson = (0, devkit_1.readNxJson)(tree);
15
+ if (!nxJson?.plugins?.length) {
16
+ return;
17
+ }
18
+ let updated = false;
19
+ for (let i = 0; i < nxJson.plugins.length; i++) {
20
+ const plugin = nxJson.plugins[i];
21
+ if (typeof plugin === 'string') {
22
+ if (plugin === OLD_PATH) {
23
+ nxJson.plugins[i] = NEW_PATH;
24
+ updated = true;
25
+ }
26
+ }
27
+ else if (plugin.plugin === OLD_PATH) {
28
+ plugin.plugin = NEW_PATH;
29
+ updated = true;
30
+ }
31
+ }
32
+ if (updated) {
33
+ (0, devkit_1.updateNxJson)(tree, nxJson);
34
+ }
35
+ }
@@ -1,4 +1,4 @@
1
- import { CreateNodesV2, TargetConfiguration } from '@nx/devkit';
1
+ import { CreateNodes, TargetConfiguration } from '@nx/devkit';
2
2
  export type TargetConfigurationWithName = Partial<TargetConfiguration> & {
3
3
  /**
4
4
  * The name of the target. Defaults to the target type (e.g., 'build', 'test', etc.)
@@ -79,5 +79,9 @@ export interface DotNetPluginOptions {
79
79
  */
80
80
  run?: TargetConfigurationWithName | false;
81
81
  }
82
- export declare const createNodesV2: CreateNodesV2<DotNetPluginOptions>;
82
+ export declare const createNodes: CreateNodes<DotNetPluginOptions>;
83
+ /**
84
+ * @deprecated Use {@link createNodes} instead. This will be removed in Nx 24.
85
+ */
86
+ export declare const createNodesV2: CreateNodes<DotNetPluginOptions>;
83
87
  //# sourceMappingURL=create-nodes.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"create-nodes.d.ts","sourceRoot":"","sources":["../../src/plugins/create-nodes.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EAGb,mBAAmB,EACpB,MAAM,YAAY,CAAC;AAOpB,MAAM,MAAM,2BAA2B,GAAG,OAAO,CAAC,mBAAmB,CAAC,GAAG;IACvE;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,MAAM,WAAW,mBAAmB;IAClC;;;OAGG;IACH,KAAK,CAAC,EAAE,2BAA2B,GAAG,KAAK,CAAC;IAC5C;;;OAGG;IACH,IAAI,CAAC,EAAE,2BAA2B,GAAG,KAAK,CAAC;IAC3C;;;OAGG;IACH,KAAK,CAAC,EAAE,2BAA2B,GAAG,KAAK,CAAC;IAC5C;;;OAGG;IACH,OAAO,CAAC,EAAE,2BAA2B,GAAG,KAAK,CAAC;IAC9C;;;OAGG;IACH,OAAO,CAAC,EAAE,2BAA2B,GAAG,KAAK,CAAC;IAC9C;;;OAGG;IACH,IAAI,CAAC,EAAE,2BAA2B,GAAG,KAAK,CAAC;IAC3C;;;OAGG;IACH,KAAK,CAAC,EAAE,2BAA2B,GAAG,KAAK,CAAC;IAC5C;;;OAGG;IACH,GAAG,CAAC,EAAE,2BAA2B,GAAG,KAAK,CAAC;CAC3C;AAqFD,eAAO,MAAM,aAAa,EAAE,aAAa,CAAC,mBAAmB,CA6E5D,CAAC"}
1
+ {"version":3,"file":"create-nodes.d.ts","sourceRoot":"","sources":["../../src/plugins/create-nodes.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,EAGX,mBAAmB,EACpB,MAAM,YAAY,CAAC;AAOpB,MAAM,MAAM,2BAA2B,GAAG,OAAO,CAAC,mBAAmB,CAAC,GAAG;IACvE;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,MAAM,WAAW,mBAAmB;IAClC;;;OAGG;IACH,KAAK,CAAC,EAAE,2BAA2B,GAAG,KAAK,CAAC;IAC5C;;;OAGG;IACH,IAAI,CAAC,EAAE,2BAA2B,GAAG,KAAK,CAAC;IAC3C;;;OAGG;IACH,KAAK,CAAC,EAAE,2BAA2B,GAAG,KAAK,CAAC;IAC5C;;;OAGG;IACH,OAAO,CAAC,EAAE,2BAA2B,GAAG,KAAK,CAAC;IAC9C;;;OAGG;IACH,OAAO,CAAC,EAAE,2BAA2B,GAAG,KAAK,CAAC;IAC9C;;;OAGG;IACH,IAAI,CAAC,EAAE,2BAA2B,GAAG,KAAK,CAAC;IAC3C;;;OAGG;IACH,KAAK,CAAC,EAAE,2BAA2B,GAAG,KAAK,CAAC;IAC5C;;;OAGG;IACH,GAAG,CAAC,EAAE,2BAA2B,GAAG,KAAK,CAAC;CAC3C;AAqFD,eAAO,MAAM,WAAW,EAAE,WAAW,CAAC,mBAAmB,CA6ExD,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,aAAa,kCAAc,CAAC"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.createNodesV2 = void 0;
3
+ exports.createNodesV2 = exports.createNodes = void 0;
4
4
  const devkit_1 = require("@nx/devkit");
5
5
  const analyzer_client_1 = require("../analyzer/analyzer-client");
6
6
  const project_configuration_utils_1 = require("nx/src/project-graph/utils/project-configuration-utils");
@@ -65,7 +65,7 @@ function mergeUserTargetConfigurations(node, options) {
65
65
  targets: mergedTargets,
66
66
  };
67
67
  }
68
- exports.createNodesV2 = [
68
+ exports.createNodes = [
69
69
  dotnetProjectGlob,
70
70
  async (configFilePaths, options, context) => {
71
71
  // Analyze all projects - the C# analyzer builds the complete Nx structure
@@ -123,3 +123,7 @@ exports.createNodesV2 = [
123
123
  }
124
124
  },
125
125
  ];
126
+ /**
127
+ * @deprecated Use {@link createNodes} instead. This will be removed in Nx 24.
128
+ */
129
+ exports.createNodesV2 = exports.createNodes;
@@ -1,5 +1,5 @@
1
- import { type DotNetPluginOptions } from './create-nodes';
2
- import { NxPlugin } from '@nx/devkit';
3
- declare const plugin: NxPlugin<DotNetPluginOptions>;
4
- export = plugin;
1
+ export declare const name: string;
2
+ export declare const createNodes: import("@nx/devkit").CreateNodes<import("./create-nodes").DotNetPluginOptions>;
3
+ export declare const createNodesV2: import("@nx/devkit").CreateNodes<import("./create-nodes").DotNetPluginOptions>;
4
+ export declare const createDependencies: import("@nx/devkit").CreateDependencies<import("./create-nodes").DotNetPluginOptions>;
5
5
  //# sourceMappingURL=plugin.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../../src/plugins/plugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,KAAK,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAEzE,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAatC,QAAA,MAAM,MAAM,EAAE,QAAQ,CAAC,mBAAmB,CAC6B,CAAC;AAExE,SAAS,MAAM,CAAC"}
1
+ {"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../../src/plugins/plugin.ts"],"names":[],"mappings":"AAQA,eAAO,MAAM,IAAI,QAAoD,CAAC;AAEtE,eAAO,MAAM,WAAW,gFAA2C,CAAC;AAEpE,eAAO,MAAM,aAAa,gFAA2C,CAAC;AAEtE,eAAO,MAAM,kBAAkB,uFAEH,CAAC"}
@@ -1,14 +1,15 @@
1
1
  "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createDependencies = exports.createNodesV2 = exports.createNodes = exports.name = void 0;
2
4
  const create_nodes_1 = require("./create-nodes");
3
5
  const create_dependencies_1 = require("./create-dependencies");
4
- const regularPlugin = {
5
- name: '@nx/dotnet',
6
- createNodes: create_nodes_1.createNodesV2,
7
- createNodesV2: create_nodes_1.createNodesV2,
8
- createDependencies: create_dependencies_1.createDependencies,
9
- };
10
- const noopPlugin = {
11
- name: '@nx/dotnet [disabled]',
12
- };
13
- const plugin = process.env.NX_DOTNET_DISABLE === 'true' ? noopPlugin : regularPlugin;
14
- module.exports = plugin;
6
+ // The plugin can be fully disabled (e.g. to debug graph issues) via the
7
+ // NX_DOTNET_DISABLE environment variable. When disabled, no nodes or
8
+ // dependencies are created so Nx effectively ignores .NET projects.
9
+ const disabled = process.env.NX_DOTNET_DISABLE === 'true';
10
+ exports.name = disabled ? '@nx/dotnet [disabled]' : '@nx/dotnet';
11
+ exports.createNodes = disabled ? undefined : create_nodes_1.createNodes;
12
+ exports.createNodesV2 = disabled ? undefined : create_nodes_1.createNodes;
13
+ exports.createDependencies = disabled
14
+ ? undefined
15
+ : create_dependencies_1.createDependencies;
@@ -9,8 +9,6 @@
9
9
 
10
10
  <hr>
11
11
 
12
- > Note: The `@nx/dotnet` plugin is currently experimental. Features and APIs may change.
13
-
14
12
  # Nx: Smart Monorepos · Fast Builds
15
13
 
16
14
  Get to green PRs in half the time. Nx optimizes your builds, scales your CI, and fixes failed PRs. Built for developers and AI agents.
package/migrations.json CHANGED
@@ -1,4 +1,11 @@
1
1
  {
2
- "generators": {},
2
+ "generators": {
3
+ "update-23-0-0-migrate-dotnet-plugin-path": {
4
+ "cli": "nx",
5
+ "version": "23.0.0-beta.24",
6
+ "description": "Update `nx.json` plugin registrations that use the removed `@nx/dotnet/plugin` subpath to the bare `@nx/dotnet` specifier.",
7
+ "implementation": "./dist/migrations/update-23-0-0/update-plugin-path"
8
+ }
9
+ },
3
10
  "packageJsonUpdates": {}
4
11
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nx/dotnet",
3
- "version": "23.0.0-beta.22",
3
+ "version": "23.0.0-beta.24",
4
4
  "private": false,
5
5
  "description": "The Nx Plugin for .NET containing graph support for working with .NET projects in an Nx workspace.",
6
6
  "keywords": [
@@ -29,10 +29,6 @@
29
29
  "default": "./dist/index.js",
30
30
  "types": "./dist/index.d.ts"
31
31
  },
32
- "./plugin": {
33
- "default": "./dist/plugin.js",
34
- "types": "./dist/plugin.d.ts"
35
- },
36
32
  "./generators/*/schema.json": "./dist/generators/*/schema.json",
37
33
  "./generators/*/schema": "./dist/generators/*/schema.d.ts",
38
34
  "./generators.json": "./generators.json",
@@ -50,7 +46,7 @@
50
46
  "!dist/tsconfig.lib.tsbuildinfo"
51
47
  ],
52
48
  "dependencies": {
53
- "@nx/devkit": "23.0.0-beta.22",
49
+ "@nx/devkit": "23.0.0-beta.24",
54
50
  "tslib": "^2.3.0",
55
51
  "ignore": "^7.0.5"
56
52
  },
@@ -59,7 +55,7 @@
59
55
  "@types/node": "^24.11.0",
60
56
  "jest": "30.3.0",
61
57
  "memfs": "^4.9.2",
62
- "nx": "23.0.0-beta.22",
58
+ "nx": "23.0.0-beta.24",
63
59
  "ts-jest": "^29.4.0",
64
60
  "typescript": "~5.9.2"
65
61
  },
package/dist/plugin.d.ts DELETED
@@ -1,2 +0,0 @@
1
- export { createNodesV2, createNodes, createDependencies, } from './plugins/plugin';
2
- //# sourceMappingURL=plugin.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EACb,WAAW,EACX,kBAAkB,GACnB,MAAM,kBAAkB,CAAC"}
package/dist/plugin.js DELETED
@@ -1,7 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.createDependencies = exports.createNodes = exports.createNodesV2 = void 0;
4
- var plugin_1 = require("./plugins/plugin");
5
- Object.defineProperty(exports, "createNodesV2", { enumerable: true, get: function () { return plugin_1.createNodesV2; } });
6
- Object.defineProperty(exports, "createNodes", { enumerable: true, get: function () { return plugin_1.createNodes; } });
7
- Object.defineProperty(exports, "createDependencies", { enumerable: true, get: function () { return plugin_1.createDependencies; } });