Skip to content

Commit fb44d05

Browse files
committed
chore: remove .cjs builds, use more vite
1 parent 3e3696c commit fb44d05

File tree

30 files changed

+252
-633
lines changed

30 files changed

+252
-633
lines changed

.changeset/nasty-heads-check.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
---
2+
'@qwik.dev/router': major
3+
'@qwik.dev/core': major
4+
---
5+
6+
BREAKING: Qwik and Qwik Router no longer provide .cjs builds. The tooling ecosystem can now handle ESM modules well.

packages/docs/src/routes/docs/(qwik)/advanced/library/index.mdx

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,6 @@ The most important files of a library are a properly configured `package.json` a
7474
"exports": {
7575
".": {
7676
"import": "./lib/index.qwik.mjs",
77-
"require": "./lib/index.qwik.cjs",
7877
"types": "./lib-types/index.d.ts"
7978
}
8079
},
@@ -102,8 +101,8 @@ export default defineConfig(() => {
102101
target: 'es2020',
103102
lib: {
104103
entry: './src/index.ts',
105-
formats: ['es', 'cjs'],
106-
fileName: (format) => `index.qwik.${format === 'es' ? 'mjs' : 'cjs'}`,
104+
formats: ['es'],
105+
fileName: 'index.qwik.mjs',
107106
},
108107
},
109108
plugins: [qwikVite()],

packages/qwik-router/package.json

Lines changed: 18 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -48,63 +48,51 @@
4848
"exports": {
4949
".": {
5050
"types": "./lib/index.d.ts",
51-
"import": "./lib/index.qwik.mjs",
52-
"require": "./lib/index.qwik.cjs"
51+
"import": "./lib/index.qwik.mjs"
5352
},
5453
"./adapters/azure-swa/vite": {
5554
"types": "./lib/adapters/azure-swa/vite/index.d.ts",
56-
"import": "./lib/adapters/azure-swa/vite/index.mjs",
57-
"require": "./lib/adapters/azure-swa/vite/index.cjs"
55+
"import": "./lib/adapters/azure-swa/vite/index.mjs"
5856
},
5957
"./adapters/cloudflare-pages/vite": {
6058
"types": "./lib/adapters/cloudflare-pages/vite/index.d.ts",
61-
"import": "./lib/adapters/cloudflare-pages/vite/index.mjs",
62-
"require": "./lib/adapters/cloudflare-pages/vite/index.cjs"
59+
"import": "./lib/adapters/cloudflare-pages/vite/index.mjs"
6360
},
6461
"./adapters/cloud-run/vite": {
6562
"types": "./lib/adapters/cloud-run/vite/index.d.ts",
66-
"import": "./lib/adapters/cloud-run/vite/index.mjs",
67-
"require": "./lib/adapters/cloud-run/vite/index.cjs"
63+
"import": "./lib/adapters/cloud-run/vite/index.mjs"
6864
},
6965
"./adapters/bun-server/vite": {
7066
"types": "./lib/adapters/bun-server/vite/index.d.ts",
71-
"import": "./lib/adapters/bun-server/vite/index.mjs",
72-
"require": "./lib/adapters/bun-server/vite/index.cjs"
67+
"import": "./lib/adapters/bun-server/vite/index.mjs"
7368
},
7469
"./adapters/deno-server/vite": {
7570
"types": "./lib/adapters/deno-server/vite/index.d.ts",
76-
"import": "./lib/adapters/deno-server/vite/index.mjs",
77-
"require": "./lib/adapters/deno-server/vite/index.cjs"
71+
"import": "./lib/adapters/deno-server/vite/index.mjs"
7872
},
7973
"./adapters/node-server/vite": {
8074
"types": "./lib/adapters/node-server/vite/index.d.ts",
81-
"import": "./lib/adapters/node-server/vite/index.mjs",
82-
"require": "./lib/adapters/node-server/vite/index.cjs"
75+
"import": "./lib/adapters/node-server/vite/index.mjs"
8376
},
8477
"./adapters/netlify-edge/vite": {
8578
"types": "./lib/adapters/netlify-edge/vite/index.d.ts",
86-
"import": "./lib/adapters/netlify-edge/vite/index.mjs",
87-
"require": "./lib/adapters/netlify-edge/vite/index.cjs"
79+
"import": "./lib/adapters/netlify-edge/vite/index.mjs"
8880
},
8981
"./adapters/shared/vite": {
9082
"types": "./lib/adapters/shared/vite/index.d.ts",
91-
"import": "./lib/adapters/shared/vite/index.mjs",
92-
"require": "./lib/adapters/shared/vite/index.cjs"
83+
"import": "./lib/adapters/shared/vite/index.mjs"
9384
},
9485
"./adapters/static/vite": {
9586
"types": "./lib/adapters/ssg/vite/index.d.ts",
96-
"import": "./lib/adapters/ssg/vite/index.mjs",
97-
"require": "./lib/adapters/ssg/vite/index.cjs"
87+
"import": "./lib/adapters/ssg/vite/index.mjs"
9888
},
9989
"./adapters/ssg/vite": {
10090
"types": "./lib/adapters/ssg/vite/index.d.ts",
101-
"import": "./lib/adapters/ssg/vite/index.mjs",
102-
"require": "./lib/adapters/ssg/vite/index.cjs"
91+
"import": "./lib/adapters/ssg/vite/index.mjs"
10392
},
10493
"./adapters/vercel-edge/vite": {
10594
"types": "./lib/adapters/vercel-edge/vite/index.d.ts",
106-
"import": "./lib/adapters/vercel-edge/vite/index.mjs",
107-
"require": "./lib/adapters/vercel-edge/vite/index.cjs"
95+
"import": "./lib/adapters/vercel-edge/vite/index.mjs"
10896
},
10997
"./middleware/azure-swa": {
11098
"types": "./lib/middleware/azure-swa/index.d.ts",
@@ -136,37 +124,31 @@
136124
},
137125
"./middleware/node": {
138126
"types": "./lib/middleware/node/index.d.ts",
139-
"import": "./lib/middleware/node/index.mjs",
140-
"require": "./lib/middleware/node/index.cjs"
127+
"import": "./lib/middleware/node/index.mjs"
141128
},
142129
"./middleware/request-handler": {
143130
"types": "./lib/middleware/request-handler/index.d.ts",
144-
"import": "./lib/middleware/request-handler/index.mjs",
145-
"require": "./lib/middleware/request-handler/index.cjs"
131+
"import": "./lib/middleware/request-handler/index.mjs"
146132
},
147133
"./middleware/vercel-edge": {
148134
"types": "./lib/middleware/vercel-edge/index.d.ts",
149135
"import": "./lib/middleware/vercel-edge/index.mjs"
150136
},
151137
"./static": {
152138
"types": "./lib/ssg/index.d.ts",
153-
"import": "./lib/ssg/index.mjs",
154-
"require": "./lib/ssg/index.cjs"
139+
"import": "./lib/ssg/index.mjs"
155140
},
156141
"./ssg": {
157142
"types": "./lib/ssg/index.d.ts",
158-
"import": "./lib/ssg/index.mjs",
159-
"require": "./lib/ssg/index.cjs"
143+
"import": "./lib/ssg/index.mjs"
160144
},
161145
"./vite": {
162146
"types": "./lib/vite/index.d.ts",
163-
"import": "./lib/vite/index.mjs",
164-
"require": "./lib/vite/index.cjs"
147+
"import": "./lib/vite/index.mjs"
165148
},
166149
"./service-worker": {
167150
"types": "./service-worker.d.ts",
168-
"import": "./lib/service-worker.mjs",
169-
"require": "./lib/service-worker.cjs"
151+
"import": "./lib/service-worker.mjs"
170152
},
171153
"./package.json": "./package.json"
172154
},

packages/qwik-router/src/buildtime/vite/plugin.ts

Lines changed: 3 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,6 @@ function qwikRouterPlugin(userOpts?: QwikRouterVitePluginOptions): any {
4646
let mdxTransform: MdxTransform | null = null;
4747
let rootDir: string | null = null;
4848
let qwikPlugin: QwikVitePlugin | null;
49-
let ssrFormat: 'esm' | 'cjs' = 'esm';
5049
let outDir: string | null = null;
5150
let viteCommand: string;
5251
let devServer: ViteDevServer | null = null;
@@ -159,10 +158,6 @@ function qwikRouterPlugin(userOpts?: QwikRouterVitePluginOptions): any {
159158
return getRouteImports(ctx!.routes, manifest);
160159
});
161160

162-
// @ts-ignore `format` removed in Vite 5
163-
if (config.ssr?.format === 'cjs') {
164-
ssrFormat = 'cjs';
165-
}
166161
outDir = config.build?.outDir;
167162
},
168163

@@ -331,7 +326,7 @@ function qwikRouterPlugin(userOpts?: QwikRouterVitePluginOptions): any {
331326
sequential: true,
332327
async handler() {
333328
if (ctx?.target === 'ssr' && outDir) {
334-
await generateServerPackageJson(outDir, ssrFormat);
329+
await generateServerPackageJson(outDir);
335330
}
336331
},
337332
},
@@ -340,7 +335,7 @@ function qwikRouterPlugin(userOpts?: QwikRouterVitePluginOptions): any {
340335
return plugin;
341336
}
342337

343-
async function generateServerPackageJson(outDir: string, ssrFormat: 'esm' | 'cjs') {
338+
async function generateServerPackageJson(outDir: string) {
344339
await fs.promises.mkdir(outDir, { recursive: true });
345340
const serverPackageJsonPath = join(outDir, 'package.json');
346341

@@ -357,7 +352,7 @@ async function generateServerPackageJson(outDir: string, ssrFormat: 'esm' | 'cjs
357352

358353
packageJson = {
359354
...packageJson,
360-
type: ssrFormat == 'cjs' ? 'commonjs' : 'module',
355+
type: 'module',
361356
};
362357
const serverPackageJsonCode = JSON.stringify(packageJson, null, 2);
363358

packages/qwik-router/vite.config.mts

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -48,15 +48,6 @@ export default defineConfig(() => {
4848
entryFileNames: (chunkInfo) =>
4949
chunkInfo.name === 'index' ? '[name].qwik.mjs' : '[name]/index.mjs',
5050
},
51-
{
52-
format: 'cjs',
53-
chunkFileNames: (chunkInfo) =>
54-
chunkInfo.moduleIds.some((id) => id.includes('runtime'))
55-
? 'chunks/[name].qwik.cjs'
56-
: 'chunks/[name].cjs',
57-
entryFileNames: (chunkInfo) =>
58-
chunkInfo.name === 'index' ? '[name].qwik.cjs' : '[name]/index.cjs',
59-
},
6051
],
6152
external: [
6253
/node:.*/,

packages/qwik/package.json

Lines changed: 10 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -35,11 +35,6 @@
3535
"production": "./dist/core.prod.mjs",
3636
"min": "./dist/core.min.mjs",
3737
"default": "./dist/core.prod.mjs"
38-
},
39-
"require": {
40-
"development": "./dist/core.cjs",
41-
"production": "./dist/core.prod.cjs",
42-
"default": "./dist/core.prod.cjs"
4338
}
4439
},
4540
"./cli": {
@@ -53,11 +48,6 @@
5348
"production": "./dist/core.prod.mjs",
5449
"min": "./dist/core.min.mjs",
5550
"default": "./dist/core.prod.mjs"
56-
},
57-
"require": {
58-
"development": "./dist/core.cjs",
59-
"production": "./dist/core.prod.cjs",
60-
"default": "./dist/core.prod.cjs"
6151
}
6252
},
6353
"./jsx-runtime": {
@@ -67,11 +57,6 @@
6757
"production": "./dist/core.prod.mjs",
6858
"min": "./dist/core.min.mjs",
6959
"default": "./dist/core.prod.mjs"
70-
},
71-
"require": {
72-
"development": "./dist/core.cjs",
73-
"production": "./dist/core.prod.cjs",
74-
"default": "./dist/core.prod.cjs"
7560
}
7661
},
7762
"./jsx-dev-runtime": {
@@ -81,11 +66,6 @@
8166
"production": "./dist/core.prod.mjs",
8267
"min": "./dist/core.min.mjs",
8368
"default": "./dist/core.mjs"
84-
},
85-
"require": {
86-
"development": "./dist/core.cjs",
87-
"production": "./dist/core.prod.cjs",
88-
"default": "./dist/core.cjs"
8969
}
9070
},
9171
"./build": {
@@ -94,50 +74,36 @@
9474
"development": "./dist/build/index.dev.mjs",
9575
"production": "./dist/build/index.prod.mjs",
9676
"default": "./dist/build/index.mjs"
97-
},
98-
"require": {
99-
"development": "./dist/build/index.dev.cjs",
100-
"production": "./dist/build/index.prod.cjs",
101-
"default": "./dist/build/index.cjs"
10277
}
10378
},
10479
"./loader": {
10580
"types": "./dist/loader/index.d.ts",
106-
"import": "./dist/loader/index.mjs",
107-
"require": "./dist/loader/index.cjs"
81+
"import": "./dist/loader/index.mjs"
10882
},
10983
"./insights": {
11084
"types": "./dist/insights.d.ts",
111-
"import": "./dist/insights/index.qwik.mjs",
112-
"require": "./dist/insights/index.qwik.cjs"
85+
"import": "./dist/insights/index.qwik.mjs"
11386
},
11487
"./insights/vite": {
11588
"types": "./dist/insights/vite.d.ts",
116-
"import": "./dist/insights/vite/index.mjs",
117-
"require": "./dist/insights/vite/index.cjs"
89+
"import": "./dist/insights/vite/index.mjs"
11890
},
119-
"./optimizer.cjs": "./dist/optimizer.cjs",
12091
"./optimizer.mjs": "./dist/optimizer.mjs",
12192
"./optimizer": {
12293
"types": "./dist/optimizer.d.ts",
123-
"import": "./dist/optimizer.mjs",
124-
"require": "./dist/optimizer.cjs"
94+
"import": "./dist/optimizer.mjs"
12595
},
12696
"./preloader": {
127-
"import": "./dist/preloader.mjs",
128-
"require": "./dist/preloader.cjs"
97+
"import": "./dist/preloader.mjs"
12998
},
130-
"./server.cjs": "./dist/server.cjs",
13199
"./server.mjs": "./dist/server.mjs",
132100
"./server": {
133101
"types": "./server.d.ts",
134-
"import": "./dist/server.mjs",
135-
"require": "./dist/server.cjs"
102+
"import": "./dist/server.mjs"
136103
},
137104
"./testing": {
138105
"types": "./dist/testing/index.d.ts",
139-
"import": "./dist/testing/index.mjs",
140-
"require": "./dist/testing/index.cjs"
106+
"import": "./dist/testing/index.mjs"
141107
},
142108
"./qwikloader.js": "./dist/qwikloader.js",
143109
"./qwikloader.debug.js": "./dist/qwikloader.debug.js",
@@ -205,7 +171,9 @@
205171
"url": "https://github.com/QwikDev/qwik.git",
206172
"directory": "packages/qwik"
207173
},
208-
"sideEffects": false,
174+
"sideEffects": [
175+
"./src/testing/vdom-diff.unit-util.ts"
176+
],
209177
"scripts": {
210178
"build.insights": "cd src/insights && vite build --mode lib --emptyOutDir"
211179
},

packages/qwik/src/backpatch-executor.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,9 @@
55
* same container and applying the patches to the DOM elements.
66
*/
77

8+
// needed to make this a module and make compiled-string-plugin work
9+
export {};
10+
811
const BACKPATCH_DATA_SELECTOR = 'script[type="qwik/backpatch"]';
912

1013
const executorScript = document.currentScript;

packages/qwik/src/core/shared/platform/platform.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
// keep this import from core/build so the cjs build works
21
import { isServer } from '@qwik.dev/core/build';
32
import { QError, qError } from '../error/error';
43
import { getSymbolHash } from '../qrl/qrl-utils';

packages/qwik/src/core/shared/serdes/serialize.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import { isDev } from '@qwik.dev/core/build';
2-
import { VNodeDataFlag } from 'packages/qwik/src/server/types';
3-
import type { VNodeData } from 'packages/qwik/src/server/vnode-data';
2+
import { VNodeDataFlag } from '../../../server/types';
3+
import type { VNodeData } from '../../../server/vnode-data';
44
import { vnode_isVNode } from '../../client/vnode';
55
import { _EFFECT_BACK_REF } from '../../internal';
66
import { AsyncComputedSignalImpl } from '../../reactive-primitives/impl/async-computed-signal-impl';

0 commit comments

Comments
 (0)