第八十五章
WSaiOS Build and Package Specification
构建与打包规范
85.1 工程目标
本章定义 WSaiOS-Core 的标准构建流程,确保:
- 构建结果一致(Deterministic Build)
- 可重复构建(Reproducible Build)
- 可验证构建(Verifiable Build)
- 可发布构建(Release Build)
本章不涉及部署,仅关注从源码到可发布产物。
85.2 构建流程
WSaiOS-Core 建议采用统一构建流程:
Source Code
│
▼
Static Analysis
│
▼
Unit Test
│
▼
Integration Test
│
▼
Build
│
▼
Package
│
▼
Artifact
只有所有前置检查通过,才允许生成发布包。
85.3 项目结构
推荐目录:
wsaios-core/
├── src/
├── tests/
├── plugins/
├── docs/
├── scripts/
├── build/
├── dist/
├── pyproject.toml
├── requirements.txt
└── README.md
目录职责:
| 目录 | 职责 |
|---|---|
| src | 核心源码 |
| tests | 测试 |
| plugins | 插件 |
| docs | 文档 |
| scripts | 构建脚本 |
| build | 临时构建目录 |
| dist | 最终发布包 |
85.4 Build配置
建议统一:
build.yaml
例如:
project: wsaios-core
version: 1.0.0
python: 3.12
platform:
- windows
- linux
- macos
Build 不应依赖开发者个人环境。
85.5 静态检查
Build 前必须执行:
Lint
↓
Type Check
↓
Import Check
↓
Dependency Check
建议:
Python:
使用:
- Ruff(代码风格与静态检查)
- mypy(静态类型检查)
静态检查失败:
停止构建。
85.6 Build输出
Build:
统一输出:
dist/
wsaios-core-1.0.0.zip
checksum.sha256
其中:
SHA256:
用于:
验证:
发布包。
85.7 Package规范
Package:
包含:
bin/
config/
plugins/
docs/
LICENSE
README
不包含:
tests/
.cache/
.idea/
__pycache__
保证:
发布包:
最小化。
85.8 Manifest
统一:
Manifest:
例如:
{
"name":"WSaiOS Core",
"version":"1.0.0",
"build":"20260724",
"python":"3.12"
}
方便:
Loader:
验证。
85.9 Dependency Lock
统一:
依赖。
例如:
requirements.lock
确保:
开发环境:
测试环境:
发布环境:
一致。
85.10 Build验证
验证:
Build:
是否:
正确。
例如:
检查:
Source
↓
Build
↓
Checksum
↓
Verify
保证:
Artifact:
未损坏。
85.11 Release Candidate
建议:
发布:
采用:
Alpha
↓
Beta
↓
RC
↓
Release
每个版本:
对应:
不同:
测试要求。
85.12 构建自动化
建议:
Build:
全部:
自动。
例如:
Git Commit
↓
CI
↓
Build
↓
Package
↓
Artifact
禁止:
人工复制:
文件。
85.13 工程目录
建议新增:
build/
├── build.py
├── package.py
├── verify.py
└── checksum.py
职责:
- Build;
- 打包;
- 校验;
- 校验码生成。
85.14 最小验证
执行:
python build/build.py
输出:
dist/
wsaios-core-1.0.0.zip
checksum.sha256
然后:
执行:
verify.py
验证:
SHA256:
一致。
说明:
Build:
成功。
85.15 本章总结
完成:
WSaiOS Build and Package Specification
建立:
- Build流程
- 项目目录
- Build配置
- 静态检查
- Package规范
- Manifest
- Dependency Lock
- Checksum验证
- Release阶段
- 自动化Build
工程路线校正
到这里,整个工程生命周期已经形成连续链路:
Architecture
│
Reference Implementation
│
Testing
│
Build
│
Package
│
Deployment
│
Operation
│
Maintenance
这是符合经典软件工程生命周期的顺序。
下一章(第86章)《WSaiOS Deployment Specification(部署规范)》,重点定义:
- 单机部署(Local)
- 局域网部署(LAN)
- 分布式部署(Distributed)
- Docker 部署
- 配置管理
- 升级与回滚