Skip to content

perf(dev): use socket to proxy connections to dev server - #921

Merged
danielroe merged 8 commits into
mainfrom
feat/socket-remake
Jul 1, 2025
Merged

perf(dev): use socket to proxy connections to dev server#921
danielroe merged 8 commits into
mainfrom
feat/socket-remake

Conversation

@danielroe

@danielroedanielroe commented Jun 18, 2025

Copy link
Copy Markdown
Member

❓ Type of change

  • 📖 Documentation (updates to the documentation or readme)
  • 🐞 Bug fix (a non-breaking change that fixes an issue)
  • 👌 Enhancement (improving an existing functionality)
  • ✨ New feature (a non-breaking change that adds functionality)
  • 🧹 Chore (updates to the build process or auxiliary tools and libraries)
  • ⚠️ Breaking change (fix or feature that would cause existing functionality to change)

📚 Description

I expect this to be a significant improvement when running nuxt dev, but this PR is very much work-in-progress.

🚧 TODO

  • consider disabling for Nuxt versions pre-v3.18

🚧 Issues to investigate

@github-actions

github-actionsBot commented Jun 18, 2025

Copy link
Copy Markdown
Contributor

Bundle Stats — create-nuxt size comparison

Hey there, this message comes from a GitHub action that helps you and reviewers to understand how these changes affect the size of this project's bundle.

As this PR is updated, I'll keep you updated on how the bundle size is impacted.

Total

Files countTotal bundle size% Changed
495.89 MB → 5.89 MB (+2.81 kB)+0.05%
Changeset
FileΔSize
home/runner/work/cli/cli/packages/nuxi/src/dev/socket.ts🆕 +1.98 kB0 B → 1.98 kB
home/runner/work/cli/cli/packages/nuxi/src/dev/utils.ts📈 +383 B (+4.42%)8.47 kB → 8.84 kB
home/runner/work/cli/cli/packages/nuxi/src/commands/dev.ts📈 +430 B (+4.16%)10.1 kB → 10.52 kB
home/runner/work/cli/cli/packages/nuxi/src/dev/index.ts📈 +36 B (+1.31%)2.69 kB → 2.72 kB
View detailed bundle breakdown

Added

No assets were added

Removed

No assets were removed

Bigger

AssetFile Size% Changed
chunks/index2.mjs194.26 kB → 196.65 kB (+2.39 kB)+1.23%
chunks/dev.mjs27.24 kB → 27.66 kB (+430 B)+1.54%

Smaller

No assets were smaller

Unchanged

AssetFile Size% Changed
index.mjs1.07 kB0%
chunks/multipart-parser.mjs5.11 kB0%
chunks/multipart-parser2.mjs4.58 kB0%
chunks/add.mjs6.89 kB0%
chunks/analyze.mjs3.27 kB0%
chunks/build.mjs1.96 kB0%
chunks/cleanup.mjs471 B0%
chunks/dev-child.mjs811 B0%
chunks/devtools.mjs764 B0%
chunks/generate.mjs472 B0%
chunks/info.mjs4.38 kB0%
chunks/index.mjs274 B0%
chunks/prepare.mjs984 B0%
chunks/preview.mjs3.5 kB0%
chunks/test.mjs1.16 kB0%
chunks/typecheck.mjs1.91 kB0%
chunks/upgrade.mjs6.28 kB0%
chunks/prompt.mjs42.91 kB0%
chunks/satisfies.mjs116 B0%
chunks/jiti.mjs305 B0%
chunks/index3.mjs71.97 kB0%
chunks/add2.mjs12.08 kB0%
chunks/search.mjs45.85 kB0%
chunks/xdg-open.mjs25.32 kB0%
chunks/node.mjs145.67 kB0%
chunks/index4.mjs1.23 kB0%
chunks/index5.mjs5.85 kB0%
chunks/index6.mjs6.24 kB0%
chunks/index7.mjs50.51 kB0%
chunks/index8.mjs898.9 kB0%
shared/create-nuxt.B3STrcyM.mjs964.43 kB0%
shared/create-nuxt.BGY4dUiI.mjs792 B0%
shared/create-nuxt.Bls702kr.mjs294 B0%
shared/create-nuxt.CTZIz834.mjs3.9 kB0%
shared/create-nuxt.BSm0_9Hr.mjs107 B0%
shared/create-nuxt.DX9WOARL.mjs108.11 kB0%
shared/create-nuxt.C_rHbSeB.mjs18.91 kB0%
shared/create-nuxt.Drn2Mj-1.mjs1.17 MB0%
shared/create-nuxt.bOUheP_L.mjs4.07 kB0%
shared/create-nuxt.DbuVfATn.mjs836 B0%
shared/create-nuxt.BGD2CGTI.mjs945 B0%
shared/create-nuxt.CssRAp0b.mjs15.27 kB0%
shared/create-nuxt.DThhmweU.mjs2.02 MB0%
shared/create-nuxt.BjhZEm2-.mjs1.75 kB0%
shared/create-nuxt.BEnMq1Re.mjs4.06 kB0%
shared/create-nuxt.Vk1IrVtB.mjs26.96 kB0%
shared/create-nuxt.4t9faemh.mjs43.64 kB0%

@github-actions

github-actionsBot commented Jun 18, 2025

Copy link
Copy Markdown
Contributor

Bundle Stats — nuxt-cli size comparison

Hey there, this message comes from a GitHub action that helps you and reviewers to understand how these changes affect the size of this project's bundle.

As this PR is updated, I'll keep you updated on how the bundle size is impacted.

Total

Files countTotal bundle size% Changed
3290.28 kB → 93.08 kB (+2.8 kB)+3.10%
Changeset
FileΔSize
home/runner/work/cli/cli/packages/nuxi/src/dev/socket.ts🆕 +1.97 kB0 B → 1.97 kB
home/runner/work/cli/cli/packages/nuxi/src/dev/utils.ts📈 +381 B (+4.40%)8.46 kB → 8.83 kB
home/runner/work/cli/cli/packages/nuxi/src/commands/dev.ts📈 +430 B (+4.16%)10.09 kB → 10.51 kB
home/runner/work/cli/cli/packages/nuxi/src/dev/index.ts📈 +36 B (+1.32%)2.67 kB → 2.7 kB
View detailed bundle breakdown

Added

No assets were added

Removed

No assets were removed

Bigger

AssetFile Size% Changed
chunks/index.mjs11.43 kB → 13.81 kB (+2.38 kB)+20.84%
chunks/dev.mjs10.09 kB → 10.51 kB (+430 B)+4.16%

Smaller

No assets were smaller

Unchanged

AssetFile Size% Changed
dev/index.mjs0 B0%
index.mjs236 B0%
chunks/analyze.mjs3.27 kB0%
chunks/cleanup.mjs471 B0%
chunks/dev-child.mjs815 B0%
chunks/devtools.mjs763 B0%
chunks/generate.mjs472 B0%
chunks/build.mjs1.96 kB0%
chunks/info.mjs4.39 kB0%
chunks/index2.mjs273 B0%
chunks/add.mjs10.17 kB0%
chunks/search.mjs2.96 kB0%
chunks/prepare.mjs984 B0%
chunks/preview.mjs3.5 kB0%
chunks/test.mjs1.16 kB0%
chunks/typecheck.mjs1.91 kB0%
chunks/upgrade.mjs6.28 kB0%
chunks/init.mjs9.85 kB0%
chunks/add2.mjs6.89 kB0%
shared/cli.B9AmABr3.mjs39 B0%
shared/cli.Dz2be-Ai.mjs792 B0%
shared/cli.BEUGgaW4.mjs294 B0%
shared/cli.BSm0_9Hr.mjs107 B0%
shared/cli.At9IMXtr.mjs1.23 kB0%
shared/cli.pLQ0oPGc.mjs836 B0%
shared/cli.qKvs7FJ2.mjs945 B0%
shared/cli.P0cplz3M.mjs78 B0%
shared/cli.jA1DRKbi.mjs1.04 kB0%
shared/cli.BLVI_04J.mjs1.8 kB0%
shared/cli.yHMpVeHl.mjs5.42 kB0%

@github-actions

github-actionsBot commented Jun 18, 2025

Copy link
Copy Markdown
Contributor

Bundle Stats — nuxi size comparison

Hey there, this message comes from a GitHub action that helps you and reviewers to understand how these changes affect the size of this project's bundle.

As this PR is updated, I'll keep you updated on how the bundle size is impacted.

Total

Files countTotal bundle size% Changed
585.46 MB → 5.46 MB (+2.81 kB)+0.05%
Changeset
FileΔSize
src/dev/socket.ts🆕 +1.98 kB0 B → 1.98 kB
src/dev/utils.ts📈 +383 B (+4.42%)8.47 kB → 8.84 kB
src/commands/dev.ts📈 +430 B (+4.16%)10.1 kB → 10.52 kB
src/dev/index.ts📈 +36 B (+1.31%)2.69 kB → 2.72 kB
View detailed bundle breakdown

Added

No assets were added

Removed

No assets were removed

Bigger

AssetFile Size% Changed
chunks/index2.mjs194.26 kB → 196.65 kB (+2.39 kB)+1.23%
chunks/dev.mjs27.24 kB → 27.66 kB (+430 B)+1.54%

Smaller

No assets were smaller

Unchanged

AssetFile Size% Changed
index.mjs247 B0%
dev/index.mjs896 B0%
chunks/add.mjs6.89 kB0%
chunks/analyze.mjs3.27 kB0%
chunks/build.mjs1.96 kB0%
chunks/cleanup.mjs471 B0%
chunks/dev-child.mjs780 B0%
chunks/devtools.mjs764 B0%
chunks/generate.mjs472 B0%
chunks/info.mjs4.38 kB0%
chunks/init.mjs665.88 kB0%
chunks/index.mjs274 B0%
chunks/prepare.mjs984 B0%
chunks/preview.mjs3.5 kB0%
chunks/test.mjs1.16 kB0%
chunks/typecheck.mjs1.91 kB0%
chunks/upgrade.mjs6.28 kB0%
chunks/satisfies.mjs116 B0%
chunks/main.mjs15.3 kB0%
chunks/prompt.mjs42.91 kB0%
chunks/jiti.mjs305 B0%
chunks/index3.mjs71.97 kB0%
chunks/multipart-parser.mjs5.11 kB0%
chunks/add2.mjs12.08 kB0%
chunks/search.mjs45.85 kB0%
chunks/xdg-open.mjs25.32 kB0%
chunks/node.mjs145.67 kB0%
chunks/index4.mjs1.23 kB0%
chunks/index5.mjs5.85 kB0%
chunks/multipart-parser2.mjs4.58 kB0%
chunks/index6.mjs898.9 kB0%
shared/nuxi.DFIyyeua.mjs19.18 kB0%
shared/nuxi.Dh2ZdpAd.mjs57.22 kB0%
shared/nuxi.CTyTlDmo.mjs18.91 kB0%
shared/nuxi.DzMZtGWH.mjs792 B0%
shared/nuxi.BtDT0y5R.mjs294 B0%
shared/nuxi.Cm5apyPX.mjs2.57 kB0%
shared/nuxi.Db0skjkt.mjs915.23 kB0%
shared/nuxi.D2_bzAv0.mjs1.54 kB0%
shared/nuxi.DtQ0anGB.mjs4.07 kB0%
shared/nuxi.BSm0_9Hr.mjs107 B0%
shared/nuxi.DMyZmNH9.mjs836 B0%
shared/nuxi.BiWTNJI4.mjs945 B0%
shared/nuxi.BMIgfYLN.mjs15.26 kB0%
shared/nuxi.ChutbOY_.mjs25.34 kB0%
shared/nuxi.D5KtpA0t.mjs984 B0%
shared/nuxi.wc1-AWrO.mjs2.02 MB0%
shared/nuxi.BjhZEm2-.mjs1.75 kB0%
shared/nuxi.BEgIcxrx.mjs4.06 kB0%
shared/nuxi.DU9QXUOf.mjs26.96 kB0%
shared/nuxi.BzZJv2UC.mjs123.67 kB0%
shared/nuxi.QWnQy_ku.mjs5.75 kB0%
shared/nuxi.CbyJ5osS.mjs13.45 kB0%
shared/nuxi.BLb4POFS.mjs42.47 kB0%
shared/nuxi.Do0aYBCO.mjs5.46 kB0%
shared/nuxi.4t9faemh.mjs43.64 kB0%

@pkg-pr-new

pkg-pr-newBot commented Jun 18, 2025

Copy link
Copy Markdown

nuxt-cli-playground

npm i https://pkg.pr.new/create-nuxt@921
npm i https://pkg.pr.new/nuxi@921
npm i https://pkg.pr.new/@nuxt/cli@921

commit: 5645518

@codspeed-hq

codspeed-hqBot commented Jun 18, 2025

Copy link
Copy Markdown

CodSpeed Performance Report

Merging #921 will degrade performances by 10.17%

Comparing feat/socket-remake (5645518) with main (599c4d2)

Summary

❌ 1 regressions
✅ 1 untouched benchmarks

⚠️Please fix the performance issues or acknowledge them on CodSpeed.

Benchmarks breakdown

BenchmarkBASEHEADChange
makes requests to dev server91.6 ms102 ms-10.17%

@danielroe
danielroe marked this pull request as ready for review July 1, 2025 12:27
@danielroe
danielroe merged commit 99b4136 into mainJul 1, 2025
@danielroe
danielroe deleted the feat/socket-remake branch July 1, 2025 13:34
@github-actionsgithub-actionsBot mentioned this pull request Jul 1, 2025
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant

@danielroe