Lychee项目v0.19.0版本发布:链接检查工具的重大更新
Lychee是一个用Rust编写的现代化链接检查工具,它能够高效地扫描文档、网站和代码库中的链接,验证这些链接的有效性。作为一个轻量级但功能强大的工具,Lychee特别适合集成到CI/CD流程中,帮助开发者确保项目中的所有外部链接都是可访问的。
核心功能改进
本次发布的v0.19.0版本带来了多项重要改进,其中最关键的是对--accept标志行为的调整。在之前的版本中,状态码如200 OK总是被自动接受,而现在它们只是默认被接受。这意味着当用户指定--accept 201时,状态码200 OK将被拒绝。这一变更使得状态码处理更加精确和可控。
另一个显著变化是移除了已废弃的--exclude-mail标志,简化了命令行接口。同时,工具现在能够检测网站片段(fragments),即URL中#后面的部分,这对于检查单页面应用或文档中的锚点链接特别有用。
新增功能亮点
-
TLS版本支持:新增了指定TLS版本的功能,用户现在可以设置最低TLS版本要求,增强了安全性检查能力。
-
自定义文件扩展名:支持为链接检查指定自定义文件扩展名,这使得Lychee能够检查更多类型的文件,而不仅限于常见的HTML或Markdown文件。
-
自定义请求头:在处理输入时支持添加自定义HTTP头,为需要特殊认证或特定头的API检查提供了可能。
-
片段检测优化:改进了对URL片段的处理逻辑,现在只会在文件内部检查片段,避免了不必要的网络请求。
-
配置验证:当默认配置文件无效时,工具会明确报错,而不是静默失败,提高了问题排查效率。
技术实现优化
在技术层面,本次更新将归档功能重构为库形式,提高了代码的模块化和复用性。项目还升级到了Rust 2024版,利用了最新的语言特性。同时,明确了最低支持的Rust版本(MSRV),为开发者提供了清晰的兼容性指导。
使用建议
对于现有用户,需要注意以下几点迁移建议:
-
如果之前依赖
--exclude-mail标志,需要更新脚本或配置,改用其他方式排除邮件链接。 -
对于精细控制HTTP状态码的场景,重新评估
--accept参数的使用方式,确保符合新的行为逻辑。 -
考虑利用新的TLS版本控制功能来增强安全检查,特别是对安全性要求较高的项目。
-
对于需要检查特殊文件类型或API的场景,可以尝试新的自定义扩展名和请求头功能。
Lychee v0.19.0通过这些改进,进一步巩固了其作为现代化链接检查工具的地位,无论是对于个人开发者还是企业级项目,都能提供更可靠、更灵活的链接验证解决方案。
atomcodeClaude Code 的开源替代方案。连接任意大模型,编辑代码,运行命令,自动验证 — 全自动执行。用 Rust 构建,极致性能。 | An open-source alternative to Claude Code. Connect any LLM, edit code, run commands, and verify changes — autonomously. Built in Rust for speed. Get StartedRust0442
源启盛夏_AtomGit暑期开发者成长计划「源启盛夏」暑期校园开发者成长计划旨在激活校园开源力量,通过积分激励、认证扶持、资源倾斜等形式,引导高校组织和开发者完成「入驻 — 建项目 — 做贡献 — 获认证 — 得资源」的完整闭环。无论你是想带领社团入驻平台的组织者,还是希望用代码贡献证明自己的开发者,都能在这里找到属于你的成长路径。Markdown00
jiuwenswarmJiuwenSwarm 是一款基于openJiuwen开发的智能AI Agent,它能够将大语言模型的强大能力,通过你日常使用的各类通讯应用,直接延伸至你的指尖。Python0758
Hy3Hy3 是由腾讯混元团队研发的快慢思考融合的混合专家模型,总参数量 295B,激活参数 21B,MTP 层参数 3.8B。4 月底发布 Hy3 Preview 后,我们在 50 多个业务中获得了广泛的反馈,修复了各种体验问题,进一步提升了后训练的质量和规模。今天,我们发布 Hy3。它展现出显著强于同尺寸并比肩旗舰(参数规模往往是 Hy3 的 2~5 倍)开源模型的智能水平,显著提升了在各类产品和生产力任务中的实用价值。Python00
AscendNPU-IRAscendNPU-IR是基于MLIR(Multi-Level Intermediate Representation)构建的,面向昇腾亲和算子编译时使用的中间表示,提供昇腾完备表达能力,通过编译优化提升昇腾AI处理器计算效率,支持通过生态框架使能昇腾AI处理器与深度调优C++0308
DragonOSDragonOS is an operating system developed from scratch using Rust, with Linux compatibility. It is designed for **Serverless** scenarios. 使用Rust从0自研内核,具有Linux兼容性的操作系统,面向云计算Serverless场景而设计。Rust00