发布周期
发布周期
介绍
Masonite框架本身遵循RomVer版本控制架构,该架构为PARADIGM.MAJOR.MINOR
,所有的Masonite软件包都遵循SemVer版本控制架构,其为MAJOR.MINOR.BUGFIX
。
这意味着1.4.0的框架版本可能会对1.3.20的版本进行重大更改。 Masonite使用6个月的主要发布周期来维持其作为现代Python Web框架的状态。每个版本都是可靠且稳定的版本,通常只需花很少的时间即可进行升级。
使用RomVer胜过SemVer的原因
Masonite 代码仓库(MiraFramework / masonite
repository)仅包含应用程序的基本文件结构。所有核心框架功能都位于MasoniteFramework / core
目录中,该代码仓库每天或每月更新一次。
由于MiraFramework / masonite
不需要重大更新,因此我们可以很好地遵循RomVer,并人为地保持低版本号。此代表的任何重大更新都可能只是文件结构更改,除非进行重大架构更改,才更新版本号。
发布和发布周期
Masonite当前处于6个月的主要发布周期。这意味着六个月后将有一个新的2.x版本。
计划在30分钟或更短的时间内从以前的版本进行升级。如果它们违反了此要求,则应考虑将它们用于下一个发布的版本(x.0.0
版本)
发行计划
- [x] v1.3 - 2018年2月
- [x] v1.4 - 2018年3月
- [x] v1.5 - 2018年4月
- [x] v1.6 - 2018年5月
- [x] v2.0 - 2018年6月
- [x] v2.1 - 2018年12月
- [x] v2.2 - 2019年6月
- [ ] 下一版本 - 2019年12月
创建发布
Masonite由三个不同的版本库组成。 它们是
- 主要的版本库是安装在开发人员系统上的开发环境进行开发的主要代码库。
- 核心代码版本库,这是主要的Masonite pip软件包所在的位置。
- 命令行版本库
如果能够发布所有该版本的代码并且通过测试,之后的6个月发布一个主要的版本。
在新版本中,核心代码库已上传到PyPi。此时,理论上每个人都可以安装该软件包。内核发布后,就会对craft版本进行更新,后续只做可能需要更改的细微更改。这两个代码库完成后,将更新并最终发布masonite存储库。一旦此仓库发布到最新版本,所有将来的项目将默认使用Masonite的最新版本。
之后,我们将在文档中更改Masonite的版本,并验证和更新所有不符合标准的文档。
每当在Github上发布MasoniteFramework / craft
和MasoniteFramework / core
存储库时,Travis CI都会运行测试并自动部署到PyPi。这些主要版本号应与其支持的Masonite版本相对应。例如,如果MasoniteFramework / masonite
发行到1.4版,则无论更改如何,MasoniteFramework / core
都应升至1.4.x。
主存储库和新项目
主存储库为MasoniteFramework / masonite
,没有相应的PyPi软件包,仅用于安装新的Masonite项目。请参见Craft 命令文档中的craft new
命令。craft new
命令将下载最新版本的Masonite的zip,解压缩并重命名该文件夹。一旦准备好该存储库的下一个发行版,它将被发行但被标记为Pre-release
,因此在这之前的无法通过默认的craft new
命令进行安装。
这样开发人员和维护人员将能够使用其应用程序测试新的预发布版本。一旦所有代码检查测试都通过,它将被标记为发布版本,因此所有从那里创建的新应用程序都将是新版本。
开发人员仍然可以选择执行以下操作:craft new project_name --version 1.6
并安装该版本的Masonite。
一旦所有三个代码库都准备好发布,它们将分别以各自的新版本号在GitHub上发布。
本译文仅用于学习和交流目的,转载请务必注明文章译者、出处、和本文链接
我们的翻译工作遵照 CC 协议,如果我们的工作有侵犯到您的权益,请及时联系我们。