Repository navigation
Releases: MOMIEDEJIYI/ployenv
Releases · MOMIEDEJIYI/ployenv
Release list
ployenv v0.6.0
v0.6.0 ployenv 0.6.0:adb 与 rust 两个运行时 + 验证分层
新增运行时
- adb(Android platform-tools):与其它运行时一样安装、切换、注入会话环境;只管理 platform-tools
(adb + fastboot),不设 ANDROID_HOME/ANDROID_SDK_ROOT,也不碰 ~/.android。源是 Google SDK 仓库索引
(当前 37.0.1,上游只发 SHA-1);安装期不执行 adb。
- rust:安装 rustc + cargo + rust-std 三个组件(约 187 MB,不取含文档的 400 MB 整包),只把 <ver>/bin
加进 PATH,不设 RUSTUP_HOME/CARGO_HOME。显式版本安装不依赖版本索引;latest/stable 读官方 manifest。
Windows 走 MSVC,链接程序需要 VS Build Tools,安装与 rustc --version 不需要。
验证与 CI
- 新增验证分层:T1 内循环、T2 收尾(含干净树严格 -Package)、T3 发布点;SKIP 单独计数、不计绿。
- 新增 16_运行时新增验收(读 ci/e2e-runtimes.tsv 同一行、自动落证据)与 01 激活验收的真断言。
- CI 支持单运行时 dispatch(runtime 入参):adb/rust 各取 1 行 x 2 平台(linux + windows/arm64)。
修复
- 两份操作手册的插件共用一节改用通用安装路径示例,不再带构建机路径。
- 11 公开面检查:npm pack 失败或空扫描不再假绿;-NoPack 明确 SKIP。
- build.ps1 增加 -AllowDirty:仅本地布局检查用,CI 与发布点照旧严格。
升级
- 无需改动配置。试 adb:ployenv install adb@latest;试 rust:ployenv install rust@latest
(国内可用 config --set-mirror rust https://mirrors.ustc.edu.cn/rust-static/dist)。
ployenv v0.5.1
ployenv 0.5.1:插件数据根可共享 + 文档与提示修正
插件(dsh-plugin-ployenv)
- 数据根优先级改为 row config root > 宿主环境变量 PLOYENV_ROOT > 包内 data/ployenv:
内置件/自装件模式不再无视 PLOYENV_ROOT,装了 ployenv 的人可让插件与命令行共用一份运行时;
空白值(空格/制表符)视为未设置,不会在宿主目录建出空白名目录。 - dsh.compatibility.dsh 加回 0.2.0-rc.2 显式项:新范围 >=0.1.7-rc.1 <0.3.0 || 0.2.0-rc.2,
预发布语义下 0.2.0-rc.2 重新放行、0.1.6 仍然拒绝。 - locale 描述补 Maven(英文/中文)。
- 文档:插件 README 的参数表与自包含/setup 说明、cordis.patch.yml 注释同步;
操作手册中英两版新增「与 DSH 插件共用一份 ployenv」(PLOYENV_BIN、共享数据根、PATH、重启生效、回滚与优先级)。
基座
ployenv帮助横幅补 maven:原横幅只列 node, java, go, python,而 support 已报五个运行时。
升级
- 无需改动配置;已装 plugin 0.5.0 会随 npm 0.5.1 更新。想共用数据根的配置见操作手册该章。
ployenv v0.5.0
ployenv 0.5.0:Maven 运行时 + 表驱动 CI 矩阵
新增运行时
maven:像其它运行时一样安装、切换、注入会话环境。ployenv 只把<ver>/bin放进 PATH,
不设 MAVEN_HOME/M2_HOME、不碰 settings.xml 与 ~/.m2(mvn.cmd 自己推导主目录)。
Maven 需要一个 JDK:用 ployenv 装的 java,或继续用你自己的 JAVA_HOME —— 两种都能用。- Maven 通道只走 3.x 稳定线:latest/stable/省略取最高稳定 3.x;上游 仍是 4.0 预发布时
@Release 会被拒绝并点名该版本;maven@lts 明确报“没有 LTS 通道”;available maven all 列出预发布并标 preview。
部分版本号(如 3.10)不会解析到候选版。
修复与加固
ployenv shell的激活提示说清它开的是同一窗口的子 shell(独立命令历史),exit 回父 shell 后
历史与环境都在;手册两语言同步,并给出 cmd 下保留历史的 call 写法。- python 索引改为小分页:单次 per_page=40 的响应过大,api.github.com 会稳定返回 504。
- GITHUB_TOKEN:存在时只对 https 的 api.github.com 带 Bearer(提升配额);token 被拒时匿名重试一次,
坏/过期的 token 不会再让索引请求失败。 - 测试基座改为在临时目录运行,检出目录祖先上的 .ployenv / .tool-versions 不再污染测试结果。
CI
- 运行时端到端改为表驱动:ci/e2e-runtimes.tsv 一行一个运行时,prepare 生成动态矩阵(每个运行时一个 job,
墙钟=最慢一行;tag/dispatch 跑全表,否则只跑改动的行),另有手动 all 档在同一 root 验证共存。
矩阵覆盖 linux 与 windows/arm64,缓存只保存归档、每轮重新校验 SHA-512。
升级
- 无需改动配置;已有的全局默认与项目文件照旧。要试 Maven:ployenv install maven@latest && ployenv use maven@latest。
ployenv v0.4.0
ployenv 0.4.0:作用域与配置健壮性
统一了全局默认与项目钉住的操作方式,并补齐配置与插件清单元数据的若干健壮性问题。
命令行
- 项目级写 .ployenv:
ployenv use <lang>@<version> -p(--project长写法仍可用);-g/--global显式声明全局默认。 - 清除:
ployenv use <lang>@none清全局默认,ployenv use <lang>@none -p删当前目录 .ployenv 里那一条(保留其他行与注释,删空即删文件)。 - 命令不接受的 flag 现在报错并列出可接受项:此前会被静默忽略,例如
config --set-default … --project会悄悄改掉全局默认。 ployenv use --help等写法会打印用法,而不是被忽略。
配置
config.json读取容忍 UTF-8 BOM,写回为不带 BOM 的 UTF-8;无法解析时告警一次,且拒绝覆盖原文件。.ployenv、.tool-versions、go.mod等文本配置同样容忍开头 BOM(此前首行键会被静默忽略)。config --set-default <lang> none清除全局默认值(off、default同义)。
插件 dsh-plugin-ployenv
- 插件清单显示标题与描述(新增 locale 元数据;此前缺省会退化成包名与空描述)。
- 会话激活提示修正 PowerShell 写法;Windows 上
env省略--shell时给出提示。
ployenv v0.3.4
ployenv 0.3.4:多平台首个正式版
发布资产扩到六个目标(windows/linux/darwin × amd64/arm64),并新增 macOS 与 arm64 的真机构建、单测与端到端验证。
安装与布局
- 安装 Java 时正确处理 macOS 归档的两层嵌套;node 与 python 的工具路径跟随平台布局。
- 数据根在 HOME 不可用时不再回落到相对路径,而是明确报错并要求 PLOYENV_ROOT。
- Unix 上安装出的二进制会断言其带可执行位(权限随归档带入);归档未带则明确报错并回滚,不静默改权限。
会话环境
env --shell bash输出可直接在 Git Bash / WSL 使用的 POSIX 形式。- 首次运行与
use之后的提示按当前平台给出,不再只列 Windows 命令。
发布
- 六目标资产:版本名加固定别名,配一份覆盖全部资产的 SHA256SUMS.txt;Windows/amd64 资产仍与仓库内置件逐字节一致。
- CI 在六个真机 runner 上原生构建并跑全量单测;其中五个目标与交叉构建逐字节比对(Windows/amd64 的资产就是仓库内置件,按设计跳过)。
- macOS 资产未签名、未公证:首次运行可能被 Gatekeeper 拦下,需手工放行(xattr -d com.apple.quarantine),并以 SHA256SUMS.txt 校验完整性。
插件 dsh-plugin-ployenv
setup按宿主取件(windows/linux/darwin × amd64/arm64),不再限制安装平台;宿主没有对应资产时给出明确错误。- 在 Unix 上,
setup安装的二进制会补上执行位,装完即可运行。
ployenv v0.3.3
0.3.3 —— win32-x64 平台门、插件侧 setup、cmd 脚本转义修复。
ployenv v0.3.2
v0.3.2 — 一个项目一个 .ployenv(破坏性变更)+ 构建工具健壮性
(2026-10-12 仓库重建后重打:指向 0.3.2 发布线快照)