Skip to content

Commit aec53a0

Browse files
authored
feat(misc): remove handling of @nrwl scope (#28589)
This PR removes logic where we handle both `@nx/` and `@nrwl/` scope. The latter scope has stopped being published in v20, and are no longer relevant. - Cleans up e2e - Removes references to `@nrwl/` scope in our generators and executors - Removes `@nrwl/` from `nx/package.json` `packageGroup` - Cleans up documentation quality script
1 parent fb9c5ed commit aec53a0

File tree

12 files changed

+23
-94
lines changed

12 files changed

+23
-94
lines changed

e2e/node/src/node.test.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -359,7 +359,7 @@ module.exports = {
359359
const esmapp = uniq('esmapp');
360360

361361
runCLI(
362-
`generate @nrwl/node:app ${esmapp} --linter=eslint --framework=none --bundler=webpack`
362+
`generate @nx/node:app ${esmapp} --linter=eslint --framework=none --bundler=webpack`
363363
);
364364
updateJson(`apps/${esmapp}/tsconfig.app.json`, (config) => {
365365
config.module = 'esnext';

e2e/react/src/cypress-component-tests.test.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -298,7 +298,7 @@ ${content}`;
298298
it.skip('should CT vite projects importing other projects', () => {
299299
const viteLibName = uniq('vite-lib');
300300
runCLI(
301-
`generate @nrwl/react:lib ${viteLibName} --bundler=vite --no-interactive`
301+
`generate @nx/react:lib ${viteLibName} --bundler=vite --no-interactive`
302302
);
303303

304304
updateFile(`libs/${viteLibName}/src/lib/${viteLibName}.tsx`, () => {
@@ -316,7 +316,7 @@ export default MyComponent;`;
316316
});
317317

318318
runCLI(
319-
`generate @nrwl/react:cypress-component-configuration --project=${viteLibName} --generate-tests --bundler=vite --build-target=${appName}:build`
319+
`generate @nx/react:cypress-component-configuration --project=${viteLibName} --generate-tests --bundler=vite --build-target=${appName}:build`
320320
);
321321
if (runE2ETests()) {
322322
expect(runCLI(`component-test ${viteLibName}`)).toContain(

packages/eslint/src/generators/init/init-migration.ts

Lines changed: 3 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -123,8 +123,7 @@ export function findLintTarget(
123123
return Object.values(project.targets ?? {}).find(
124124
(target) =>
125125
target.executor === '@nx/eslint:lint' ||
126-
target.executor === '@nx/linter:eslint' ||
127-
target.executor === '@nrwl/linter:eslint'
126+
target.executor === '@nx/linter:eslint'
128127
);
129128
}
130129

@@ -150,8 +149,6 @@ function migrateEslintFile(projectEslintPath: string, tree: Tree) {
150149
config = removeCompatExtends(config, [
151150
'plugin:@nx/typescript',
152151
'plugin:@nx/javascript',
153-
'plugin:@nrwl/typescript',
154-
'plugin:@nrwl/javascript',
155152
]);
156153
config = removePredefinedConfigs(config, '@nx/eslint-plugin', 'nx', [
157154
'flat/base',
@@ -165,9 +162,7 @@ function migrateEslintFile(projectEslintPath: string, tree: Tree) {
165162
delete json.root;
166163
// remove nrwl/nx plugins
167164
if (json.plugins) {
168-
json.plugins = json.plugins.filter(
169-
(p) => p !== '@nx' && p !== '@nrwl/nx'
170-
);
165+
json.plugins = json.plugins.filter((p) => p !== '@nx');
171166
if (json.plugins.length === 0) {
172167
delete json.plugins;
173168
}
@@ -193,9 +188,7 @@ function migrateEslintFile(projectEslintPath: string, tree: Tree) {
193188
override.extends = override.extends.filter(
194189
(ext) =>
195190
ext !== 'plugin:@nx/typescript' &&
196-
ext !== 'plugin:@nrwl/nx/typescript' &&
197-
ext !== 'plugin:@nx/javascript' &&
198-
ext !== 'plugin:@nrwl/nx/javascript'
191+
ext !== 'plugin:@nx/javascript'
199192
);
200193
if (override.extends.length === 0) {
201194
delete override.extends;

packages/eslint/src/generators/lint-project/lint-project.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -329,7 +329,7 @@ function isMigrationToMonorepoNeeded(tree: Tree, graph: ProjectGraph): boolean {
329329

330330
for (const targetConfig of Object.values(rootProject.data.targets ?? {})) {
331331
if (
332-
['@nx/eslint:lint', '@nrwl/linter:eslint', '@nx/linter:eslint'].includes(
332+
['@nx/eslint:lint', '@nx/linter:eslint'].includes(
333333
targetConfig.executor
334334
) ||
335335
(targetConfig.executor === 'nx:run-commands' &&

packages/eslint/src/generators/utils/flat-config/ast-utils.spec.ts

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -959,7 +959,7 @@ module.exports = [
959959
rules: {}
960960
})),
961961
{ ignores: ["src/ignore/to/keep.ts"] },
962-
...compat.config({ extends: ["plugin:@nrwl/javascript"] }).map(config => ({
962+
...compat.config({ extends: ["plugin:@nx/javascript"] }).map(config => ({
963963
files: ['*.js', '*.jsx'],
964964
...config,
965965
rules: {}
@@ -969,8 +969,6 @@ module.exports = [
969969
const result = removeCompatExtends(content, [
970970
'plugin:@nx/typescript',
971971
'plugin:@nx/javascript',
972-
'plugin:@nrwl/typescript',
973-
'plugin:@nrwl/javascript',
974972
]);
975973
expect(result).toMatchInlineSnapshot(`
976974
"const { FlatCompat } = require("@eslint/eslintrc");

packages/js/src/executors/node/node.impl.ts

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -59,10 +59,7 @@ export async function* nodeExecutor(
5959
const buildTargetExecutor =
6060
project.data.targets[buildTarget.target]?.executor;
6161

62-
if (
63-
buildTargetExecutor === 'nx:run-commands' ||
64-
buildTargetExecutor === '@nrwl/workspace:run-commands'
65-
) {
62+
if (buildTargetExecutor === 'nx:run-commands') {
6663
// Run commands does not emit build event, so we have to switch to run entire build through Nx CLI.
6764
options.runBuildTargetDependencies = true;
6865
}

packages/js/src/generators/convert-to-swc/convert-to-swc.ts

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -51,11 +51,7 @@ function updateProjectBuildTargets(
5151
let updated = false;
5252
for (const target of projectTargets) {
5353
const targetConfiguration = projectConfiguration.targets?.[target];
54-
if (
55-
!targetConfiguration ||
56-
(targetConfiguration.executor !== '@nx/js:tsc' &&
57-
targetConfiguration.executor !== '@nrwl/js:tsc')
58-
)
54+
if (!targetConfiguration || targetConfiguration.executor !== '@nx/js:tsc')
5955
continue;
6056
targetConfiguration.executor = '@nx/js:swc';
6157
updated = true;

packages/nx/package.json

Lines changed: 0 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -98,61 +98,35 @@
9898
"migrations": "./migrations.json",
9999
"packageGroup": [
100100
"@nx/js",
101-
"@nrwl/js",
102101
"@nx/jest",
103-
"@nrwl/jest",
104102
"@nx/linter",
105103
"@nx/eslint",
106-
"@nrwl/linter",
107104
"@nx/workspace",
108-
"@nrwl/workspace",
109105
"@nx/angular",
110-
"@nrwl/angular",
111106
"@nx/cypress",
112-
"@nrwl/cypress",
113107
"@nx/detox",
114-
"@nrwl/detox",
115108
"@nx/devkit",
116-
"@nrwl/devkit",
117109
"@nx/esbuild",
118-
"@nrwl/esbuild",
119110
"@nx/eslint-plugin",
120-
"@nrwl/eslint-plugin-nx",
121111
"@nx/expo",
122-
"@nrwl/expo",
123112
"@nx/express",
124-
"@nrwl/express",
125113
"@nx/gradle",
126114
"@nx/nest",
127-
"@nrwl/nest",
128115
"@nx/next",
129-
"@nrwl/next",
130116
"@nx/node",
131-
"@nrwl/node",
132117
"@nx/nuxt",
133118
"@nx/playwright",
134119
"@nx/plugin",
135-
"@nrwl/nx-plugin",
136120
"@nx/react",
137-
"@nrwl/react",
138121
"@nx/react-native",
139-
"@nrwl/react-native",
140122
"@nx/rollup",
141-
"@nrwl/rollup",
142123
"@nx/remix",
143-
"@nrwl/remix",
144124
"@nx/rspack",
145-
"@nrwl/rspack",
146125
"@nx/storybook",
147-
"@nrwl/storybook",
148-
"@nrwl/tao",
149126
"@nx/vite",
150-
"@nrwl/vite",
151127
"@nx/vue",
152128
"@nx/web",
153-
"@nrwl/web",
154129
"@nx/webpack",
155-
"@nrwl/webpack",
156130
{
157131
"package": "nx-cloud",
158132
"version": "latest"

packages/nx/src/adapter/angular-json.ts

Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ export function shouldMergeAngularProjects(
2727
// Include projects from angular.json if explicitly required.
2828
// e.g. when invoked from `packages/devkit/src/utils/convert-nx-executor.ts`
2929
(includeProjectsFromAngularJson ||
30-
// Or if a workspace has `@nrwl/angular`/`@nx/angular` installed then projects from `angular.json` to be considered by Nx.
30+
// Or if a workspace has `@nx/angular` installed then projects from `angular.json` to be considered by Nx.
3131
isAngularPluginInstalled())
3232
) {
3333
return true;
@@ -42,12 +42,7 @@ export function isAngularPluginInstalled() {
4242
require.resolve('@nx/angular');
4343
return true;
4444
} catch {
45-
try {
46-
require.resolve('@nrwl/angular');
47-
return true;
48-
} catch {
49-
return false;
50-
}
45+
return false;
5146
}
5247
}
5348

packages/nx/src/plugins/js/utils/config.ts

Lines changed: 2 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,7 @@ import { existsSync } from 'fs';
1212
export function jsPluginConfig(
1313
nxJson: NxJsonConfiguration
1414
): Required<NrwlJsPluginConfig> {
15-
const nxJsonConfig: NrwlJsPluginConfig =
16-
nxJson?.pluginsConfig?.['@nx/js'] ?? nxJson?.pluginsConfig?.['@nrwl/js'];
15+
const nxJsonConfig: NrwlJsPluginConfig = nxJson?.pluginsConfig?.['@nx/js'];
1716

1817
// using lerna _before_ installing deps is causing an issue when parsing lockfile.
1918
// See: https://github.com/lerna/lerna/issues/3807
@@ -58,14 +57,7 @@ export function jsPluginConfig(
5857
packageJsonDeps['@nx/next'] ||
5958
packageJsonDeps['@nx/react'] ||
6059
packageJsonDeps['@nx/angular'] ||
61-
packageJsonDeps['@nx/web'] ||
62-
packageJsonDeps['@nrwl/workspace'] ||
63-
packageJsonDeps['@nrwl/js'] ||
64-
packageJsonDeps['@nrwl/node'] ||
65-
packageJsonDeps['@nrwl/next'] ||
66-
packageJsonDeps['@nrwl/react'] ||
67-
packageJsonDeps['@nrwl/angular'] ||
68-
packageJsonDeps['@nrwl/web']
60+
packageJsonDeps['@nx/web']
6961
) {
7062
return {
7163
analyzePackageJson: true,

packages/nx/src/utils/print-help.ts

Lines changed: 3 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -173,9 +173,7 @@ function generateExecutorOverviewOutput({
173173
{
174174
text:
175175
`${pluginName}:${name}` +
176-
(pluginName.startsWith('@nrwl/')
177-
? chalk.dim(` (v${nxVersion})`)
178-
: ''),
176+
(pluginName.startsWith('@nx/') ? chalk.dim(` (v${nxVersion})`) : ''),
179177
padding: [1, 0, 0, 0],
180178
},
181179
]
@@ -335,18 +333,12 @@ function generateLinkOutput({
335333
type: 'generators' | 'executors';
336334
}): string {
337335
const nxPackagePrefix = '@nx/';
338-
const nrwlPackagePrefix = '@nrwl/';
339-
if (
340-
!pluginName.startsWith(nxPackagePrefix) &&
341-
!pluginName.startsWith(nrwlPackagePrefix)
342-
) {
336+
if (!pluginName.startsWith(nxPackagePrefix)) {
343337
return '';
344338
}
345339

346340
const link = `https://nx.dev/nx-api/${pluginName.substring(
347-
pluginName.startsWith(nxPackagePrefix)
348-
? nxPackagePrefix.length
349-
: nrwlPackagePrefix.length
341+
nxPackagePrefix.length
350342
)}/${type}/${name}`;
351343

352344
return `\n\n${chalk.dim(

scripts/documentation/plugin-quality-indicators.ts

Lines changed: 6 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -201,46 +201,38 @@ async function getGithubStars(repos: { owner: string; repo: string }[]) {
201201

202202
async function getNxVersion(data: any) {
203203
const latest = data['dist-tags'].latest;
204-
const nxPackages = [
205-
'@nx/devkit',
206-
'@nrwl/devkit',
207-
'@nx/workspace',
208-
'@nrwl/workspace',
209-
];
204+
const nxPackages = ['@nx/devkit', '@nx/workspace'];
210205
let devkitVersion = '';
211206
for (let i = 0; i < nxPackages.length && !devkitVersion; i++) {
212207
const packageName = nxPackages[i];
213208
if (data.versions[latest]?.dependencies) {
214209
devkitVersion = data.versions[latest]?.dependencies[packageName];
215210
if (devkitVersion) {
216-
return await findNxRange(packageName, devkitVersion);
211+
return await findNxRange(devkitVersion);
217212
}
218213
}
219214
if (!devkitVersion && data.versions[latest]?.peerDependencies) {
220215
devkitVersion = data.versions[latest]?.peerDependencies[packageName];
221216
if (devkitVersion) {
222-
return await findNxRange(packageName, devkitVersion);
217+
return await findNxRange(devkitVersion);
223218
}
224219
}
225220
}
226221
console.warn('- No dependency on @nx/devkit!');
227222
return devkitVersion;
228223
}
229224

230-
async function findNxRange(packageName: string, devkitVersion: string) {
225+
async function findNxRange(devkitVersion: string) {
231226
devkitVersion = devkitVersion
232227
.replace('^', '')
233228
.replace('>=', '')
234229
.replace('>', '');
235-
const lookupPackage = packageName.includes('@nx')
236-
? '@nx/devkit'
237-
: '@nrwl/devkit';
238230
const { data: devkitData } = await axios.get(
239-
`https://registry.npmjs.org/${lookupPackage}`
231+
`https://registry.npmjs.org/@nx/devkit`
240232
);
241233
if (!devkitData.versions[devkitVersion]?.peerDependencies) {
242234
const dependencies = devkitData.versions[devkitVersion]?.dependencies;
243-
return dependencies && (dependencies?.nx || dependencies['@nrwl/tao']);
235+
return dependencies?.nx;
244236
}
245237
return devkitData.versions[devkitVersion]?.peerDependencies.nx;
246238
}

0 commit comments

Comments
 (0)