upgrade

upgrade 用于检查已安装模块的版本、规划更新、替换现有模块块并修复已安装的依赖。完全缺失的模块仍由 install 负责安装。

系统版本 1.3.1稳定
lil-terminal

概览

upgrade 把模块维护整理为可预测的流程:先查看计划,再更新单个模块或整套安装、修复兼容依赖;安装 run 后,还可以选择在每个已授权会话开始时自动检查一次或尝试更新一次。

先检查计划,再替换代码

upgrade -c 在不写入模块源码的情况下分析版本、包和依赖。真正更新时会保留已安装的包类型和仓库,原子替换模块;只有强制依赖完全缺失时才调用 install

语法

lil-terminal
upgrade [module] [-c] · upgrade -auto <check|update|off> · upgrade -info

参考

upgrade

更新所有已安装的扩展模块

upgrade <module>

更新(或修复)指定模块

upgrade -c

检查版本、软件包和依赖关系(不写入)

upgrade <module> -c

检查单个模块版本(不写入)

upgrade -auto check @run

通过 autoload.lil 在每个已授权会话中检查一次更新

upgrade -auto update @run

通过 autoload.lil 在每个已授权会话中尝试更新一次

upgrade -auto off

关闭由 upgrade 管理的自动操作

upgrade -info

显示自动更新模式和 autoload.lil 状态

规划

每个已安装标记都会记录仓库、版本、Base 或 Minimum 软件包以及 lil.core 代际。upgrade 会在同一仓库中选择最新的兼容 Public 版本,保留原有软件包,验证兼容性元数据,并且不会把本地较新的版本降级。

更新与修复

现有模块会被下载、规范化、解析、检查方法冲突并以原子方式替换。依赖项会按仓库、软件包、版本和核心代际进行检查。已经安装的依赖由 upgrade 自行更新或扩展;只有完全缺失的依赖才交给 install。

检查模式

-c 执行同样的版本、软件包和依赖分析,但不会下载模块源码,也不会写入扩展文件。对于重要安装,在手动或自动更新之前应先执行此模式。

自动模式

可选的自动模式复用 run 现有的启动机制和 autoload.lil 文件。upgrade 只修改自己标记的 # <upgrade:auto> 区块,并保留脚本中的其他所有行。check 写入 upgrade -c,update 写入 upgrade,off 只删除该受管区块;check 与 update 互斥。

autoload.lil 在每个已授权会话中只执行一次,因此所选操作在登录后运行,而不是每条命令执行前运行。自动模式需要 run。upgrade -info 只显示当前状态,不写入文件。

安全

自动更新默认关闭。update 会下载并替换可执行的 PHP 模块代码,因此只能使用可信仓库。如果希望所有变更都保持显式可控,请选择 check。随时可以用 upgrade -auto off 删除受管操作。

汇总格式

整套安装的检查或更新先显示简短总数,再用版本优先的行列出发生变化的模块,例如 v1.30 > v1.33 help (base),最后显示“已是最新:10”等计数。这样可以一眼比较多项更新。

交互式 sandbox 预览

可直接在页面中运行预先准备的示例。结果已预先生成并在浏览器中显示;服务器不会执行任何终端命令。

更新所有已安装的扩展模块

安装与管理

安装当前兼容版本。完整功能请选择 Base,精简包请选择 Minimum;已安装模块的更新请使用 upgrade。

Base 与 Minimum 是同一当前模块版本的两个包。

Base 包

安装包含本地参考和全部已发布模式的完整包。

install upgrade
Minimum 包

安装精简包。该包不包含本地参考;help <cmd> -i 会打开当前服务器参考。

install upgrade -m
精确公开版本

安装这个确切的已发布版本。

install upgrade -v 1.3.1
删除模块

删除扩展块,不影响核心和其他模块。

install upgrade -u

示例

示例可复制,但网站不会执行。请先检查路径、权限和破坏性选项。

更新所有已安装的扩展模块
upgrade -c | upgrade
可更新:4 / 14
                v1.40	>	v1.42	help (base)
                v1.17	>	v1.18	include (base)
                v1.10	>	v1.11	ping (base)
                v1.8	>	v1.9	run (base)
已是最新:9
领先仓库:1

已更新 4 / 14
                v1.40	>	v1.42	help (base)
                v1.17	>	v1.18	include (base)
                v1.10	>	v1.11	ping (base)
                v1.8	>	v1.9	run (base)
已是最新:9
领先仓库:1
检查版本、软件包和依赖关系(不写入)
upgrade -c
可更新:4 / 14
                v1.40	>	v1.42	help (base)
                v1.17	>	v1.18	include (base)
                v1.10	>	v1.11	ping (base)
                v1.8	>	v1.9	run (base)
已是最新:9
领先仓库:1
检查单个模块版本(不写入)
upgrade help -c
可更新:1 / 1
                v1.30	>	v1.33	help (base)
更新(或修复)指定模块
upgrade help
已更新 1 / 1
                v1.30	>	v1.33	help (base)
更新所有已安装的扩展模块
upgrade
已更新 4 / 14
                v1.40	>	v1.42	help (base)
                v1.17	>	v1.18	include (base)
                v1.10	>	v1.11	ping (base)
                v1.8	>	v1.9	run (base)
已是最新:9
领先仓库:1
通过 autoload.lil 在每个已授权会话中检查一次更新
upgrade -auto check
Automatic upgrade  Check only
Session command    upgrade -c
Script             autoload.lil

autoload.lil 中写入一条受管的 upgrade -c。下一次已授权会话启动时,run 只执行一次检查,显示可用更新,不修改任何模块。

显示自动更新模式和 autoload.lil 状态
upgrade -info
Automatic upgrade  Check only
Run module         Installed
Script             autoload.lil

upgrade -info 读取受管启动区块并显示自动模式是关闭、仅检查还是自动更新;不会修改 autoload.lil

通过 autoload.lil 在每个已授权会话中尝试更新一次
upgrade -auto update
Automatic upgrade  Update automatically
Session command    upgrade
Script             autoload.lil

把受管检查替换为 upgrade。它会在每个已授权会话中最多一次下载并替换可执行模块代码,因此只能对可信仓库启用。

关闭由 upgrade 管理的自动操作
upgrade -auto off
Automatic upgrade  Off
Script             autoload.lil
更新(或修复)指定模块
upgrade missing_module
missing_module:未安装

相关文档

当前公开版本

v1.3.12026-08-11

文件路由集成

upgrade 的当前稳定版本。upgrade 用于检查已安装模块的版本、规划更新、替换现有模块块并修复已安装的依赖。