Pacquet - Pnpm 的 Rust 重写版本
Pacquet 是 pnpm CLI 的 Rust 重写版,不是另起炉灶的新包管理器,而是把现有 pnpm 的安装引擎逐步迁到 Rust。
项目定位
- 目标不是改变 pnpm 的使用方式,而是尽量保持行为、命令行标志、默认设置、错误码、文件格式和目录布局与 pnpm 一致
- 当前仍处于积极开发阶段,暂不适合生产环境
- 项目采用 Apache-2.0 / MIT 双许可证
路线图
- 第一阶段:先接管获取和链接流程,锁文件仍由 pnpm 生成
- 第二阶段:再逐步接管依赖解析能力
- 项目方预计,仅第一阶段在多数场景下就有机会让 pnpm 获得至少一倍的速度提升
为什么值得关注
Rust 正在继续进入前端和 JavaScript 工具链核心环节。继 Vite 等项目拥抱 Rust 之后,pnpm 这类高频基础工具的 Rust 化,会比单纯的“语言迁移”更有实际影响力。
原文链接:https://github.com/pnpm/pacquet
Hurl 8.0.0 版本发布
Hurl 发布 8.0.0。这个用纯文本定义 HTTP 请求与断言的命令行工具,底层基于 curl 与 Rust,常用于接口调试、接口测试和 CI/CD 场景。
这一版的重点更新
- 引入实现 RFC 9535 的全新 JSONPath 模块
- 新增
--no-cookie-store,方便测试无 cookie 工作流 - 支持断言和捕获 TLS 证书值
- 分离标准输出与标准错误的颜色控制
- 新增
rawbytes查询、--verbosity选项等能力
兼容性与破坏性变更
HurlResult中改用 CookieStore,可能影响 crate 兼容性- 删除已弃用的
--interactive - 旧环境变量形式
HURL_foo改为HURL_VARIABLE_foo ignore-asserts重命名为no-assert
适合谁关注
如果你在做 API 测试、命令行 smoke test、回归测试或流水线中的 HTTP 校验,Hurl 这次升级的 JSONPath 和 TLS 断言增强都很实用。
原文链接:https://github.com/Orange-OpenSource/hurl/releases/tag/8.0.0
pglite-oxide:把 PGlite 嵌进 Rust 应用
pglite-oxide 把 Electric SQL 的 PGlite WASI PostgreSQL 运行时嵌入到 Rust 中,让应用在不额外部署原生 Postgres 进程的前提下,获得本地 Postgres 兼容数据库能力。
核心特点
- 在 Rust 或 Tauri 应用中直接使用本地 Postgres 语义
- 可用于快速测试,无需 Docker 或 testcontainers
- 提供 PostgreSQL 连接 URI,可接入 SQLx、tokio-postgres 等现有生态
- 让数据库边界保持在应用内部,适合小型嵌入式数据库场景
两种使用方式
- 直接嵌入式 API:直接在 Rust 代码里创建表、写入和查询数据
- PostgreSQL 客户端 URI:通过
PgliteServer暴露连接地址,给现有 Postgres 客户端复用
技术规格
- 目标 PostgreSQL 17.x PGlite 构建
- 需要 Rust 1.92+
- 使用 Wasmtime 44
对于希望在桌面端、本地工具或测试环境里“轻量带一个 Postgres”的 Rust 项目来说,这条路线挺有意思。
原文链接:https://github.com/f0rr0/pglite-oxide
crates.io 开始强制要求使用 User-Agent 标头
crates.io 现在开始更严格地要求下载请求携带 User-Agent 标头。缺少该标头的请求会直接返回 403,这已经影响到部分依赖下载流程。
触发场景
- 有用户在 BitBake / Yocto 相关工作流中发现 crate 下载突然失败
- 排查后确认,原因是不带
User-Agent的请求被 crates.io 拒绝
临时解决思路
- 先在下载命令中显式补上
User-Agent - 例如为
wget增加类似--user-agent='bitbake/2.0'的配置
更深层的影响
- BitBake 上游可能需要修补
- 一些依赖抓取链路最好改成直接访问
static.crates.io - 对构建系统、离线缓存和长期维护环境来说,这不是小改动,值得提前排查
这条不算“新项目发布”,但对做嵌入式、发行版打包、企业内网构建镜像的 Rust 用户,实际影响可能比普通库更新更直接。
原文链接:https://www.reddit.com/r/rust/comments/1sxk40o/cratesio_useragent_requirement_is_enforcement/
From Rust中文社区 Mike
社区学习交流平台订阅:
评论区
写评论还没有评论