Release management #3
IOrlandoni
started this conversation in
Team Posts
Replies: 2 comments
-
Semver seems fine to me. I have also transferred the EIP-PlantUML extension to the orga. There I am already using semver. Should be possible to all extensions, though. Mapping to PlantUML versions does might cause confusion. e.g. if we don’t have to update this would cause gaps and confusion in the versioning between plant and the lib. |
Beta Was this translation helpful? Give feedback.
0 replies
-
I merged all the latest changes in the master branch as a new starting point. Is it ok if I checkout a new branch |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
We need to come up with a proper branching and release strategy for the projects.
@adrianvlupu said:
In my opinion, that would not work in the case where we want to release multiple versions compatible with the same plantuml version.
My suggestion, for your consideration, is standard semver (x.x.x), branching on major releases, releasing/tagging all versions on those branches, and keeping master ahead all the time. This would mean that we could have, for example, the following branches, with the following releases/tags:
master
w/ no releasesreleases/v1
w/ releases and tags:v1.0.0
v1.1.0
releases/v2
w/ releases and tags:v2.0.0-rc1
v2.0.0
v2.0.1
v2.1.0
User standpoint:
You can choose what to include, if you're hotlinking:
Development standpoint:
If we want to release new features/corrections on the existing releases, we must merge the changes to those release branches and then release/tag. We must also merge all changes from release branches into master and never the other way around, since master might have changes from other major releases.
Example flow for a change that we want to apply to all existing major versions, w/ the arrows being PRs:
IOrlandoni/C4-PlantUML/fork-branch
->plantuml-stdlib/C4-PlantUML/releases/v1
->plantuml-stdlib/C4-PlantUML/releases/v2
->plantuml-stdlib/C4-PlantUML/releases/master
This would also mean creating releases/tags on both v1 and v2 branches.
Example flow for a change that we don't want to apply to existing major versions, w/ the arrows being PRs:
IOrlandoni/C4-PlantUML/fork-branch
->plantuml-stdlib/C4-PlantUML/releases/master
When ready for a new major version, we branch from master.
Beta Was this translation helpful? Give feedback.
All reactions