@dptech-corp/bohr-cli 2.6.94 → 2.6.96
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +49 -0
- package/README.md +1 -1
- package/package.json +7 -7
- package/postinstall.js +10 -1
package/CHANGELOG.md
CHANGED
|
@@ -12,10 +12,59 @@
|
|
|
12
12
|
- **发版时必须把 `[Unreleased]` 下的条目整体搬到新版本号下**。这一步由 CI 强制:打 tag 后 `scripts/verify-changelog.sh` 会要求 `## [<版本号>]` 一节存在且非空、且 `[Unreleased]` 已清空,不满足则 build 阶段直接失败,发不出去。本地可先跑 `sh scripts/verify-changelog.sh` 自查。
|
|
13
13
|
- **发版只走打 tag 这一条路**。手动 `npm publish` 绕开上面整套门禁——2.5.8 就是这么发出去的:构建自 2.5.7 的 commit、`vcs.modified=true`、不带本文件,而本文件当时把五条 batchjob 改动记在了它名下,实际一条都不在包里。一个版本号写进 CHANGELOG,就必须能在该版本的发布物里探到对应改动。
|
|
14
14
|
|
|
15
|
+
## 已知的归属错误
|
|
16
|
+
|
|
17
|
+
下面这条**不订正**:已发布小节一旦发出去就冻在 npm 包里,改仓库里这份只会让两份文件对同一个版本给出两种说法,而用户手上那份改不了。所以真相记在这里,历史留在原处。
|
|
18
|
+
|
|
19
|
+
- `## [2.6.44]` 里的「**配套扩展可完整管理**:CLI 或 npm 安装的 trisol/wenyon 现可被 list/info/verify/pin/remove 识别」实际随 **2.6.46** 发出,不在 2.6.44 里。成因:2.6.45 从未打 tag,2.6.46 发版时不可变门禁的基线仍是 2.6.44,而当时的规则只查「上一版条目有没有丢」、不查「有没有多」,这条便落进了基线自己那节并被此后的逐字保护冻住。同类情况已由 2.6.94 起的规则 E 在门禁层挡住。
|
|
20
|
+
|
|
15
21
|
---
|
|
16
22
|
|
|
17
23
|
## [Unreleased]
|
|
18
24
|
|
|
25
|
+
## [2.6.96] - 2026-09-12
|
|
26
|
+
|
|
27
|
+
### Breaking
|
|
28
|
+
|
|
29
|
+
- **`bohr sandbox doctor` 没就绪时改为退出 0**:原先退出 1,与命令失败同码。结论改读 `data.ready`;`&&` 短路的脚本要改判它。
|
|
30
|
+
|
|
31
|
+
### Added
|
|
32
|
+
|
|
33
|
+
- **`bohr doctor` 新增 `path_integrity` 检查**:独立安装遮住 npm 那一份时记 `warn`,点名两个路径并给出改法;`--offline` 下也跑。
|
|
34
|
+
|
|
35
|
+
### Fixed
|
|
36
|
+
|
|
37
|
+
- **`bohr doctor` 不再把 AccessKey 拼进 URL**:此前两项检查把它放进查询串,会进网关与代理日志,断网时还会打在输出里。现在走请求头。
|
|
38
|
+
- **`bohr doctor` 的 `cli_version` 真去查最新版了**:此前恒报 pass。落后时给出升级命令;落后或查不到记 `warn`,不影响 `data.healthy`。
|
|
39
|
+
- **`bohr update` 更新独立安装时,会点名 npm 管着的那一份**:此前它原地更新完就返回成功,版本号对了、遮蔽还在,调用方从此没有理由再敲 `npm install -g`——而那是唯一会提醒遮蔽的地方。现在 stderr 给出两个路径与 `mv` 改法,`-o json` 的 `data.other_install` 给出同一件事。问不出 npm 根目录、或 npm 没装本包时保持沉默。
|
|
40
|
+
- **`~/.vouch/state.json` 记全凭据覆盖的受众**:token 本就替 wenyon 与 trisol 签发,此前只写 wenyon。重新登录即更新,不改变 trisol 连通性。
|
|
41
|
+
|
|
42
|
+
### Changed(内部,无用户面行为变化)
|
|
43
|
+
|
|
44
|
+
- 删掉 `scripts/install.sh` / `install.ps1` 两个独立安装脚本。它们从未随 npm 包分发,自身文档教的分发 URL 已失效(405 / 404),安装路径仍然只有 `npm install -g @dptech-corp/bohr-cli`。过去跑过它的机器上 `~/.bohr/bin/bohr` 的残留不受影响,处理方法见 README 的「升级后 `bohr version` 显示的还是旧版本号」一节。
|
|
45
|
+
|
|
46
|
+
### Changed
|
|
47
|
+
|
|
48
|
+
- **同名命令在本组更深处也指得出来**:`bohr notebook restart` 补一句 `"bohr notebook server restart" exists`;原先只有顶层或全树唯一才说。
|
|
49
|
+
|
|
50
|
+
## [2.6.95] - 2026-09-11
|
|
51
|
+
|
|
52
|
+
### Breaking
|
|
53
|
+
|
|
54
|
+
- **`bohr skills list` 的 `-o json` 换成标准列表形状**:`data.skills` 改名为 `data.items`,`data.count` 由 `data.pagination.total` 取代;`bohr skills list <名字>` 的 `data.entries` 同样改名 `data.items`。读这两个键的脚本要改字段名。
|
|
55
|
+
|
|
56
|
+
- **`bohr sandbox list` 与 `bohr sandbox template list` 的 `-o json` 换成标准列表形状**:`data.list` 改名 `data.items`;`data.page` / `data.page_size` / `data.total` 移进 `data.pagination`;`data.total_pages` 去掉,改读 `data.pagination.has_more` 判断还有没有下一页。行本身不变。
|
|
57
|
+
|
|
58
|
+
### Added
|
|
59
|
+
|
|
60
|
+
- **八条列表命令的 `-o json` 补上 `data.pagination`**:image / sandbox image / project / dataset / node / machine / extension / skills list 现在都给 `{page, page_size, total, has_more}`,与 `job list` 一致。`has_more` 直接回答「还要不要再发一次请求」。行本身不变。
|
|
61
|
+
|
|
62
|
+
### Changed
|
|
63
|
+
|
|
64
|
+
- **`bohr tools info` 的人类输出把镜像放到了前面**:`-o human` 此前只精选介绍文案(Profile/Overview/Summary…),镜像地址、MCP 地址、Dockerfile 都落在末尾一个字母序的兜底段里,而 Dockerfile 是全文(实测 76 行,占输出 37%)。现在 Image / MCP 紧跟 Name,Dockerfile 只给一行摘要并指向 `--output json`。`-o json` 不变,仍是全量。
|
|
65
|
+
|
|
66
|
+
- **`bohr tools info` 人类输出里的长字段一律压成一行**:不只 Dockerfile——兜底段的任何多行或超长取值都只给首行加行数,并指向 `--output json`。同时修掉 id 被打成科学计数法(`2.0251220175459e+13`)。`-o json` 不变。
|
|
67
|
+
|
|
19
68
|
## [2.6.94] - 2026-09-10
|
|
20
69
|
|
|
21
70
|
### Added
|
package/README.md
CHANGED
|
@@ -108,7 +108,7 @@ npm install -g @dptech-corp/bohr-cli@latest --registry https://registry.npmjs.or
|
|
|
108
108
|
| 来源 | 留下的可执行文件 | 写进 PATH 的位置 |
|
|
109
109
|
|-|-|-|
|
|
110
110
|
| 早期版本 | `~/.bohrium/bohr` | rc 文件里的 `~/.bohrium` |
|
|
111
|
-
|
|
|
111
|
+
| 独立安装脚本(已移除) | `~/.bohr/bin/bohr` | rc 文件里的 `export PATH="$HOME/.bohr/bin:$PATH"` |
|
|
112
112
|
|
|
113
113
|
手动确认与处理如下。
|
|
114
114
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dptech-corp/bohr-cli",
|
|
3
|
-
"version": "2.6.
|
|
3
|
+
"version": "2.6.96",
|
|
4
4
|
"description": "CLI tool for Bohrium scientific computing platform",
|
|
5
5
|
"bin": {
|
|
6
6
|
"bohr": "run.js"
|
|
@@ -32,11 +32,11 @@
|
|
|
32
32
|
"CHANGELOG.md"
|
|
33
33
|
],
|
|
34
34
|
"optionalDependencies": {
|
|
35
|
-
"@dptech-corp/bohr-cli-darwin-arm64": "2.6.
|
|
36
|
-
"@dptech-corp/bohr-cli-darwin-amd64": "2.6.
|
|
37
|
-
"@dptech-corp/bohr-cli-linux-amd64": "2.6.
|
|
38
|
-
"@dptech-corp/bohr-cli-linux-arm64": "2.6.
|
|
39
|
-
"@dptech-corp/bohr-cli-windows-amd64": "2.6.
|
|
40
|
-
"@dptech-corp/bohr-cli-windows-arm64": "2.6.
|
|
35
|
+
"@dptech-corp/bohr-cli-darwin-arm64": "2.6.96",
|
|
36
|
+
"@dptech-corp/bohr-cli-darwin-amd64": "2.6.96",
|
|
37
|
+
"@dptech-corp/bohr-cli-linux-amd64": "2.6.96",
|
|
38
|
+
"@dptech-corp/bohr-cli-linux-arm64": "2.6.96",
|
|
39
|
+
"@dptech-corp/bohr-cli-windows-amd64": "2.6.96",
|
|
40
|
+
"@dptech-corp/bohr-cli-windows-arm64": "2.6.96"
|
|
41
41
|
}
|
|
42
42
|
}
|
package/postinstall.js
CHANGED
|
@@ -596,7 +596,7 @@ function detectShadowedBohr(opts) {
|
|
|
596
596
|
// 遮蔽源已知有两个,都是本仓自己造出来的:
|
|
597
597
|
//
|
|
598
598
|
// ~/.bohrium/bohr 早期版本的安装位置(登记行 recvqLGpdH3RXI 实测两台机器)
|
|
599
|
-
// ~/.bohr/bin/bohr scripts/install.sh
|
|
599
|
+
// ~/.bohr/bin/bohr 早先的独立安装脚本装的位置(scripts/install.sh,已移除),它还往 rc 文件写
|
|
600
600
|
// `export PATH="$HOME/.bohr/bin:$PATH"`——前置,所以必赢
|
|
601
601
|
//
|
|
602
602
|
// 所以补救命令**必须从实际挡路的那个路径生成**,不能写死其中一个。写死 ~/.bohrium 的
|
|
@@ -623,6 +623,15 @@ function shadowRemedyLines(detected, homeDir) {
|
|
|
623
623
|
return ["[postinstall] 2. rename the shadowing executable:"].concat(lines);
|
|
624
624
|
}
|
|
625
625
|
|
|
626
|
+
// ⚠️ 同一个补救办法在本仓有三处话术,改这里的时候另外两处也要看一眼——没有任何东西
|
|
627
|
+
// 检查它们一致:
|
|
628
|
+
//
|
|
629
|
+
// internal/update/update.go 的 HandBackSteps —— `bohr update` 与 `bohr doctor` 共用的 Go 版本
|
|
630
|
+
// npm/README.md「升级后 bohr version 显示的还是旧版本号」—— 给人读的五步版
|
|
631
|
+
//
|
|
632
|
+
// 下面第 3 步那段解释不是装饰:README 里逐字写着「这一步不能省」。改完名不刷新缓存,
|
|
633
|
+
// 下一条 `bohr` 会报 No such file or directory 指着刚改名的那个文件,人会以为自己把
|
|
634
|
+
// 环境弄坏了。Go 那一处的第一版就把这段丢了,2026-09-12 补回。
|
|
626
635
|
function formatShadowWarning(detected, homeDir) {
|
|
627
636
|
if (!detected) return null;
|
|
628
637
|
const lines = [
|