5

The future is turbopack

 1 year ago
source link: https://www.v2ex.com/t/889872
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

V2EX  ›  程序员

The future is turbopack

  YadongZhang · zhyd1997 · 7 小时 25 分钟前 · 1926 次点击

https://vercel.com/blog/turbopack

10x Vite, 700x Webpack

盲猜 turbopack 的快和 Rust 这种类似 C/C++ 的底层语言多少有点关系,我没有依据,只是猜的

并且 Vite 只是依赖 esbuild 在 rebuild 的时候速度才有提升的:

https://storybook.js.org/blog/storybook-performance-from-webpack-to-vite/

turbopack 第一次构建的时候就可以有速度优化:Turbopack only bundles the minimum assets required in development

第 1 条附言  ·  6 小时 40 分钟前

更详细的介绍:

https://turbo.build/pack/docs/core-concepts
21 条回复    2022-10-26 15:34:47 +08:00
LengthMin

LengthMin      7 小时 15 分钟前 via iPhone   ❤️ 1

The secret to Turbopack's performance is twofold: highly optimized machine code and a low-level incremental computation engine that enables caching down to the level of individual functions. Once Turbopack performs a task it never does it again.

还做了一些缓存机制
theusername

theusername      6 小时 38 分钟前 via Android

看起来号称很快的原因在于按需打包和粒度很细的缓存,好炫酷
YadongZhang

YadongZhang      6 小时 34 分钟前 via Android

@LengthMin
@theusername

Vite 也是这个思路,只不过 Turbopack 在第一次构建的时候就做了速度提升,tql
mywaiting

mywaiting      6 小时 30 分钟前

我倒是期待 JS 有一天能类似 TS 那样直接转码 /编译到 Rust ~

这样就无所谓啥速度了~

wasm 感觉已经很接近这个愿望了~
David1119

David1119      6 小时 13 分钟前

@mywaiting #4 wasmtime 来了。话说前端花活真多,所有基础设施都要用 rust 重写一遍么。。。。
hronro

hronro      6 小时 7 分钟前 via iPhone

@mywaiting #4 你要不要再看看你在说啥?
Nugine0

Nugine0      6 小时 2 分钟前 via Android

前端工具链领域的优化空间是真的大。用 Rust 写过一轮后,未来也不太可能有几百倍的速度提升了。换句话说,像这样悬殊的性能对比是空前绝后的。
swift

swift      5 小时 59 分钟前 via iPhone

vite 已经落后了吗
churchill

churchill      5 小时 44 分钟前   ❤️ 1

Turbopack does not perform type checks on your application. We use SWC to compile TypeScript code, which also does not perform type checks.

又看到熟悉的句子了

每次各种所谓新一代打包工具 都要把带实时 lint ,type check 的 webpack 暴打一顿

正经事不干
liuzhaowei55

liuzhaowei55      5 小时 39 分钟前 via Android

node lts 从 v16 升到 v18 了,大家快冲
thulof

thulof      5 小时 36 分钟前

将近两年前用 swc 跑 jest 的时候,打包产物还有很多 Bug ,基本不可用,不知道现在怎么样了
chloerei

chloerei      5 小时 34 分钟前

文档连怎么单独安装都没有,不知道怎么试用。
Leviathann

Leviathann      5 小时 33 分钟前

@churchill 一个打包工具搞什么 lint typescheck 才是正经事不干瞎忙活
lululau

lululau      5 小时 16 分钟前

The future 不是 importmap 吗
otakustay

otakustay      5 小时 11 分钟前

@churchill #9 这玩意暴打没 lint 和 typecheck 的 webpack 也是轻轻松松
YadongZhang

YadongZhang      5 小时 9 分钟前 via Android

@chloerei

最低要求 Nextjs 13 ,然后 `next dev` 后面加参数 `--turbo`,我猜的,你可以试一下
chloerei

chloerei      5 小时 3 分钟前

@YadongZhang 不用 next.js ,想知道怎么单独安装。npm 搜了 turbopack ,是个无关的包。现在的文档安装没说清楚,也没有配置说明,都是营销内容比竞品怎么怎么好,给我留下不好印象。
YadongZhang

YadongZhang      4 小时 56 分钟前 via Android

@chloerei

目前只在 Nextjs v13 中可以用 turbopack

https://vercel.com/blog/turbopack

How fast is Turbopack? 前一句话
serco

serco      4 小时 50 分钟前

@chloerei turbopack 目前只能 nextjs 用,turborepo 才能给其他项目用
mywaiting

mywaiting      4 小时 49 分钟前

@hronro #6 我知道自己说啥啊,清楚这个 turbopack 是个打包工具,清楚 vite 和 webpack~

就是,我只是顺便感慨了一下“速度”这个词而已~
RabbitDR

RabbitDR      7 分钟前

是吗,用 54MB 的体积的提升换取 0.09s 到 0.01s 的提升是否值得也是值得讨论的( https://twitter.com/youyuxi/status/1585040261922820096 )。另外,他们家的产品总给人一种排外的味道。Vite 在发布之初就支持主流前端库,现在 turbopack 正式发布还只支持 React ,甚至可能只是 Next ,( https://turbo.build/pack/docs/roadmap#other-frameworks ),虽说兼容一下其它前端库不是什么难事,但其态度已经是可见一斑了。诚然 Vercel 工具链能带来前所未有的流程开发体验,但终究垄断不是什么好事,现在不过是时候未到而已。

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK