Falco:36k 行 Rust 从零实现浏览器引擎
Falco 是一个从零开始用 Rust 编写的浏览器引擎,v0.1.0 包含 HTML5 tokenizer 和 tree builder、CSS Selectors Level 4、JavaScript VM,以及 block、inline、flex、grid、table、float 和 absolute 布局实现。
项目还包含 SVG 渲染、TrueType 字体光栅化、手写 PNG 编码器、seccomp 沙箱、CSP、TLS 证书校验和同源策略,328 项单元测试通过,并提供 Linux、macOS 和 Windows 预编译版本。作者称代码库约 3.6 万行 Rust,不依赖现成浏览器引擎。
原文链接:https://github.com/poxk/Falco
编译器元数据分析找出无用依赖,编译提速 3 秒
这篇文章介绍了一种在编译早期读取依赖元数据、分析第三方依赖图的实验方法。它利用依赖刚注册进工作区后的增量信息,推断每个依赖及其传递依赖中实际使用的项目;由于 TyCtxt 尚未完全建立,访问包含 Span 的信息可能导致死锁、内部编译器错误或 panic,因此分析范围需要受限。
作者用该方法分析 Bevy 和 Rust 编译器模块,发现 rustc_ast_pretty 中一个只使用了两个简单函数的 itertools 依赖。移除依赖并改写这两个函数后,该模块的编译时间从 13.57 秒降到 10.58 秒,减少约 3 秒。作者认为,这类静态分析能发现 cargo-shear 等工具不一定能识别的低使用率依赖。
原文链接:https://blog.goose.love/posts/three-seconds-of-compilation-shaved-by-metadata-analysis/
mimalloc-pprof v3:为 mimalloc 加入 pprof 兼容堆分析
mimalloc-pprof 是基于 mimalloc 的 Rust/C 项目,为分配器增加 TCMalloc 风格的采样堆分析,并在 v3 中跟进社区 mimalloc v3 分支。项目支持 Windows、Linux 和 macOS,可生成兼容 Google pprof 的堆分析数据,用于 HTTP 查看、火焰图、配置比较和差异分析。
项目还提供按分配统计的钩子以及多项社区修复,仓库将 C 文件合并为单一编译单元以缩短构建时间。作者同时提到,Bun 使用的定制 mimalloc 改动也在后续 0.9.x 构建中持续整合。
原文链接:https://github.com/zackees/mimalloc-pprof
Sniffnet:Rust 跨平台网络监控工具迎来开源四周年
Sniffnet 是一个用 Rust 编写的跨平台网络流量监控工具,支持选择网卡和过滤器,查看实时流量统计与图表,并导入导出 PCAP 捕获报告。它可以显示本地网络连接、远程主机的地理位置、域名和 ASN,识别 6000 多种上层服务、协议、木马和蠕虫,还支持按程序查看流量来源。
项目提供实时连接搜索与检查、自定义网络事件通知、IP 黑名单、主题和最小化运行等功能,图形界面使用 iced 构建。仓库提供跨平台发行版和替代安装方式,项目主页同时维护新闻、路线图和文档。
原文链接:https://github.com/GyulyVGC/sniffnet
评论区
写评论还没有评论