Hardhat 3.0.0-next.9版本发布:测试功能增强与关键修复
Hardhat是区块链开发环境中广受欢迎的智能合约开发框架,为开发者提供了编译、测试、部署等全流程工具链支持。本次发布的3.0.0-next.9版本虽然仍处于Alpha阶段,但带来了几项实用的功能改进和关键问题修复,进一步提升了开发体验。
测试功能增强
Solidity测试过滤支持
新版本为Solidity测试增加了--grep参数支持,这一功能借鉴了JavaScript测试框架中常见的模式匹配能力。开发者现在可以像筛选JavaScript测试用例一样,通过关键字过滤需要运行的Solidity测试。例如当项目中有大量测试用例时,可以快速定位和运行特定功能模块的测试,显著提高开发效率。
测试路径自动委托
框架现在能够智能识别npx hardhat test命令后跟随的测试文件路径,并自动将其委托给对应的测试运行器处理。这一改进消除了开发者需要手动指定测试运行器的麻烦,使得测试流程更加自然流畅。无论是运行JavaScript测试还是Solidity测试,都可以使用统一的命令格式。
关键问题修复
抽象合约工厂问题
修复了抽象合约工厂生成相关的问题。在之前的版本中,抽象合约的工厂类可能存在生成异常,影响开发者对抽象合约的测试和使用。新版本确保了所有合约类型都能正确生成对应的工厂类。
构建产物处理优化
解决了构建产物目录中顶层.json文件的处理问题。现在框架会明确忽略这些文件,避免将它们误认为合约构建产物。这一改动提高了构建过程的准确性,防止了潜在的构建错误。
账户去重问题
修复了账户列表处理中意外的去重行为。在某些情况下,Hardhat网络配置中的账户可能会被错误地合并去重,导致开发者配置的账户数量减少。新版本确保了所有配置账户都能被正确识别和使用。
总结
Hardhat 3.0.0-next.9版本虽然只是一个小版本更新,但带来的测试功能增强和关键问题修复都直接提升了开发者的日常使用体验。特别是测试过滤功能的加入,让大型项目的测试管理变得更加高效。这些改进体现了Hardhat团队对开发者实际需求的关注,也展示了框架持续优化的方向。对于正在使用Hardhat进行区块链开发的团队,这个版本值得关注和试用。
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 StartedRust0216
cann-learning-hubCANN 学习中心仓,支持在线互动运行、边学边练,提供教程、示例与优化方案,一站式助力昇腾开发者快速上手。Jupyter Notebook0138
uni-appA cross-platform framework using Vue.jsJavaScript08
GLM-5.2智谱开源 GLM-5.2,这是针对长文本任务的最新旗舰模型。相较于前代产品 GLM-5.1,它在长文本任务处理能力上实现了显著飞跃,并且首次在稳定的 100 万 token 上下文中提供这一能力。Jinja00
SwanLab⚡️SwanLab - an open-source, modern-design AI training tracking and visualization tool. Supports Cloud / Self-hosted use. Integrated with PyTorch / Transformers / LLaMA Factory / veRL/ Swift / Ultralytics / MMEngine / Keras etc.Python00
tiny-universe《大模型白盒子构建指南》:一个全手搓的Tiny-UniverseJupyter Notebook03