Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 9 additions & 0 deletions .changeset/empty-mails-laugh.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
---
'supabase-auth-helpers-qwik': major
'create-qwik': major
'@qwik.dev/router': major
'@qwik.dev/react': major
'@qwik.dev/core': major
---

BREAKING: the CJS/UMD builds have been removed; ESM is well-supported everywhere and allows better optimizations.
2 changes: 1 addition & 1 deletion e2e/docs-e2e/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -14,5 +14,5 @@
"test": "pnpm exec playwright test --config=playwright.config.ts --project=chromium",
"test-ui": "pnpm exec playwright test --config=playwright.config.ts --project=chromium --ui"
},
"type": "commonjs"
"type": "module"
}
2 changes: 1 addition & 1 deletion e2e/qwik-cli-e2e/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ E2E project does the following internally:

0. Vitest is configured to run a setup function once **PRIOR TO ALL** tests. During the setup `@qwik.dev/core`, `@qwik.dev/router` and `eslint-plugin-qwik` packages will be packed with `pnpm pack` Those will be used at a step 2 for every test. Tarballs are located in `temp/tarballs` folder within this repo. It is assumed that packages are built before E2E is executed.

1. Simulates `npm create qwik` locally using direct command `node packages/create-qwik/create-qwik.cjs playground {outputDir}`
1. Simulates `npm create qwik` locally using direct command `node packages/create-qwik/create-qwik.mjs playground {outputDir}`
- By default `outputDir` is an auto-generated one using `tmp` npm package. The application that is created here will be removed after the test is executed
- It is possible to install into custom folder using environment variable `TEMP_E2E_PATH`. Here's how the command would look like in this case:
- with absolute path `TEMP_E2E_PATH=/Users/name/projects/tests pnpm run test.e2e.cli`
Expand Down
3 changes: 2 additions & 1 deletion e2e/qwik-cli-e2e/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -8,5 +8,6 @@
"scripts": {
"e2e": "vitest run --config=vite.config.ts",
"e2e.watch": "vitest watch --config=vite.config.ts"
}
},
"type": "module"
}
2 changes: 1 addition & 1 deletion e2e/qwik-cli-e2e/utils/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@ function getTmpDirSync(tmpDirOverride?: string) {
function runCreateQwikCommand(tmpDir: string, type: 'playground' | 'library' | 'empty'): string {
const appDir = 'e2e-app';
execSync(
`node "${workspaceRoot}/packages/create-qwik/create-qwik.cjs" ${type} "${join(tmpDir, appDir)}"`
`node "${workspaceRoot}/packages/create-qwik/create-qwik.mjs" ${type} "${join(tmpDir, appDir)}"`
);
return join(tmpDir, appDir);
}
Expand Down
8 changes: 3 additions & 5 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -108,7 +108,6 @@
"@qwik.dev/router": "workspace:*",
"@types/brotli": "1.3.4",
"@types/bun": "1.2.21",
"@types/cross-spawn": "6.0.6",
"@types/express": "5.0.3",
"@types/node": "24.3.0",
"@types/path-browserify": "1.0.3",
Expand All @@ -122,7 +121,6 @@
"all-contributors-cli": "6.26.1",
"brotli": "1.3.3",
"create-qwik": "workspace:*",
"cross-spawn": "7.0.6",
"csstype": "3.1.3",
"dotenv": "16.5.0",
"esbuild": "0.25.10",
Expand Down Expand Up @@ -166,7 +164,7 @@
"zod": "3.25.48"
},
"engines": {
"node": "^18.17.0 || ^20.3.0 || >=21.0.0",
"node": ">=22.18.0",
"npm": "please-use-pnpm",
"yarn": "please-use-pnpm",
"pnpm": ">=10.14.0"
Expand Down Expand Up @@ -197,8 +195,8 @@
"build.wasm": "node --require ./scripts/runBefore.ts scripts/index.ts --wasm",
"build.watch": "node --require ./scripts/runBefore.ts scripts/index.ts --qwik --qwikrouter --watch --dev --platform-binding",
"change": "changeset",
"cli": "pnpm build.cli && node packages/create-qwik/create-qwik.cjs && node --require ./scripts/runBefore.ts scripts/validate-cli.ts --copy-local-qwik-dist",
"cli.qwik": "pnpm build.cli && node packages/qwik/qwik-cli.cjs",
"cli": "pnpm build.cli && node packages/create-qwik/create-qwik.mjs && node --require ./scripts/runBefore.ts scripts/validate-cli.ts --copy-local-qwik-dist",
"cli.qwik": "pnpm build.cli && node packages/qwik/qwik-cli.mjs",
"cli.validate": "node --require ./scripts/runBefore.ts scripts/validate-cli.ts",
"deps": "corepack pnpm upgrade -i -r --latest && syncpack fix-mismatches && corepack pnpm dedupe",
"docs.dev": "pnpm -C packages/docs build.repl-sw && pnpm -C packages/docs dev",
Expand Down
3 changes: 0 additions & 3 deletions packages/create-qwik/create-qwik.cjs

This file was deleted.

3 changes: 3 additions & 0 deletions packages/create-qwik/create-qwik.mjs
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
#!/usr/bin/env node
import * as createQwik from './dist/index.mjs';
createQwik.runCli();
9 changes: 5 additions & 4 deletions packages/create-qwik/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
"description": "Interactive CLI for create Qwik projects and adding features.",
"version": "2.0.0-beta.13",
"author": "Qwik Team",
"bin": "./create-qwik.cjs",
"bin": "./create-qwik.mjs",
"bugs": "https://github.com/QwikDev/qwik/issues",
"devDependencies": {
"@clack/prompts": "0.11.0",
Expand All @@ -20,7 +20,7 @@
"engines-annotation": "Mostly required by sharp which needs a Node-API v9 compatible runtime",
"files": [
"README.md",
"create-qwik.cjs",
"create-qwik.mjs",
"dist"
],
"homepage": "https://qwik.dev/",
Expand All @@ -31,10 +31,11 @@
"template"
],
"license": "MIT",
"main": "./dist/index.cjs",
"main": "./dist/index.mjs",
"repository": {
"type": "git",
"url": "https://github.com/QwikDev/qwik.git",
"directory": "packages/create-qwik"
}
},
"type": "module"
}
6 changes: 2 additions & 4 deletions packages/qwik-react/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -18,13 +18,11 @@
"exports": {
".": {
"types": "./lib/types/index.qwik.d.ts",
"import": "./lib/index.qwik.mjs",
"require": "./lib/index.qwik.cjs"
"import": "./lib/index.qwik.mjs"
},
"./vite": {
"types": "./lib/types/vite.d.ts",
"import": "./lib/vite.mjs",
"require": "./lib/vite.cjs"
"import": "./lib/vite.mjs"
}
},
"files": [
Expand Down
4 changes: 2 additions & 2 deletions packages/qwik-react/vite.config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,8 @@ export default defineConfig(() => {
target: 'es2020',
lib: {
entry: ['./src/index.qwik.ts', './src/vite.ts'],
formats: ['es', 'cjs'],
fileName: (format, entryName) => `${entryName}.${format === 'es' ? 'mjs' : 'cjs'}`,
formats: ['es'],
fileName: (format, entryName) => `${entryName}.mjs`,
},
rollupOptions: {
external: [
Expand Down
54 changes: 18 additions & 36 deletions packages/qwik-router/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -48,63 +48,51 @@
"exports": {
".": {
"types": "./lib/index.d.ts",
"import": "./lib/index.qwik.mjs",
"require": "./lib/index.qwik.cjs"
"import": "./lib/index.qwik.mjs"
},
"./adapters/azure-swa/vite": {
"types": "./lib/adapters/azure-swa/vite/index.d.ts",
"import": "./lib/adapters/azure-swa/vite/index.mjs",
"require": "./lib/adapters/azure-swa/vite/index.cjs"
"import": "./lib/adapters/azure-swa/vite/index.mjs"
},
"./adapters/cloudflare-pages/vite": {
"types": "./lib/adapters/cloudflare-pages/vite/index.d.ts",
"import": "./lib/adapters/cloudflare-pages/vite/index.mjs",
"require": "./lib/adapters/cloudflare-pages/vite/index.cjs"
"import": "./lib/adapters/cloudflare-pages/vite/index.mjs"
},
"./adapters/cloud-run/vite": {
"types": "./lib/adapters/cloud-run/vite/index.d.ts",
"import": "./lib/adapters/cloud-run/vite/index.mjs",
"require": "./lib/adapters/cloud-run/vite/index.cjs"
"import": "./lib/adapters/cloud-run/vite/index.mjs"
},
"./adapters/bun-server/vite": {
"types": "./lib/adapters/bun-server/vite/index.d.ts",
"import": "./lib/adapters/bun-server/vite/index.mjs",
"require": "./lib/adapters/bun-server/vite/index.cjs"
"import": "./lib/adapters/bun-server/vite/index.mjs"
},
"./adapters/deno-server/vite": {
"types": "./lib/adapters/deno-server/vite/index.d.ts",
"import": "./lib/adapters/deno-server/vite/index.mjs",
"require": "./lib/adapters/deno-server/vite/index.cjs"
"import": "./lib/adapters/deno-server/vite/index.mjs"
},
"./adapters/node-server/vite": {
"types": "./lib/adapters/node-server/vite/index.d.ts",
"import": "./lib/adapters/node-server/vite/index.mjs",
"require": "./lib/adapters/node-server/vite/index.cjs"
"import": "./lib/adapters/node-server/vite/index.mjs"
},
"./adapters/netlify-edge/vite": {
"types": "./lib/adapters/netlify-edge/vite/index.d.ts",
"import": "./lib/adapters/netlify-edge/vite/index.mjs",
"require": "./lib/adapters/netlify-edge/vite/index.cjs"
"import": "./lib/adapters/netlify-edge/vite/index.mjs"
},
"./adapters/shared/vite": {
"types": "./lib/adapters/shared/vite/index.d.ts",
"import": "./lib/adapters/shared/vite/index.mjs",
"require": "./lib/adapters/shared/vite/index.cjs"
"import": "./lib/adapters/shared/vite/index.mjs"
},
"./adapters/static/vite": {
"types": "./lib/adapters/ssg/vite/index.d.ts",
"import": "./lib/adapters/ssg/vite/index.mjs",
"require": "./lib/adapters/ssg/vite/index.cjs"
"import": "./lib/adapters/ssg/vite/index.mjs"
},
"./adapters/ssg/vite": {
"types": "./lib/adapters/ssg/vite/index.d.ts",
"import": "./lib/adapters/ssg/vite/index.mjs",
"require": "./lib/adapters/ssg/vite/index.cjs"
"import": "./lib/adapters/ssg/vite/index.mjs"
},
"./adapters/vercel-edge/vite": {
"types": "./lib/adapters/vercel-edge/vite/index.d.ts",
"import": "./lib/adapters/vercel-edge/vite/index.mjs",
"require": "./lib/adapters/vercel-edge/vite/index.cjs"
"import": "./lib/adapters/vercel-edge/vite/index.mjs"
},
"./middleware/azure-swa": {
"types": "./lib/middleware/azure-swa/index.d.ts",
Expand Down Expand Up @@ -136,37 +124,31 @@
},
"./middleware/node": {
"types": "./lib/middleware/node/index.d.ts",
"import": "./lib/middleware/node/index.mjs",
"require": "./lib/middleware/node/index.cjs"
"import": "./lib/middleware/node/index.mjs"
},
"./middleware/request-handler": {
"types": "./lib/middleware/request-handler/index.d.ts",
"import": "./lib/middleware/request-handler/index.mjs",
"require": "./lib/middleware/request-handler/index.cjs"
"import": "./lib/middleware/request-handler/index.mjs"
},
"./middleware/vercel-edge": {
"types": "./lib/middleware/vercel-edge/index.d.ts",
"import": "./lib/middleware/vercel-edge/index.mjs"
},
"./static": {
"types": "./lib/ssg/index.d.ts",
"import": "./lib/ssg/index.mjs",
"require": "./lib/ssg/index.cjs"
"import": "./lib/ssg/index.mjs"
},
"./ssg": {
"types": "./lib/ssg/index.d.ts",
"import": "./lib/ssg/index.mjs",
"require": "./lib/ssg/index.cjs"
"import": "./lib/ssg/index.mjs"
},
"./vite": {
"types": "./lib/vite/index.d.ts",
"import": "./lib/vite/index.mjs",
"require": "./lib/vite/index.cjs"
"import": "./lib/vite/index.mjs"
},
"./service-worker": {
"types": "./service-worker.d.ts",
"import": "./lib/service-worker.mjs",
"require": "./lib/service-worker.cjs"
"import": "./lib/service-worker.mjs"
},
"./package.json": "./package.json"
},
Expand Down
12 changes: 3 additions & 9 deletions packages/qwik-router/src/buildtime/vite/plugin.ts
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,6 @@ function qwikRouterPlugin(userOpts?: QwikRouterVitePluginOptions): any {
let mdxTransform: MdxTransform | null = null;
let rootDir: string | null = null;
let qwikPlugin: QwikVitePlugin | null;
let ssrFormat: 'esm' | 'cjs' = 'esm';
let outDir: string | null = null;
let viteCommand: string;
let devServer: ViteDevServer | null = null;
Expand Down Expand Up @@ -160,11 +159,6 @@ function qwikRouterPlugin(userOpts?: QwikRouterVitePluginOptions): any {
qwikPlugin.api.registerBundleGraphAdder?.((manifest) => {
return getRouteImports(ctx!.routes, manifest);
});

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

Expand Down Expand Up @@ -333,7 +327,7 @@ function qwikRouterPlugin(userOpts?: QwikRouterVitePluginOptions): any {
sequential: true,
async handler() {
if (ctx?.target === 'ssr' && outDir) {
await generateServerPackageJson(outDir, ssrFormat);
await generateServerPackageJson(outDir);
}
},
},
Expand All @@ -342,7 +336,7 @@ function qwikRouterPlugin(userOpts?: QwikRouterVitePluginOptions): any {
return plugin;
}

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

Expand All @@ -359,7 +353,7 @@ async function generateServerPackageJson(outDir: string, ssrFormat: 'esm' | 'cjs

packageJson = {
...packageJson,
type: ssrFormat == 'cjs' ? 'commonjs' : 'module',
type: 'module',
};
const serverPackageJsonCode = JSON.stringify(packageJson, null, 2);

Expand Down
11 changes: 1 addition & 10 deletions packages/qwik-router/vite.config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ export default defineConfig(() => {
emptyOutDir: false,
ssr: true,
modulePreload: false,
target: 'es2020',
target: 'esnext',
outDir: 'lib',
minify: false,
rollupOptions: {
Expand Down Expand Up @@ -48,15 +48,6 @@ export default defineConfig(() => {
entryFileNames: (chunkInfo) =>
chunkInfo.name === 'index' ? '[name].qwik.mjs' : '[name]/index.mjs',
},
{
format: 'cjs',
chunkFileNames: (chunkInfo) =>
chunkInfo.moduleIds.some((id) => id.includes('runtime'))
? 'chunks/[name].qwik.cjs'
: 'chunks/[name].cjs',
entryFileNames: (chunkInfo) =>
chunkInfo.name === 'index' ? '[name].qwik.cjs' : '[name]/index.cjs',
},
],
external: [
/node:.*/,
Expand Down
Loading