Skip to content

Latest commit

 

History

History
72 lines (54 loc) · 2.97 KB

File metadata and controls

72 lines (54 loc) · 2.97 KB

版本管理

本应用版本命名遵循 Python 包版本规范

更改版本

通过 uv version 命令更改应用版本。

Tip

运行 uv version --help 可查看帮助。

版本映射

Windows 版本号映射

Windows 可执行文件的 FixedFileInfo 中的文件版本和产品版本仅支持四个 16 位无符号整数(格式为 A.B.C.D)。

为保留应用版本的详细信息,采用以下映射规则:

  • A.B.C 直接对应应用版本的 major.minor.micro
  • D(构建号)根据版本的预发布、开发、后发布状态计算得出。

计算公式

D = 基础偏移 + 预发布号 × 100 + 后发布号 × 10 +(开发号 或 9)
参数 说明
基础偏移 Alpha: 10000;Beta: 20000;RC: 30000;正式: 40000
预发布号 abrc 后面的数字,无则为 0
后发布号 post 后面的数字,无则为 0
开发号 dev 后面的数字,此时不加 9;若非开发版本则加 9

映射示例

应用版本 FixedFileInfo 版本 计算过程
1.2.3.dev1 1.2.3.00001 0 + 0 + 0 + 1
1.2.3a 1.2.3.10009 10000 + 0 + 0 + 9
1.2.3a1.dev2 1.2.3.10102 10000 + 1×100 + 0 + 2
1.2.3a1 1.2.3.10109 10000 + 1×100 + 0 + 9
1.2.3a1.post2.dev3 1.2.3.10123 10000 + 1×100 + 2×10 + 3
1.2.3a1.post2 1.2.3.10129 10000 + 1×100 + 2×10 + 9
1.2.3b1 1.2.3.20109 20000 + 1×100 + 0 + 9
1.2.3rc1 1.2.3.30109 30000 + 1×100 + 0 + 9
1.2.3 1.2.3.40009 40000 + 0 + 0 + 9
1.2.3.post1.dev2 1.2.3.40012 40000 + 0 + 1×10 + 2
1.2.3.post1 1.2.3.40019 40000 + 0 + 1×10 + 9

语义化版本映射

由于 Python 包版本号与 语义化版本规范(SemVer) 存在差异,采用以下映射规则:

应用版本 语义化版本
1.2.3.dev1 1.2.3-alpha
1.2.3a 1.2.3-alpha
1.2.3a1.dev2 1.2.3-alpha
1.2.3a1 1.2.3-alpha.1
1.2.3a1.post2.dev3 1.2.3-alpha.1
1.2.3a1.post2 1.2.3-alpha.1
1.2.3b1 1.2.3-beta.1
1.2.3rc1 1.2.3-rc.1
1.2.3 1.2.3
1.2.3.post1.dev2 1.2.3
1.2.3.post1 1.2.3