Skip to content

WePush Next 1.0.0

Latest

Choose a tag to compare

@github-actions github-actions released this 29 Aug 06:30

WePush Next 1.0.0 — Stable Self-hosted Release

1.0.0 是 WePush Next 首个稳定自部署版本。它把 Beta 的安装运维闭环提升为明确的 1.x API、配置、数据库和 Agent 协议兼容承诺,并补齐大受众、长时间运行、断线恢复、磁盘写失败、进程崩溃、Agent 失联、三平台升级与卸载门禁。

产品定位保持不变:WePush 提供用户自行下载、安装、部署和运维的开源产品,不运营官方公共 SaaS、集中控制面、注册计费订阅、云 KMS/Secret Manager 或公共租户平台。

稳定性与兼容性

  • /api/v1 OpenAPI 与 0.1.0-beta.1 保持契约一致,发行门禁对忽略版本号后的公开文档做精确摘要校验。
  • Beta 已公开的 WEPUSH_* 配置键进入 1.x 兼容基线。
  • SQLite/PostgreSQL 从 Beta V13 迁移到 V14;迁移只新增稳定兼容元数据,不改写用户数据。
  • 最低直接升级版本和最低可回滚版本均为 0.1.0-beta.1
  • Provider SPI Major 1、Remote/Embedded Java SDK 和 Agent 协议 Major 1 进入稳定承诺。

可靠性与故障验证

  • Core 自动执行 100,000 Recipient 流式用例,限制读取批大小且不在测试 Sink 中保存全量结果。
  • Agent Event/Completion Outbox 在模拟磁盘不可写时保持内存与已持久化状态一致,不跳过事件序号或误删未确认结果。
  • Agent 断网后的业务事件重放、进程崩溃后的 UNKNOWN Completion、Lease/Fence 恢复和失联超时继续由自动化测试覆盖。
  • Java 21/25 × SQLite/PostgreSQL 长稳矩阵持续检查 Installation Health 和 System API。
  • Linux、macOS、Windows 运维自测覆盖 Beta 成功升级、升级失败自动回退、可连续创建且不会同名碰撞的备份恢复、默认卸载保留数据以及显式 Purge。

安装与发行物

  • 三平台完整包内置 Java Runtime;精简包使用用户提供的 Java 21+。
  • Windows 包离线携带固定摘要的 WinSW,不在安装时下载服务包装器。
  • 提供三平台 Desktop、Remote/Embedded Java SDK、CycloneDX SBOM、独立归档摘要和统一 SHA256SUMS
  • GitHub Release 是稳定 Release,不标记为 prerelease。

未签名边界

按项目既定选择,macOS/Windows Desktop 和安装包仍不使用商业代码签名或 Apple Notarization。用户必须从项目 GitHub Releases 下载并核对 SHA256SUMS;详见 UNSIGNED-NOTICE.md。Provider 插件仍强制 SHA-256 清单和 Ed25519 签名,二者不能混为一谈。

升级

0.1.0-beta.1 升级前先阅读《升级与回滚指南》。升级脚本会自动备份,并在数据库迁移和 Installation Health 失败时恢复旧版本和数据。