nx 22.2.4 → 22.3.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.
@@ -1,185 +1,185 @@
1
1
  {
2
- "$schema": "http://json-schema.org/draft-07/schema",
3
- "$id": "https://nx.dev",
4
- "title": "JSON schema for Nx workspaces",
5
- "type": "object",
6
- "properties": {
7
- "version": {
8
- "type": "number",
9
- "enum": [1, 2]
10
- }
11
- },
12
- "allOf": [
13
- {
14
- "if": {
15
- "properties": { "version": { "const": 2 } },
16
- "required": ["version"]
17
- },
18
- "then": {
19
- "properties": {
20
- "projects": {
2
+ "$schema": "http://json-schema.org/draft-07/schema",
3
+ "$id": "https://nx.dev",
4
+ "title": "JSON schema for Nx workspaces",
5
+ "type": "object",
6
+ "properties": {
7
+ "version": {
8
+ "type": "number",
9
+ "enum": [1, 2]
10
+ }
11
+ },
12
+ "allOf": [
13
+ {
14
+ "if": {
15
+ "properties": { "version": { "const": 2 } },
16
+ "required": ["version"]
17
+ },
18
+ "then": {
19
+ "properties": {
20
+ "projects": {
21
+ "type": "object",
22
+ "additionalProperties": {
23
+ "oneOf": [
24
+ {
25
+ "type": "string"
26
+ },
27
+ {
28
+ "type": "object",
29
+ "properties": {
30
+ "targets": {
31
+ "type": "object",
32
+ "description": "Configures all the targets which define what tasks you can run against the project",
33
+ "additionalProperties": {
21
34
  "type": "object",
22
- "additionalProperties": {
23
- "oneOf": [
35
+ "properties": {
36
+ "executor": {
37
+ "description": "The function that Nx will invoke when you run this target",
38
+ "type": "string"
39
+ },
40
+ "options": {
41
+ "type": "object"
42
+ },
43
+ "outputs": {
44
+ "type": "array",
45
+ "items": {
46
+ "type": "string"
47
+ }
48
+ },
49
+ "configurations": {
50
+ "type": "object",
51
+ "description": "provides extra sets of values that will be merged into the options map",
52
+ "additionalProperties": {
53
+ "type": "object"
54
+ }
55
+ },
56
+ "dependsOn": {
57
+ "type": "array",
58
+ "description": "Target dependency.",
59
+ "items": {
60
+ "oneOf": [
24
61
  {
25
- "type": "string"
62
+ "type": "string"
26
63
  },
27
64
  {
28
- "type": "object",
29
- "properties": {
30
- "targets": {
31
- "type": "object",
32
- "description": "Configures all the targets which define what tasks you can run against the project",
33
- "additionalProperties": {
34
- "type": "object",
35
- "properties": {
36
- "executor": {
37
- "description": "The function that Nx will invoke when you run this target",
38
- "type": "string"
39
- },
40
- "options": {
41
- "type": "object"
42
- },
43
- "outputs": {
44
- "type": "array",
45
- "items": {
46
- "type": "string"
47
- }
48
- },
49
- "configurations": {
50
- "type": "object",
51
- "description": "provides extra sets of values that will be merged into the options map",
52
- "additionalProperties": {
53
- "type": "object"
54
- }
55
- },
56
- "dependsOn": {
57
- "type": "array",
58
- "description": "Target dependency.",
59
- "items": {
60
- "oneOf": [
61
- {
62
- "type": "string"
63
- },
64
- {
65
- "type": "object",
66
- "properties": {
67
- "projects": {
68
- "oneOf": [
69
- {
70
- "type": "string",
71
- "description": "A project name"
72
- },
73
- {
74
- "type": "array",
75
- "description": "An array of project names",
76
- "items": {
77
- "type": "string"
78
- }
79
- }
80
- ]
81
- },
82
- "dependencies": {
83
- "type": "boolean"
84
- },
85
- "target": {
86
- "type": "string",
87
- "description": "The name of the target."
88
- },
89
- "params": {
90
- "type": "string",
91
- "description": "Configuration for params handling.",
92
- "enum": ["ignore", "forward"],
93
- "default": "ignore"
94
- }
95
- },
96
- "oneOf": [
97
- {
98
- "required": ["projects", "target"]
99
- },
100
- {
101
- "required": ["dependencies", "target"]
102
- },
103
- {
104
- "required": ["target"],
105
- "not": {
106
- "anyOf": [
107
- { "required": ["projects"] },
108
- { "required": ["dependencies"] }
109
- ]
110
- }
111
- }
112
- ],
113
- "additionalProperties": false
114
- }
115
- ]
116
- }
117
- },
118
- "command": {
119
- "type": "string",
120
- "description": "A shorthand for using the nx:run-commands executor"
121
- },
122
- "cache": {
123
- "type": "boolean",
124
- "description": "Specifies if the given target should be cacheable"
125
- }
126
- }
127
- }
128
- },
129
- "tags": {
130
- "type": "array",
131
- "items": {
132
- "type": "string"
133
- }
65
+ "type": "object",
66
+ "properties": {
67
+ "projects": {
68
+ "oneOf": [
69
+ {
70
+ "type": "string",
71
+ "description": "A project name"
134
72
  },
135
- "implicitDependencies": {
136
- "type": "array",
137
- "items": {
138
- "type": "string"
139
- }
73
+ {
74
+ "type": "array",
75
+ "description": "An array of project names",
76
+ "items": {
77
+ "type": "string"
78
+ }
140
79
  }
80
+ ]
81
+ },
82
+ "dependencies": {
83
+ "type": "boolean"
84
+ },
85
+ "target": {
86
+ "type": "string",
87
+ "description": "The name of the target."
88
+ },
89
+ "params": {
90
+ "type": "string",
91
+ "description": "Configuration for params handling.",
92
+ "enum": ["ignore", "forward"],
93
+ "default": "ignore"
141
94
  }
95
+ },
96
+ "oneOf": [
97
+ {
98
+ "required": ["projects", "target"]
99
+ },
100
+ {
101
+ "required": ["dependencies", "target"]
102
+ },
103
+ {
104
+ "required": ["target"],
105
+ "not": {
106
+ "anyOf": [
107
+ { "required": ["projects"] },
108
+ { "required": ["dependencies"] }
109
+ ]
110
+ }
111
+ }
112
+ ],
113
+ "additionalProperties": false
142
114
  }
143
- ]
115
+ ]
116
+ }
117
+ },
118
+ "command": {
119
+ "type": "string",
120
+ "description": "A shorthand for using the nx:run-commands executor"
121
+ },
122
+ "cache": {
123
+ "type": "boolean",
124
+ "description": "Specifies if the given target should be cacheable"
125
+ }
144
126
  }
127
+ }
128
+ },
129
+ "tags": {
130
+ "type": "array",
131
+ "items": {
132
+ "type": "string"
133
+ }
134
+ },
135
+ "implicitDependencies": {
136
+ "type": "array",
137
+ "items": {
138
+ "type": "string"
139
+ }
145
140
  }
141
+ }
146
142
  }
147
- },
148
- "else": {
149
- "properties": {
150
- "projects": {
143
+ ]
144
+ }
145
+ }
146
+ }
147
+ },
148
+ "else": {
149
+ "properties": {
150
+ "projects": {
151
+ "type": "object",
152
+ "additionalProperties": {
153
+ "type": "object",
154
+ "properties": {
155
+ "architect": {
156
+ "type": "object",
157
+ "description": "Configures all the targets which define what tasks you can run against the project",
158
+ "additionalProperties": {
159
+ "type": "object",
160
+ "properties": {
161
+ "builder": {
162
+ "description": "The function that Nx will invoke when you run this architect",
163
+ "type": "string"
164
+ },
165
+ "options": {
166
+ "type": "object"
167
+ },
168
+ "configurations": {
151
169
  "type": "object",
170
+ "description": "provides extra sets of values that will be merged into the options map",
152
171
  "additionalProperties": {
153
- "type": "object",
154
- "properties": {
155
- "architect": {
156
- "type": "object",
157
- "description": "Configures all the targets which define what tasks you can run against the project",
158
- "additionalProperties": {
159
- "type": "object",
160
- "properties": {
161
- "builder": {
162
- "description": "The function that Nx will invoke when you run this architect",
163
- "type": "string"
164
- },
165
- "options": {
166
- "type": "object"
167
- },
168
- "configurations": {
169
- "type": "object",
170
- "description": "provides extra sets of values that will be merged into the options map",
171
- "additionalProperties": {
172
- "type": "object"
173
- }
174
- }
175
- }
176
- }
177
- }
178
- }
172
+ "type": "object"
179
173
  }
174
+ }
180
175
  }
176
+ }
181
177
  }
178
+ }
182
179
  }
180
+ }
183
181
  }
184
- ]
182
+ }
183
+ }
184
+ ]
185
185
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ngcli-adapter.d.ts","sourceRoot":"","sources":["../../../../../packages/nx/src/adapter/ngcli-adapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ngcli-adapter.d.ts","sourceRoot":"","sources":["../../../../../packages/nx/src/adapter/ngcli-adapter.ts"],"names":[],"mappings":"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"}
@@ -39,7 +39,14 @@ async function createBuilderContext(builderInfo, context) {
39
39
  const { workspace } = await workspaces.readWorkspace('angular.json', workspaces.createWorkspaceHost(fsHost));
40
40
  const architectHost = await getWrappedWorkspaceNodeModulesArchitectHost(workspace, context.root, context.projectsConfigurations.projects);
41
41
  const registry = new core_1.schema.CoreSchemaRegistry();
42
- registry.addPostTransform(core_1.schema.transforms.addUndefinedDefaults);
42
+ const isAngularBuild = builderInfo.builderName.startsWith('@angular/build:') ||
43
+ ['@nx/angular:application', '@nx/angular:unit-test'].includes(builderInfo.builderName);
44
+ if (isAngularBuild) {
45
+ registry.addPostTransform(core_1.schema.transforms.addUndefinedObjectDefaults);
46
+ }
47
+ else {
48
+ registry.addPostTransform(core_1.schema.transforms.addUndefinedDefaults);
49
+ }
43
50
  registry.addSmartDefaultProvider('unparsed', () => {
44
51
  // This happens when context.scheduleTarget is used to run a target using nx:run-commands
45
52
  return [];
@@ -118,13 +125,31 @@ async function scheduleTarget(root, opts, verbose) {
118
125
  const logger = (0, exports.getLogger)(verbose);
119
126
  const fsHost = new NxScopedHostForBuilders(root);
120
127
  const { workspace } = await core_1.workspaces.readWorkspace('angular.json', core_1.workspaces.createWorkspaceHost(fsHost));
128
+ const architectHost = await getWrappedWorkspaceNodeModulesArchitectHost(workspace, root, opts.projects);
129
+ const project = workspace.projects.get(opts.project);
130
+ if (!project) {
131
+ throw new Error(`Cannot find project '${opts.project}' in the workspace`);
132
+ }
133
+ if (!project.targets?.get(opts.target)) {
134
+ throw new Error(`Cannot find target '${opts.target}' for project '${opts.project}'`);
135
+ }
136
+ const builderName = project.targets.get(opts.target).builder;
137
+ if (!builderName) {
138
+ throw new Error(`Cannot find the builder for the target '${opts.target}' of project '${opts.project}'`);
139
+ }
140
+ const isAngularBuild = builderName.startsWith('@angular/build:') ||
141
+ ['@nx/angular:application', '@nx/angular:unit-test'].includes(builderName);
121
142
  const registry = new core_1.schema.CoreSchemaRegistry();
122
- registry.addPostTransform(core_1.schema.transforms.addUndefinedDefaults);
143
+ if (isAngularBuild) {
144
+ registry.addPostTransform(core_1.schema.transforms.addUndefinedObjectDefaults);
145
+ }
146
+ else {
147
+ registry.addPostTransform(core_1.schema.transforms.addUndefinedDefaults);
148
+ }
123
149
  registry.addSmartDefaultProvider('unparsed', () => {
124
150
  // This happens when context.scheduleTarget is used to run a target using nx:run-commands
125
151
  return [];
126
152
  });
127
- const architectHost = await getWrappedWorkspaceNodeModulesArchitectHost(workspace, root, opts.projects);
128
153
  const architect = new Architect(architectHost, registry);
129
154
  const run = await architect.scheduleTarget({
130
155
  project: opts.project,
@@ -1,34 +1,34 @@
1
1
  {
2
- "$schema": "https://json-schema.org/schema",
3
- "$id": "SetupAiAgents",
4
- "title": "Set Up AI Agents",
5
- "description": "Sets up the Nx MCP & rule files for common AI Agents.",
6
- "type": "object",
7
- "properties": {
8
- "directory": {
9
- "type": "string",
10
- "description": "Directory where the AI agent configuration files will be generated",
11
- "default": "."
12
- },
13
- "writeNxCloudRules": {
14
- "type": "boolean",
15
- "description": "Whether to write Nx Cloud rules",
16
- "default": false
17
- },
18
- "packageVersion": {
19
- "type": "string",
20
- "description": "The version of the package to use",
21
- "default": "latest"
22
- },
23
- "agents": {
24
- "type": "array",
25
- "description": "The agents to setup Nx configuration for.",
26
- "items": {
27
- "type": "string",
28
- "enum": ["claude", "gemini", "codex", "cursor", "copilot"]
29
- },
30
- "default": ["claude", "gemini", "codex", "cursor", "copilot"]
31
- }
2
+ "$schema": "https://json-schema.org/schema",
3
+ "$id": "SetupAiAgents",
4
+ "title": "Set Up AI Agents",
5
+ "description": "Sets up the Nx MCP & rule files for common AI Agents.",
6
+ "type": "object",
7
+ "properties": {
8
+ "directory": {
9
+ "type": "string",
10
+ "description": "Directory where the AI agent configuration files will be generated",
11
+ "default": "."
32
12
  },
33
- "required": ["directory"]
13
+ "writeNxCloudRules": {
14
+ "type": "boolean",
15
+ "description": "Whether to write Nx Cloud rules",
16
+ "default": false
17
+ },
18
+ "packageVersion": {
19
+ "type": "string",
20
+ "description": "The version of the package to use",
21
+ "default": "latest"
22
+ },
23
+ "agents": {
24
+ "type": "array",
25
+ "description": "The agents to setup Nx configuration for.",
26
+ "items": {
27
+ "type": "string",
28
+ "enum": ["claude", "gemini", "codex", "cursor", "copilot"]
29
+ },
30
+ "default": ["claude", "gemini", "codex", "cursor", "copilot"]
31
+ }
32
+ },
33
+ "required": ["directory"]
34
34
  }
@@ -1 +1 @@
1
- {"version":3,"file":"legacy-angular-versions.d.ts","sourceRoot":"","sources":["../../../../../../../../packages/nx/src/command-line/init/implementation/angular/legacy-angular-versions.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAkBvC,wBAAsB,sCAAsC,CAC1D,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,OAAO,GACf,OAAO,CAAC,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAqGrC"}
1
+ {"version":3,"file":"legacy-angular-versions.d.ts","sourceRoot":"","sources":["../../../../../../../../packages/nx/src/command-line/init/implementation/angular/legacy-angular-versions.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAmBvC,wBAAsB,sCAAsC,CAC1D,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,OAAO,GACf,OAAO,CAAC,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAqGrC"}
@@ -19,6 +19,7 @@ const nxAngularLegacyVersionMap = {
19
19
  15: '~19.0.0',
20
20
  16: '~20.1.0',
21
21
  17: '~21.1.0',
22
+ 18: '~22.2.0',
22
23
  };
23
24
  // min major angular version supported in latest Nx
24
25
  const minMajorAngularVersionSupported = Math.max(...Object.keys(nxAngularLegacyVersionMap).map(Number)) + 1;