title: Version and New Feature Specification sidebar_position: 8
1. New version specification
When you need a new version, you need to follow the steps below:
- [Mandatory] The new version must be organized for PMC members and developers to discuss, and meeting minutes must be recorded and sent to the mailing list
- [Mandatory] The scope of the new version of the feature list requires email voting. 3+ PMC members approval is required and the approval votes are greater than the negative votes
- [Mandatory] After the version is voted on, the corresponding version needs to be established on GitHub Project
- [Mandatory] Each feature needs to send a separate mailing list to explain the design reasons and design ideas
- [Mandatory] The mailing list needs to be sent to installation, database, configuration modification
- [Recommended] One feature corresponds to one issue corresponds to one PR
- [Mandatory] Each version requires CICD to pass and test cases to pass before the version can be released
- [Constraints] Each version needs to have a corresponding leader, and the leader needs to manage related issues and PRs, and hold discussions, actively respond to emails, confirm plans, track progress, etc.
2. New feature specification
When you add new features, you need to follow the steps below:
- [Mandatory] New features need to send emails to vote, and attach design reasons and design ideas
- [Mandatory] New features need to be added to the version corresponding to GitHub Project
- [Mandatory] The mailing list needs to be sent to installation, database, configuration modification
- [Mandatory] New features must add new documents
- [Mandatory] New features need to add corresponding unit tests, Unit Test Specification
- [Recommended] One feature corresponds to one issue corresponds to one PR