写点什么

Vite 6.0 发布了,但开发人员仍在等待由 Rust 驱动的流行构建工具的未来

作者:Tim Anderson

  • 2024-12-25
    北京
  • 本文字数:1391 字

    阅读完需:约 5 分钟

Vite 6.0 发布了,但开发人员仍在等待由 Rust 驱动的流行构建工具的未来

Vite 6.0 是自一年前 Vite 5.0 发布以来的首次重大更新,虽然该团队声称这是自 2021 年 Vite 2.0 以来最重要的版本,但最大的变更还在后头。



用 Vue 6.0 构建的 Hello World 应用程序


Vite 是一个针对 JavaScript 和 TypeScript 的构建工具,旨在比其他选项更快、更高效。它的作用不仅仅是构建应用程序,因为 Vite 还包含了一个开发服务器,并支持热模块替换(HMR),能够在开发环境中修改代码并将这种更改反映到正在运行的应用程序中。


6.0 版本被描述为“自 2021 年 Vite 2 发布以来最重要的主版本”;但这并不是开发人员所期待的主要更新。新特性包括默认使用 Sass CSS 语言的现代 API,自定义 CSS 输出文件名的能力,以及支持实验环境 API 的内部重构。


目前,Vite 支持两种环境,一种用于在浏览器中运行应用程序,另一种用于服务器端渲染。在 Vite 6 中,使用实验环境 API,可以定义多个环境,以匹配不同的生产目标,包括在 Node.js 或 Cloudflare Workerd 上运行。它还提供了在多个不同环境中并发运行的功能。


不过,正如 Vite(和 Vue.js)的创建者 Evan You 在 10 月份的 ViteConf 上所解释的那样,还有更多的变更在进行中。You 表示,Vite 的未来基于四种工具,它们是:


  • 具有 HMR 和框架支持的 Vite 开发服务器

  • Vitest,Vite 的原生测试运行器

  • Rolldown,Rollup 打包器的替代品,用 Rust 编写

  • Oxc(Oxidation 编译器),被描述为一种语言工具链,它执行包括解析、linting、将 TypeScript 转换为 JavaScript 以及压缩代码在内的任务。Oxc 也是用 Rust 编写的


You 还宣布成立一家新公司 Void(0)(或 VoidZero),该公司正在构建“下一代 JavaScript 工具”,并获得了 460 万美元的种子资金。新公司拥有并控制着 Oxc 和 Rolldown,尽管它们仍然是 MIT 许可下的开源项目。


You 说,Vite 面临的挑战反映了更广泛的 JavaScript 生态系统的挑战——最初只是作为一种简单的脚本语言,现在被用于大型和复杂的应用程序。社区已经创建了一些工具来弥合 JavaScript 功能与当今用例需求之间的差距,包括 TypeScript、打包器、压缩器等。这是一个健康的社区,但也有缺点,包括碎片化、不兼容和效率低下。


Vite 本身有两个或三个大的依赖项。一个是 esbuild,一个用 Go 编写的打包器,用于转换 TypeScript、压缩代码和依赖项预打包。另一个是 Rollup,用于生产打包器、插件支持和摇树(tree-shaking,死代码消除)。第三个可选的依赖项是 SWC,另一个 JavaScript/TypeScript 编译器,通常用于 React 应用程序。


You 说,使用这些具有重叠功能的各种工具会引入“由于行为不同而导致的微妙错误”,并且由于代码在它们之间来回传递,会导致管道效率低下。



尚未实现:Evan You 于 10 月在 ViteConf 上介绍了 Vite 的未来


You 所预见的未来是带有 Rolldown 和 Oxc 的 Vite,他称之为“统一的工具链”,它将更快、更可靠。


这个未来仍然很遥远。下一步可能是明年某个时候推出 Rolldown 的测试版。


Vite 很受欢迎。据该团队称,自去年发布 Vite 5 以来,npm 注册表的下载量从每周 750 万次增加到 1700 万次。开发人员喜欢它的性能,而且它相对易于使用。不过它也有竞争对手,包括来自 Vercel 的 Turbopack,它也是用 Rust 编写的——尽管 You 反驳了 Vercel 声称它比 Vite 快 10 倍的说法。


原文链接:

https://devclass.com/2024/11/28/vite-6-0-released-but-devs-still-await-rust-powered-future-for-popular-build-tool/

2024-12-25 12:198605

评论

发布
暂无评论

刨根问底系列之grpc-java入门

零点999

软件测试丨一文搞定 Postman 接口自动化测试

测试人

软件测试 Postman 自动化测试 接口测试 测试开发

大势所趋_ 华为云企业交换机ESW助力智慧医院转型

科技说

华为云智能云接入ICA,助力企业轻松上云

与时俱进的时代

华为云全球加速GA:为您提供优质的网络服务

与时俱进的时代

羊了怎么居家办公?免费不限速的远控软件RayLink一解燃眉之急!!

RayLink远程工具

远程控制软件 远程办公软件 远控软件 RayLink

从三万英尺看全链路灰度

阿里巴巴云原生

阿里云 云原生 全链路灰度

盘点Python 中字符串的常用操作

华为云开发者联盟

Python 开发 华为云 12 月 PK 榜

一文解析Spring JDBC Template的使用指导

华为云开发者联盟

开发 华为云 12 月 PK 榜

从各行业的实际运用中,窥见华为云虚拟专用网络VPN的强大性能

爱尚科技

NFTScan 2022 年度总结

NFT Research

NFT 数据基础设施

华为云弹性负载均衡ELB,如何保障服务器不瘫痪?

科技说

安全可靠,弹性灵活--华为虚拟专用网络VPN

爱尚科技

华为云VPN,经典跟专业版企业应该怎么选?

爱尚科技

原力MetaForce2.0版本佛萨奇系统开发技术讲解方案

I8O28578624

对不起,你做的A/B实验都是错的——火山引擎DataTester科普

字节跳动数据平台

大数据 AB testing实战 12 月 PK 榜

有奖评测 | Serverless 应用引擎 SAE 征集令开启

阿里巴巴云原生

阿里云 Serverless 云原生

Wallys/QCA9531,MIMO,2.4G,30dBm,2 x 2.4G MMCX//AR9344 802.11a/802.11n 5G

wallysmeng

架构实战营模块3作业

程序员小张

「架构实战营」

先进工具,助力数据科学工作者快速调优丨和鲸科技 × Weights & Biases

ModelWhale

人工智能 数据分析 模型训练 训练营 企业合作

Maya的7个实用操作技巧

Finovy Cloud

云渲染 Maya,渲染

华为云弹性负载均衡服务,如何助企业应付流量压力

科技说

华为云智能云接入ICA,企业数据上云的信赖之选

与时俱进的时代

SeaTunnel 在天翼云数据集成平台的探索实践

Apache SeaTunnel

数据同步 数据集成平台

国产数据库市场横空杀出个巨头?亚信 AntDB数据库凭什么

亚信AntDB数据库

数据库 AntDB 国产数据库 AntDB数据库

Wallys/QCA9531,MIMO,2.4G,30dBm,2 x 2.4G MMCX//AR9344 802.11a/802.11n 5G

wallysSK

统一观测|如何使用 Prometheus 监控 Windows

阿里巴巴云原生

阿里云 云原生 Prometheus

华为云Classroom聚焦人才数字化转型,引领智慧教育改革新模式

华为云开发者联盟

开发 华为云 12 月 PK 榜

智能合约DAPP流动性质押挖矿分红系统开发说明及方案

I8O28578624

Fastjson的反序列化漏洞复现

网络安全学海

黑客 网络安全 信息安全 渗透测试 漏洞挖掘

时序数据库 TDengine 签约华锐技术,助力行情数据处理分析

TDengine

数据库 tdengine 时序数据库

Vite 6.0 发布了,但开发人员仍在等待由 Rust 驱动的流行构建工具的未来_大前端_InfoQ精选文章