From c12275858b5fac5afddd213931d66e065cebab0d Mon Sep 17 00:00:00 2001 From: Leif Hedstrom Date: Mon, 30 Jan 2023 15:38:47 -0700 Subject: [PATCH] Update the roadmap / branch management doc page --- doc/release-notes/images/branch_mgmt.png | Bin 0 -> 31845 bytes doc/release-notes/roadmap.en.rst | 86 ++++++++++++++--------- 2 files changed, 54 insertions(+), 32 deletions(-) create mode 100644 doc/release-notes/images/branch_mgmt.png diff --git a/doc/release-notes/images/branch_mgmt.png b/doc/release-notes/images/branch_mgmt.png new file mode 100644 index 0000000000000000000000000000000000000000..d24817da7a97382ee8c3997820ba50000bdd5fbb GIT binary patch literal 31845 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�+X|<;ypUc7}duya(Ov)8{|Fqlg8!qag zP<9vT5iBjer7?lz0Z{c=eYg~BscQ5F*j;*G>eAEss{&SRRn3%pUH~+P7Fg!_l>%+8 zpMNeUVKLeKiN}EH=#^Ow@xSJSBv_6Ff6BLw7L60I?A=y4$f69VCM&hI+Dd&3Lw)B{ z#cIs172mmk-YHda9(+&`S?n8gq!DzJv5RJ_eK8Oq6Y$%z4=0PKmC#Rjd2{)$tc6wl3wAGLv@`1h8!Gd+$hsb zk;miPx^CZtDzvC1d6C(r=2_<$UT~2nah;AVnQ@Uj+KAfbJ&pY>j5Xz zQrri}M9C3FO5HW5qY27?4|%3N34Wc?P+URZtU?P%YZR;e&-WH^pcFP1K|K{PWH@U` zTUwI^H$+LwH9@EHpi^Ye@~!1i7ibq6opUV zVCa=TvwQ&S0y@6ztAEc2A^br@US3u?kswL!PZR2&pwtrq0r3C-RFYsCxM5KjWz6x< za-u>}27`B6Cdirr6ZYW4Ao?oxH(#KIpyeXwI~1)453|mIJ{CGhQbxqfptC!}mihjG zPbJ(OXFJ$5rY@*XEcCkUTy6pF-;WsFs7QcY1RKpXSzqCBWt~b8?7hm*@a%(%R(;8B zCy5*Y*&VP;s91$!`37_~+<+4Z8WYMmD+o&Jn>+bcH4_x7F@|Lr z2xPn8Uq<>JK>XXR6hV1v#$Ab!;x~drj^a68AplBb?N5CI<=+4(CtvF86iUUU7Vwbr z{quKG_J~0BGJ_wZ6XThl_@}^=7E@1@a!%_}y zBv=RhgnXpVWx@@#mL1d^&_v?Fjko}&yH>%MYbQZ8f^+Rh?SzHbBa-kk2;p&IuPWr zV=MGPz+7Hc_+Y5y_^8V=z{_XD@#U|qT zBJ=J!8NTL5CeGliWnk6RNPt7!+nO|mYVp}tSwR)KP0IB1-fav<$^3z5`InyD%mMKV`B%b0 zFw^B9`d^#{vHGay1vO2j**7tlHnRc!^QUV8Wu;*`?O)SGcgS&^BQm`GpQxnBW`gcl zx;@xv)DOzFgCDU%Rk~2G#m?AuO;6TC?<&f!1!eLxD48^~Tn*Ui3)``=E)H4z*ntatoxr z{c8ZoYZX~2pr}=lKrSHoW0Q=W$-NvwUyl&YpI?qjJ##~5!P01MmgB|a8v!`v(l7>^ zPuilK3;VdnG5W&nSec?$>%&R5mPYZ901@jZ3|N6pRwHu86f+69kI?*01mqs{(5cqWcblIl#I6{&|a43SD?GA4{kq#GE{Ja1g z;X(S=*LN5yNDiT}AqB1O1YBeTr17gitkOuYKEm_7G}w%D^l@--XuL$#+~54jRcVo} z=6HUb^vJig!_qUkdVD^drX){GxUM#tFOpqgxKKQ{>&FGAKja5DuYMVBcbZA-8Z2=4 ze)8(>4e$&aX2?!fd>GHnUdLdnOm>)7N1l-A*KePW1aJ9#_4yj_J?r);HI&UtGQIMm zlUQoJk#=w1h2lh+Q*^m%bt^Q4O2!+Ro%)-Mfg2Cbq#rQl!+|w>= zk24R%waX`p4fqS+n+wyEb&YR$YdjqeX3@TP?)X%-nQ(+isMTj3XGuZdc-lLg*I%{I zf4}(vQ=~cOd~(m_PL4u>QrF9`Zsp8JO`Ef9kNtip*w$DO(|dnmZ^2zHb-H6g-U3aOX52~gHLZP2ipYt9wqw~FV~}|7T>j>L zXUX(vb%TyqlS2K9OYUc9JsX%~RPgv*86mz|ThH=|4XU5lQ@Q67zkCV{47}#|?Wf%T z4y+E_S=6T6A~&6_!Ta#0V-M1XYc}s^d97dh;wNi!|G7hgXrzSoYurKh+;oxfTkqaf zUq6-ku*+AhPT+rsEVK0ldU(R|rf85k-Cv(9Pl$W|h2`(R2-ZTI)%M&PQuu3TdzykC zV&|R^o_X?T2H=BJNf=CR+gI6s&k6EXOXjUFIJRFAJh=2{P3XwO=N%Ffv${(4*NDCo pwsgGn-<6=}<^MCKnesfSV-9|O@r~;fj0EsY9eYl>Owlsr{{dsLiNOE> literal 0 HcmV?d00001 diff --git a/doc/release-notes/roadmap.en.rst b/doc/release-notes/roadmap.en.rst index 7afb416ad1f..4c122686c8f 100644 --- a/doc/release-notes/roadmap.en.rst +++ b/doc/release-notes/roadmap.en.rst @@ -31,53 +31,75 @@ our `download page `_ to see the current supported versions. -For details on the actual developer release process, See - Versions, compatibility and schedules ------------------------------------- -1. We promise to make 1 major release every two years, but the RM and +1. We aim to make 1 major release every two years, but the RM and community can of course make more as necessary. -2. We only make releases off the LTS branches, which are cut every 2 years - off the master branch. -3. Master is always open, for any type of change (including incompatible - changes). But don't break compatibility just for fun! +2. We cut LTS major and minor releases striaght off the master branch. + We will make release branches in a timely manner before making any + release candidates. +3. Master is always open for compatible changes. 4. Master is always stable, i.e. commits should be properly tested and reviewed before committed to master. -5. All releases are stable releases, following strict Semantic Versioning. -6. Minor and patch releases are made at the discretion of the community and +5. Incompatible changes must be made on the current ``-dev`` branch. +6. All releases are stable releases, following strict Semantic Versioning. +7. Minor and patch releases are made at the discretion of the community and the RM. -7. Minor releases can include new (small / safe) features, but must be +8. Minor releases can include new (small / safe) features, but must be compatible within the LTS major version. -8. The LTS cycle, 4 years, does not reset when we make a minor release. -9. The goal is that within a major LTS version, only one minor version is - continuously supported. For example, if we have made a v9.1.2, and the - RM makes a v9.2.0 release, do not expect any more releases of v9.1.x. - The exception here would be serious issues, or security problems. +9. The LTS cycle, approximately 4 years, does not reset when we make a minor + release. +10. The goal is that within a major LTS version, only one minor version is + continuously supported. For example, if we have made a v9.1.2, and the + RM makes a v9.2.0 release, do not expect any more releases of v9.1.x. + The exception here would be serious issues, or security problems. + +Branch Management +----------------- + +As of `v10.0.0`` and forward, we will cut all major and minor branches off +the main branch (master). The ``-Dev`` branch will be used for incompatible +changes, and will be merged into master when the next major release is +in progress. + +.. figure:: images/branch_mgmt.png + :align: left + +The implication of this new process is that we will no longer cherry pick +PRs from master to a release branch. Rather, each major and minor release +is taken whole sale from the master branch. For managing your PRs, this means: + +1. You do not need to nominate your PR for a backport to a minor release, unless + the release branch has been cut. A goal here is that the release branches + are stable in preparation of the minor release, while master is still open. +2. An exception for this are the older LTS releases and minor critical fixes. + For such changes, always nominate your PR for backport to those Projects. +3. The default ``Milestone`` changes for every major and minor release. For + example, if the current LTS release is `10.0.1`, the milestone for all new + PRs will be `10.1.0` going forward. +4. We will create tags on the master branch regularly, for coordinating testing + efforts. These are not releases! +5. We will regularly (weekly) merge master to the current ``-Dev`` branch, + to keep them in sync. + +It is absolutely critical that everyone sets the ``Milestone`` and ``Project`` +fields appropriate in this process. This is how we will manage the releases! Current Release Schedule and support ------------------------------------ +Master is currently targeted for our first `v10.0.x` release. When this branch +is created, the new process kicks in and ``Milestones`` must follow the +next minor release number (e.g. `10.1.0`). + .. figure:: images/roadmap.png - :align: center + :align: left **Note:** These are examples, only the first minor release number of each major LTS branch is guaranteed to be made. The dates for point releases are also for illustration. -How? ----- - -As you can see, we no longer make any sort of development releases. Also, -there's no longer a backport voting process! The latter means that all -developers and users must make a higher commitment to reviewing changes as -they go into master and the incompatible release branch. Other than that, -it's pretty much business as usual, but easier for everyone involved. -This git branch diagram shows an example how the git tree will be managed: - -.. figure:: images/git-versions.svg - :align: center - Burning release numbers, or how our release process works --------------------------------------------------------- @@ -109,9 +131,9 @@ Release Managers ======= ======= ========= =========== ========= Version Primary Secondary 1st Release Supported ======= ======= ========= =========== ========= -8.x Evan Leif 8/2018 1/2022 -9.x Leif Bryan 1/2020 1/2024 -10.x TBD TBD 1/2022 1/2026 +8.x Evan Leif 8/2018 3/2023 +9.x Evan Bryan 1/2020 3/2025 +10.x Leif Bryan 3/2023 3/2027 ======= ======= ========= =========== =========