From 9cbf9bf0afd653aa0dde7b176cb01533805637ac Mon Sep 17 00:00:00 2001 From: Jack Hsu Date: Fri, 4 Nov 2022 13:48:11 -0400 Subject: [PATCH] fix(js): patch migration from @nrwl/node:package to @nrwl/js:tsc to rename srcRootForCompilationRoot option to rootDir (#12999) --- .../update-package-to-tsc.spec.ts | 48 +++++++++++++++++++ .../update-13-8-5/update-package-to-tsc.ts | 12 +++++ 2 files changed, 60 insertions(+) diff --git a/packages/node/src/migrations/update-13-8-5/update-package-to-tsc.spec.ts b/packages/node/src/migrations/update-13-8-5/update-package-to-tsc.spec.ts index 663bf7239545c..a940a073f0b8c 100644 --- a/packages/node/src/migrations/update-13-8-5/update-package-to-tsc.spec.ts +++ b/packages/node/src/migrations/update-13-8-5/update-package-to-tsc.spec.ts @@ -67,4 +67,52 @@ describe('Migration: rename package to tsc', () => { expect(tasks).toBeUndefined(); }); + + it('should migrate srcRootForCompilationRoot option to rootDir', async () => { + let tree = createTreeWithEmptyV1Workspace(); + + tree.write( + 'workspace.json', + JSON.stringify({ + version: 2, + projects: { + mylib: { + root: 'libs/mylib', + sourceRoot: 'libs/mylib/src', + projectType: 'library', + targets: { + build: { + executor: '@nrwl/node:package', + options: { + srcRootForCompilationRoot: '.', + }, + }, + }, + }, + }, + }) + ); + + const tasks = await update(tree); + + expect(tasks).toBeDefined(); + expect(readJson(tree, 'workspace.json')).toEqual({ + version: 2, + projects: { + mylib: { + root: 'libs/mylib', + sourceRoot: 'libs/mylib/src', + projectType: 'library', + targets: { + build: { + executor: '@nrwl/js:tsc', + options: { + rootDir: '.', + }, + }, + }, + }, + }, + }); + }); }); diff --git a/packages/node/src/migrations/update-13-8-5/update-package-to-tsc.ts b/packages/node/src/migrations/update-13-8-5/update-package-to-tsc.ts index f18444500cf08..9da3ba25663a9 100644 --- a/packages/node/src/migrations/update-13-8-5/update-package-to-tsc.ts +++ b/packages/node/src/migrations/update-13-8-5/update-package-to-tsc.ts @@ -29,6 +29,18 @@ export default async function update(host: Tree) { transformers; } + if ( + projectConfiguration.targets[targetName].options + ?.srcRootForCompilationRoot + ) { + projectConfiguration.targets[targetName].options.rootDir = + projectConfiguration.targets[ + targetName + ].options.srcRootForCompilationRoot; + delete projectConfiguration.targets[targetName].options + .srcRootForCompilationRoot; + } + updateProjectConfiguration(host, projectName, projectConfiguration); } );