-
Notifications
You must be signed in to change notification settings - Fork 301
Version bump
Rubberduck uses (or tries to) a semantic versioning pattern.
[Major].[Minor].[Revision].[Build]
The build number is incremented automatically by the AppVeyor CI build server; the number represents the number of builds completed (successfully or not) on our continuous integration service, at least since the last time the counter was reset (it was reset at some point early in the 2.x cycle). These builds are entirely automated and an automatic pre-release tag is created every time, whenever a pull request is merged against the [next] branch. When reporting an issue found in the latest green release, make sure the issue can be reproduced with the latest pre-release build.
The revision number is incremented manually for a "hotfix" green-release. These builds enhance the latest minor version mostly through bug fixes, but enhancements to existing features can go in as well.
The minor number is incremented manually for a "minor" green-release. These builds introduce new features, and include all the commits made to [next] since the last minor update.
The major number is incremented manually for a "major" green-release. These builds introduce new features, and include all the commits made to [next] since the last major update. The last "major" version bump was from v1.4.3 to v2.0, when the entire backbone of the add-in was refactored to DI/IoC and the entire UI was redesigned with WPF. The next "major" version would be when we are ready for the next paradigm-shifting update of our internal APIs. Given the current roadmap, that would be when Rubberduck introduces its own code pane.
Merges to [next] are automatically handled. Before any merge to [master], a "version bump" pull request must be merged into [next], as close as possible to the last commit before a pull request is opened to merge [next] into [master].
The title of the pull request must state the new version, e.g.:
Changes build version to 2.3.1.x
The the following files must be in the diff of that pull request:
- The appveyor.yml configuration file determines the version used by the CI server. The version number at line 1 must be changed.
- The version number at line 20 of RubberduckBaseProject.csproj must be incremented.
- The assembly version attribute at line 15 of Rubberduck.Core.csproj must be incremented.
rubberduckvba.com
© 2014-2021 Rubberduck project contributors
- Contributing
- Build process
- Version bump
- Architecture Overview
- IoC Container
- Parser State
- The Parsing Process
- How to view parse tree
- UI Design Guidelines
- Strategies for managing COM object lifetime and release
- COM Registration
- Internal Codebase Analysis
- Projects & Workflow
- Adding other Host Applications
- Inspections XML-Doc
-
VBE Events