Skip to content

Commit eb46919

Browse files
fix(qwik): handle additional use cases in migrate-v2 (#7337)
closes #7194
1 parent 5395ddf commit eb46919

File tree

3 files changed

+17
-5
lines changed

3 files changed

+17
-5
lines changed

packages/qwik/src/cli/migrate-v2/run-migration.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,10 +44,13 @@ export async function runV2Migration(app: AppCommand) {
4444
[['qwikCityPlan', 'qwikRouterConfig']],
4545
'@qwik-city-plan' // using old name, package name will be updated in the next step
4646
);
47+
replaceImportInFiles([['jsxs', 'jsx']], '@builder.io/qwik/jsx-runtime');
4748

4849
replacePackage('@qwik-city-plan', '@qwik-router-config', true);
4950
replacePackage('@builder.io/qwik-city', '@qwik.dev/router');
5051
replacePackage('@builder.io/qwik-react', '@qwik.dev/react');
52+
// jsx-runtime contains re-exports from "core"
53+
replacePackage('@builder.io/qwik/jsx-runtime', '@qwik.dev/core');
5154
// "@builder.io/qwik" should be the last one because it's name is a substring of the package names above
5255
replacePackage('@builder.io/qwik', '@qwik.dev/core');
5356

packages/qwik/src/cli/migrate-v2/update-dependencies.ts

Lines changed: 12 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -8,15 +8,22 @@ import { log, spinner } from '@clack/prompts';
88
export async function updateDependencies() {
99
// TODO(migrate-v2): rely on workspaceRoot instead?
1010
const packageJson = await readPackageJson(process.cwd());
11-
const devDependencies = (packageJson.devDependencies ??= {});
12-
const dependencies = (packageJson.dependencies ??= {});
1311

1412
const version = getPackageTag();
1513

14+
const dependencyNames = [
15+
'dependencies',
16+
'devDependencies',
17+
'peerDependencies',
18+
'optionalDependencies',
19+
] as const;
20+
1621
for (const name of packageNames) {
17-
if (dependencies[name] || devDependencies[name]) {
18-
delete dependencies[name];
19-
devDependencies[name] = version;
22+
for (const propName of dependencyNames) {
23+
const prop = packageJson[propName];
24+
if (prop && prop[name]) {
25+
prop[name] = version;
26+
}
2027
}
2128
}
2229

packages/qwik/src/cli/types.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -70,6 +70,8 @@ export interface IntegrationPackageJson {
7070
scripts?: { [k: string]: string };
7171
dependencies?: { [k: string]: string };
7272
devDependencies?: { [k: string]: string };
73+
peerDependencies?: { [k: string]: string };
74+
optionalDependencies?: { [k: string]: string };
7375
engines?: { node: string };
7476
private?: boolean;
7577
files?: string[];

0 commit comments

Comments
 (0)