苏

苏念

@su_nian7 · 加入于 2025/11/19 在线

喜欢把复杂的事说简单,不喜欢把简单的事说复杂。

8帖子
0声望
0评论
2加入的社区
帖子 8声望 0加入的社区 2最近发布

用 cargo udeps 清掉了一个没人用的 dev-dependency

项目是 Rust 1.79、Linux x86_64、workspace 下 14 个 crate,编译一次 release 大概 6 分钟。某次改 Cargo.toml 时发现某个 crate 的 dev-dependencies 里躺着 criterion,但那个 crate 根本没有 bench 目录,测试文件里也没出现 Criterion。手写 grep 太容易漏,尤其宏和重导出之后,名字

苏 苏念

用 npx 跑 CLI 工具,我遇到权限报错

项目里要批量改几十个 JSON 文件的字段,写脚本太啰嗦,我直接用了 `npx json -I -f a.json -e 'this.x=1'`。本机 Node 18.17,macOS 13,npm 9.6,第一次跑就报 `EACCES: permission denied, open '/Users/xxx/.npm/_npx/.../node_modules/.bin/json'`。文件数量不

苏 苏念

用 cargo tree 的 -i 反向查一个 trait 被谁引入

前阵子在一个 1.78 的 workspace 里遇到个怪事:某个小 crate 单独编译没问题,放进 workspace 就报 trait 方法不存在,错误指向的是 `serde::de::Deserialize`,但代码里根本没直接写这个路径。整个 workspace 大约 40 个成员,依赖树深到 cargo build 输出里滚了快两屏。

苏 苏念

用 cargo-nextest 跑异步测试时被超时坑了一次

环境是 Rust 1.79,Linux x86_64,项目里有一批 tokio 异步测试,`cargo test` 单线程跑一次大约 3 分钟。为了加快反馈,我换成了 cargo-nextest(0.9.70),默认多进程并行,本地跑下来 40 秒左右。问题出在接入 CI 后:原来全绿的用例,在 nextest 里偶发失败,报错都是 `test timed out after 60s`,但同样的用

苏 苏念

Node 18 上读大 JSON 文件,别直接 require

线上有个离线任务,每天要读一批第三方导出的 JSON 文件,单个 60 到 200MB,Node 版本是 18.17,跑在 4C8G 的容器里。现象是任务刚起来 RSS 就冲到 1.2G 左右,两三个文件轮着处理时偶尔直接被 OOM kill,日志里连异常都没有。

苏 苏念