跳转到主要内容

pig v1.8.1

CLI 安全与仓库流程加固、扩展目录刷新、Go 1.27.1,以及 cargo-pgrx 0.19.2。

Pig v1.8.1v1.8.0 之上的安全、正确性与维护版本。 本版本加固命令初始化、提权日志访问、仓库与构建流程、发布完整性,以及结构化输出脱敏; 同时刷新内置扩展目录,并将构建工具链升级到 Go 1.27.1cargo-pgrx 0.19.2。 内置 Pigsty 版本仍为 4.5.0

CLI 安全与正确性

  • 只读且不依赖配置的命令不再要求 HOME 可写,也不会把创建 ~/.pig 当作查询副作用; 叶子命令会保留自己声明的初始化策略。
  • pig pg logpig pt logpig pb log 通过 sudo 切换数据库 OS 用户时完整保留参数, 并拒绝不安全的日志文件链接。
  • pig do 在执行前校验 Pigsty 名称,并拒绝 Ansible 保留的集群目标。
  • PostgreSQL 原生角色检测绑定到用户选中的实例,而不是无关的本机默认实例。
  • 结构化结果会遮盖凭据、许可证材料与构建代理标识符,同时保持真实的失败状态。

仓库与构建加固

  • 仓库添加与删除在任一请求失败时整体返回失败,对模块选择去重,并保持替换边界。
  • 离线缓存包拒绝不安全路径、链接、特殊文件与不完整输入;归档解压继续采用有根、失败关闭的实现。 生产路径迁移到结构化结果后,删除了仅由测试引用的旧导出缓存包装。
  • 构建源码与制品校验会拒绝不完整或不安全输入;pig build proxy 使用软件包提供的服务契约, 参数保持可选,结构化输出不再泄露秘密标识符。
  • 自更新会验证发布校验和;发布工具拒绝脏工作区、错误 tag,以及覆盖不可变制品。

工具链与扩展目录

  • Go 升级到 1.27.1,Logrus 升级到 1.10.2,GoReleaser 升级到 2.18.0, golangci-lint 升级到 2.13.2
  • pig build pgrx 默认安装 cargo-pgrx 0.19.2;如果某个扩展的目录元数据要求旧版 pgrx, 仍可通过 -v 显式选择。
  • 内置目录从维护中的 pgext 视图刷新:新增 acdat 0.1.0,将已被取代的 pgcontext_pgvector 标记为 removed,并更新软件包版本、仓库归属、PostgreSQL 覆盖与可用性矩阵。

验证

本版本从源码提交 e3d1eb4 构建。该精确提交通过完整 CI 工作流, 覆盖随机顺序测试、命令 race 回归、vet、静态分析、死代码检查、漏洞扫描与 GoReleaser snapshot。 随后 tag 通过 Release 工作流,生成并发布 RPM、DEB、macOS 与 Linux 制品。

兼容性提醒

  • 本版本没有移除 CLI 命令或参数。
  • 如果旧脚本依赖只读命令顺便创建本地配置,应改为显式准备所需状态。
  • pgrx 默认值变为 0.19.2;构建特定扩展时,仍以该扩展的目录元数据为准。

校验和

制品:GitHub Release · checksums.txt

下载资产
文件校验和
pig-1.8.1-1.aarch64.rpm Linuxarm64SHA-256 839ce381…e38c
pig-1.8.1-1.x86_64.rpm Linuxamd64SHA-256 54183895…6d03
pig-v1.8.1.darwin-amd64.tar.gz macOSamd64SHA-256 167891e1…826f
pig-v1.8.1.darwin-arm64.tar.gz macOSarm64SHA-256 1338500b…7d26
pig-v1.8.1.linux-amd64.tar.gz Linuxamd64SHA-256 5050cc44…60a3
pig-v1.8.1.linux-arm64.tar.gz Linuxarm64SHA-256 ecf5fcf1…f167
pig_1.8.1-1_amd64.deb Linuxamd64SHA-256 cf0de4f9…de34
pig_1.8.1-1_arm64.deb Linuxarm64SHA-256 108f50c5…963b