Skip to content

Commit a0856d7

Browse files
committed
Merge branch 'build/tsdown' into perf/clipboard
2 parents 5498795 + d634c04 commit a0856d7

24 files changed

Lines changed: 1107 additions & 1565 deletions

.github/workflows/bench.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ jobs:
3131
run: pnpm build
3232

3333
- name: Run benchmarks
34-
uses: CodSpeedHQ/action@6b43a0cd438f6ca5ad26f9ed03ed159ed2df7da9 # v4.1.1
34+
uses: CodSpeedHQ/action@c6574d0c2a990bca2842ce9af71549c5bfd7fbe0 # v4.2.1
3535
env:
3636
NUXT_SOCKET: 1
3737
with:

package.json

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
"name": "nuxi-workspace",
33
"type": "module",
44
"private": true,
5-
"packageManager": "pnpm@10.18.2",
5+
"packageManager": "pnpm@10.18.3",
66
"description": "⚡️ Nuxt Generation CLI Experience",
77
"license": "MIT",
88
"repository": "nuxt/cli",
@@ -12,30 +12,30 @@
1212
"build:stub": "pnpm -r dev:prepare",
1313
"lint": "eslint .",
1414
"lint:fix": "eslint --fix .",
15-
"nuxi": "node ./packages/nuxi/bin/nuxi.mjs",
16-
"nuxt": "node ./packages/nuxt-cli/bin/nuxi.mjs",
17-
"nuxi-bun": "bun --bun ./packages/nuxi/bin/nuxi.mjs",
15+
"nuxi": "pnpm build && node ./packages/nuxi/bin/nuxi.mjs",
16+
"nuxt": "pnpm build && node ./packages/nuxt-cli/bin/nuxi.mjs",
17+
"nuxi-bun": "pnpm build && bun --bun ./packages/nuxi/bin/nuxi.mjs",
1818
"prepack": "pnpm -r build",
1919
"test:types": "tsc --noEmit",
2020
"test:knip": "knip",
2121
"test:dist": "pnpm -r test:dist",
2222
"test:unit": "vitest --coverage --run && pnpm --filter nuxt-cli-playground test --run"
2323
},
2424
"devDependencies": {
25-
"@antfu/eslint-config": "^5.4.1",
25+
"@antfu/eslint-config": "^6.0.0",
2626
"@codspeed/vitest-plugin": "^5.0.1",
2727
"@nuxt/eslint-config": "^1.9.0",
2828
"@nuxt/test-utils": "^3.19.2",
29-
"@types/node": "^22.18.10",
29+
"@types/node": "^22.18.12",
3030
"@types/semver": "^7.7.1",
3131
"@vitest/coverage-v8": "^3.2.4",
3232
"changelogen": "^0.6.2",
33-
"eslint": "^9.37.0",
34-
"knip": "^5.65.0",
33+
"eslint": "^9.38.0",
34+
"knip": "^5.66.2",
3535
"nuxt": "^4.1.3",
3636
"pkg-pr-new": "^0.0.60",
3737
"semver": "^7.7.3",
38-
"std-env": "^3.9.0",
38+
"std-env": "^3.10.0",
3939
"tinyexec": "^1.0.1",
4040
"typescript": "^5.9.3",
4141
"vitest": "^3.2.4",
@@ -46,7 +46,7 @@
4646
"@nuxt/schema": "4.1.3",
4747
"create-nuxt": "workspace:*",
4848
"create-nuxt-app": "workspace:*",
49-
"eslint-plugin-jsdoc": "61.1.2",
49+
"eslint-plugin-jsdoc": "61.1.5",
5050
"eslint-plugin-unicorn": "61.0.2",
5151
"h3": "^1.15.4",
5252
"nitropack": "latest",

packages/create-nuxt/build.config.ts

Lines changed: 0 additions & 42 deletions
This file was deleted.

packages/create-nuxt/package.json

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -25,19 +25,18 @@
2525
"node": "^16.10.0 || >=18.0.0"
2626
},
2727
"scripts": {
28-
"dev:prepare": "unbuild --stub",
29-
"build": "unbuild",
30-
"prepack": "unbuild"
28+
"build": "tsdown",
29+
"prepack": "tsdown"
3130
},
3231
"dependencies": {
3332
"citty": "^0.1.6"
3433
},
3534
"devDependencies": {
36-
"@types/node": "^22.18.10",
37-
"rollup": "^4.52.4",
38-
"rollup-plugin-visualizer": "^6.0.4",
35+
"@types/node": "^22.18.12",
36+
"rollup": "^4.52.5",
37+
"rollup-plugin-visualizer": "^6.0.5",
38+
"tsdown": "^0.15.9",
3939
"typescript": "^5.9.3",
40-
"unbuild": "^3.6.1",
4140
"unplugin-purge-polyfills": "^0.1.0"
4241
}
4342
}

packages/create-nuxt/src/main.ts

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
import type { CommandDef } from 'citty'
12
import { defineCommand } from 'citty'
23
import { provider } from 'std-env'
34

@@ -7,7 +8,7 @@ import { checkEngines } from '../../nuxi/src/utils/engines'
78
import { logger } from '../../nuxi/src/utils/logger'
89
import { description, name, version } from '../package.json'
910

10-
export const main = defineCommand({
11+
const _main = defineCommand({
1112
meta: {
1213
name,
1314
version,
@@ -25,3 +26,5 @@ export const main = defineCommand({
2526
await init.run?.(ctx)
2627
},
2728
})
29+
30+
export const main = _main as CommandDef<any>

packages/create-nuxt/src/run.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,13 +19,13 @@ globalThis.__nuxt_cli__ = globalThis.__nuxt_cli__ || {
1919
),
2020
}
2121

22-
export const runMain = () => _runMain(main)
22+
export const runMain = (): Promise<void> => _runMain(main)
2323

2424
export async function runCommand(
2525
name: 'init',
2626
argv: string[] = process.argv.slice(2),
2727
data: { overrides?: Record<string, any> } = {},
28-
) {
28+
): Promise<{ result: unknown }> {
2929
return await _runCommand(init, {
3030
rawArgs: argv,
3131
data: {
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
import type { UserConfig } from 'tsdown'
2+
import process from 'node:process'
3+
import { visualizer } from 'rollup-plugin-visualizer'
4+
import { defineConfig } from 'tsdown'
5+
import { purgePolyfills } from 'unplugin-purge-polyfills'
6+
7+
const isAnalysingSize = process.env.BUNDLE_SIZE === 'true'
8+
9+
export default defineConfig({
10+
entry: ['src/index.ts'],
11+
fixedExtension: true,
12+
dts: !isAnalysingSize && {
13+
oxc: true,
14+
},
15+
failOnWarn: !isAnalysingSize,
16+
plugins: [
17+
purgePolyfills.rolldown({ logLevel: 'verbose' }),
18+
...(isAnalysingSize ? [visualizer({ template: 'raw-data' })] : []),
19+
],
20+
}) satisfies UserConfig as UserConfig

packages/nuxi/build.config.ts

Lines changed: 0 additions & 45 deletions
This file was deleted.

packages/nuxi/package.json

Lines changed: 8 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -28,24 +28,17 @@
2828
"node": "^16.10.0 || >=18.0.0"
2929
},
3030
"scripts": {
31-
"dev:prepare": "unbuild --stub",
32-
"build": "unbuild",
33-
"build:stub": "unbuild --stub",
34-
"dev": "node ./bin/nuxi.mjs dev ./playground",
35-
"dev:bun": "bun --bun ./bin/nuxi.mjs dev ./playground",
36-
"nuxi": "node ./bin/nuxi.mjs",
37-
"nuxi-bun": "bun --bun ./bin/nuxi.mjs",
38-
"prepack": "unbuild",
39-
"test:dist": "node ./bin/nuxi.mjs info ./playground"
31+
"build": "tsdown",
32+
"prepack": "tsdown"
4033
},
4134
"devDependencies": {
4235
"@nuxt/kit": "^4.1.3",
4336
"@nuxt/schema": "^4.1.3",
4437
"@nuxt/test-utils": "^3.19.2",
4538
"@types/copy-paste": "^2.1.0",
46-
"@types/node": "^22.18.10",
39+
"@types/node": "^22.18.12",
4740
"@types/semver": "^7.7.1",
48-
"c12": "^3.3.0",
41+
"c12": "^3.3.1",
4942
"citty": "^0.1.6",
5043
"confbox": "^0.2.2",
5144
"consola": "^3.4.2",
@@ -66,16 +59,16 @@
6659
"pathe": "^2.0.3",
6760
"perfect-debounce": "^2.0.0",
6861
"pkg-types": "^2.3.0",
69-
"rollup": "^4.52.4",
70-
"rollup-plugin-visualizer": "^6.0.4",
62+
"rollup": "^4.52.5",
63+
"rollup-plugin-visualizer": "^6.0.5",
7164
"scule": "^1.3.0",
7265
"semver": "^7.7.3",
7366
"srvx": "^0.8.16",
74-
"std-env": "^3.9.0",
67+
"std-env": "^3.10.0",
7568
"tinyexec": "^1.0.1",
69+
"tsdown": "^0.15.9",
7670
"typescript": "^5.9.3",
7771
"ufo": "^1.6.1",
78-
"unbuild": "^3.6.1",
7972
"undici": "^7.16.0",
8073
"unplugin-purge-polyfills": "^0.1.0",
8174
"vitest": "^3.2.4",

packages/nuxi/src/commands/dev.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -333,6 +333,9 @@ async function startSubprocess(cwd: string, args: { logLevel: string, clear: boo
333333

334334
async function restart() {
335335
devHandler?.clearError()
336+
if (!globalThis.__nuxt_cli__) {
337+
return
338+
}
336339
// Kill previous process with restart signal (not supported on Windows)
337340
if (process.platform === 'win32') {
338341
kill('SIGTERM')

0 commit comments

Comments
 (0)