# 包发布规范

## 版本

此规范约束作者为 ApacheCN 的包。

| | 格式 | 示例 | 备注 |
| --- | --- | --- | --- |
| 单个日期（三位） | `<年>.<月日>.<补丁号>` | `2020.101.0` | 日期两位带前导 0，日期为 0 代表整月，月份为 0 代表整年 |
| 单个日期（四位） | `<年>.<月>.<日>.<补丁号>` | `2020.1.1.0` | 日期为 0 代表整月，月份为 0 代表整年 |
| 月份范围（三位） | `<年>.<起始月份+终止月份>.<补丁号>` | `2020.105.0` | 终止月份两位带前导 0 |
| 月份范围（四位） | `<年>.<起始月份>.<终止月份>.<补丁号>` | `2020.1.5.0` | |
| 年月范围（三位） | `<起始年份+起始月份>.<终止年份+终止月份>.<补丁号>` | `201901.202001.0` | 月份两位带前导 0 |
| 年月范围（四位） | `<起始年份+起始月份>.<终止年份+终止月份>.0.<补丁号>` | `201901.202001.0.0` | 月份两位带前导 0 |

当发生不兼容的更改时（比如 Py2 -> Py3，Angular4 -> Angular6），一律将版本号加进包名，创建新的项目。例如`epub-crawler2`.

## 包前缀

此规范适用于 mvn 或 apk 包。

作者为 ApacheCN 的包，前缀一律为`team.apachecn`。

作者为个人的包，建议前缀为`indi.<作者>`。

## 协议

所有文档一律使用 [CC BY-NC-SA 4.0](../../LICENSE) 协议或更高版本。