MoonRepo Proto 0.47.0版本发布:支持asdf后端与Poetry工具
2025-07-08 09:50:59作者:袁立春Spencer
MoonRepo的Proto项目是一个现代化的开发环境管理工具,它通过统一接口管理不同编程语言的工具链和运行时环境。Proto致力于解决开发者面临的工具版本碎片化问题,让团队能够轻松共享一致的开发环境配置。
重大变更
在0.47.0版本中,Proto对WASM API进行了重要调整:
- 移除了
LocateExecutablesOutput结构体中的primary和secondary字段 - 弃用了
exes_dir字段,转而推荐使用新的exes_dirs字段
这些变更反映了Proto对多执行目录支持能力的增强,开发者需要相应调整自己的集成代码。
核心功能更新
新增asdf后端支持
0.47.0版本引入了一种全新的插件类型——"backend",允许Proto与第三方版本/包管理器集成。首个支持的后端是著名的asdf版本管理器(目前仅限Unix系统)。
使用方式有两种:
- 在版本号前添加"asdf:"前缀:
act = "asdf:0.2" - 显式设置backend工具配置:
[tools.act] backend = "asdf"
asdf仓库会被自动克隆到~/.proto/backends目录,相关脚本会在需要时执行。需要注意的是,当前版本尚不支持exec-env脚本,某些工具可能需要此功能。
新增Poetry工具支持
Proto现在内置支持Python的Poetry工具,为Python开发者提供了更完善的依赖管理解决方案。这一新增使得Proto对Python生态的支持更加全面。
改进的版本管理
新版本为Proto工具本身增加了shim支持,这意味着:
- 可以在
.prototools中固定Proto版本 - 运行时动态检测版本
- 实现项目级Proto版本控制
同时,proto install命令现在会根据配置自动安装指定版本的Proto工具。
网络连接检测优化
离线状态检查机制得到了增强:
- 新增对公共DNS IPv6地址的ping检测
- 引入
PROTO_OFFLINE_IP_VERSION环境变量,允许开发者指定检测使用的IP版本
WASM API增强
WASM接口新增了多项功能:
- 下载预构建输出中增加了checksum字段
- 新增DetectVersionInput结构体
- 新增LocateExecutablesOutput.exes_dirs字段
- 为ParseVersionFileInput增加了context字段
这些增强使得WASM接口更加完善,为开发者提供了更多控制和信息。
插件更新
- 新增asdf_backend v0.1插件
- 新增python_poetry_tool v0.1插件
- proto_tool升级至v0.5.1,支持shims功能
- rust_tool升级至v0.13.1,改进了rustup安装处理
底层优化
- 将Rust工具链升级至1.85版本
- 更新了多个依赖库
- 持续优化内部架构
MoonRepo Proto 0.47.0版本通过引入asdf后端支持和Poetry工具,进一步扩展了其多语言支持能力。同时,改进的版本管理和网络检测机制使得工具更加健壮可靠。这些更新体现了Proto项目持续优化开发者体验的承诺,为团队协作开发提供了更强大的基础设施支持。
登录后查看全文
热门项目推荐
相关项目推荐
kernelopenEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。C0131
let_datasetLET数据集 基于全尺寸人形机器人 Kuavo 4 Pro 采集,涵盖多场景、多类型操作的真实世界多任务数据。面向机器人操作、移动与交互任务,支持真实环境下的可扩展机器人学习00
mindquantumMindQuantum is a general software library supporting the development of applications for quantum computation.Python059
PaddleOCR-VLPaddleOCR-VL 是一款顶尖且资源高效的文档解析专用模型。其核心组件为 PaddleOCR-VL-0.9B,这是一款精简却功能强大的视觉语言模型(VLM)。该模型融合了 NaViT 风格的动态分辨率视觉编码器与 ERNIE-4.5-0.3B 语言模型,可实现精准的元素识别。Python00
GLM-4.7-FlashGLM-4.7-Flash 是一款 30B-A3B MoE 模型。作为 30B 级别中的佼佼者,GLM-4.7-Flash 为追求性能与效率平衡的轻量化部署提供了全新选择。Jinja00
AgentCPM-ReportAgentCPM-Report是由THUNLP、中国人民大学RUCBM和ModelBest联合开发的开源大语言模型智能体。它基于MiniCPM4.1 80亿参数基座模型构建,接收用户指令作为输入,可自主生成长篇报告。Python00
项目优选
收起
deepin linux kernel
C
27
11
OpenHarmony documentation | OpenHarmony开发者文档
Dockerfile
496
3.64 K
Ascend Extension for PyTorch
Python
300
339
openEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。
C
307
131
本项目是CANN提供的数学类基础计算算子库,实现网络在NPU上加速计算。
C++
868
480
暂无简介
Dart
744
180
React Native鸿蒙化仓库
JavaScript
297
346
Nop Platform 2.0是基于可逆计算理论实现的采用面向语言编程范式的新一代低代码开发平台,包含基于全新原理从零开始研发的GraphQL引擎、ORM引擎、工作流引擎、报表引擎、规则引擎、批处理引引擎等完整设计。nop-entropy是它的后端部分,采用java语言实现,可选择集成Spring框架或者Quarkus框架。中小企业可以免费商用
Java
11
1
🔥LeetCode solutions in any programming language | 多种编程语言实现 LeetCode、《剑指 Offer(第 2 版)》、《程序员面试金典(第 6 版)》题解
Java
66
20
仓颉编译器源码及 cjdb 调试工具。
C++
150
882