跳到正文
豫言包管理
← 全部包

批量发布 0.1.0

豫言 · 可执行文件

发现当前目录的软件包,生成完整发行归档并批量发布。

豫言原生工具。默认只列出当前目录的包;--打包 生成 ZIP,--发布 才上传。 源码从 Git 的已跟踪文件和未被忽略的新文件收集,尊重子包边界,拒绝敏感文件名和符号链接。不支持非 Git 源码目录。

独立构建包面向当前 macOS/Linux 平台,包含依赖闭包源码、编译器、豫构、运行时及重建脚本;系统工具链与包声明的 C 系统库仍需安装。可执行包只提供当前平台运行包,不宣称跨平台发行。

命令示例见 yy批量发布 -h。上传令牌通过权限为 600 的 curl 配置文件传入,不出现在命令行参数或日志;配置文件使用后删除。 发行 ZIP 保留在输出目录,重试复用同一文件;源码变动后请更新版本,不覆盖已发布版本。

使用

在仓库根目录构建工具:

./yy豫构 构建 批量发布 --输出 yy批量发布 ./yy批量发布 --所有者 豫言 ./yy批量发布 --打包 --所有者 豫言

在网站登录、验证邮箱、绑定所有者后生成上传令牌。通过终端隐藏输入,避免写进 shell 历史:

read -rs YY_UPLOAD_TOKEN export YY_UPLOAD_TOKEN ./yy批量发布 --发布 --所有者 豫言 unset YY_UPLOAD_TOKEN

默认输出 .yybuild/发布/<所有者>/<包名>/<版本>/发布.zip。可用 --包 包名 先测试单包,用 --输出 指向扫描目录外的目录。--工具链 指向含 yy4_bs、yy豫构、运行时源码和 LICENSE 的 Git 工作树;文档工具缺失时自动构建。

无总集的库会在暂存副本创建临时文档索引,使用标准文档生成器一次生成所有普通模块的文档,然后删除临时索引。源码、双语说明和依赖均不修改。 发布只发送 ZIP 原始字节,服务器最终检查所有者。材料未展开完全视为失败,保留 ZIP 供原样重试。输出目录带互斥锁,异常中断遗留锁时,先确认没有运行任务,再删除该输出目录下的 .发布锁。

当前运行包包含本机可执行程序;程序所需的外部数据、服务和 C 动态库仍须按该包说明准备。工具不推断尚未声明的运行时资源。文件名检查不是通用秘密扫描,请先检查将要公开的源码;不要强制跟踪凭据文件。

验证

node --test 工具/批量发布/批量发布.test.mjs

测试使用临时 Git 仓库、工具链替身和本机 HTTP 服务,不向生产发布。完整构建验收需另用实际包执行 --打包,并解开构建目录内的 tar.gz 运行重建.sh。

批量真实归档验收发现服务端原有固定前缀读取会展开整个 base64 字符串,触发栈溢出;现已改为只读取 64 字节。服务端初始堆同步调整为 128 MiB,以容纳 ZIP 和 base64 正文;栈保持 32 MiB。正式批量发布前必须部署这些配套修复,本工具不会自动部署服务器。

依赖

查看包配置

上传历史

当前上传修订:1 ·

查看最新修订 →

  1. 上传修订 3
    下载 ZIP
  2. 上传修订 2
    下载 ZIP
  3. 上传修订 1
    下载 ZIP

包层级

父包:发布

没有子包。