You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 31 Next »

In mid-2018 there was a decision to move towards a time-based, quarterly release schedule for Apache NetBeans releases.  This schedule brings that into affect, starting from Apache NetBeans 11.1, and retrospectively designates Apache NetBeans 11.0 as an LTS release.

End 2019 lazy decision to shift release by one month, to avoid end of year period.

Schedule

DateDescriptionrelease 12release 13
February 21st

NB <version+1>.0 merge window opens.
(NB <version+1>.0 is consolidation of feature releases, as few new features as possible.)
NetCAT announced and signups begin.
NetCAT test spec review starts.



March 15thFeature freeze. Merge window closes.
Release branch <version+1>.0 created and beta build(s) made available.
When Beta 1 is available, NetCAT testing phase starts.


April 30thNetCAT testing ends.
NetCAT community acceptance vote.


May 7thNB <version+1>.0 voting candidate created and release vote commences.

May 15th - 31stNB <version+1>.0 LTS released.

LTS

NetBeans 12.0  (in 2020)

LTS

NetBeans 13.0  (in 2021)

May 21st

NB <version+1>.1 merge window opens.




July 15thFeature freeze. Merge window closes. Only fixes intended for next release to be merged into master.
Release branch <version>.1 created and beta build(s) made available.  NetCAT lite???


August 7thNB <version>.1 voting candidate created and release vote commences.

August 15th - 31stNB <version>.1 released.
e.g., https://netbeans.apache.org/download/nb111/nb111.html
NetBeans 12.1 (in 2020)NetBeans 13.1 (in 2021)
August 21stNB <version>.2 merge window opens.

October 15th

Branching for <version>.2 delivery branch created, version bump on master
Release branch <version>.2 created and beta build(s) made available.



October 22nddelivery → master branch merge, delivery → release branch merge
publish beta2


October 29th

delivery → master branch merge, delivery → release branch merge

publish beta3



November 7th

delivery → master branch merge, delivery → release branch merge

NB <version>.2 voting candidate created and release vote commences.

NetBeans 12.2  (in 2020)NetBeans 13.2 (in 2021)
November 15th - 30thNB <version>.2 released.

January 15th

Release branch <version>.3 created and beta build(s) made available.

Version bump on master



January 22nd<release branch> → master merge
publish beta2


January 29th

<release branch> → master merge

publish beta3



February 7thNB <version>.3 voting candidate created and release vote commences.

February 15th - 30thNB <version>.3 released.
(Start NetCAT with this release here? Answer: No, for 12.0. Reconsider for 13.0.)
NetBeans 12.3 (in 2021)NetBeans 13.3 (in 2022)

NB. The dates here are deliberately mid-month, two weeks after previously suggested.  Because no-one wants to do a release on New Years Eve, and it potentially gives a little more leeway in releasing / testing with JDK releases.

Key points

  • Four releases a year on known dates (within reason, weekends, blockers, etc.).
  • Everything merged to master at all times is intended and ready to be included in the next scheduled release.  No or minimal cherry-picking to release branches.  Keep master releasable.
  • Each release has a fixed and well known feature-freeze date. Features may be targetted for releases, but no promises are made of features being included unless they have been merged to master by that date.
  • Merging earlier rather than later in the merge window is to be encouraged!
  • After the feature freeze date only fixes intended for the release should be merged to master until the next feature window opens. Aside from any release-specific commits, the release branch will be kept in sync with master.
  • All fixes merged to master after the feature-freeze date should be made in accordance with the Bug Priority Guidelines
  • One release a year is designated a long-term / extended support version -
    • Only this release has a full NetCAT process, and subsequently a much shorter (month less) merge window to accommodate it (and because the emphasis for this release should be on fully stabilising features added in the previous 3 releases).
    • For 9 months of the year that means that people have a choice of two downloads (need to consider how to describe that, and what if any infrastructure concerns that brings?).  NetBeans 11.0 remains available until April 2020.
    • Minimal serious bug fixes might be backported to the LTS release and pushed via UC, taking into account the Bug Priority Guidelines (critical or blocker affecting significant users?) These should be done on the relevant release branch.
    • Users needing features should be encouraged on to the faster release train, and help test those features before next LTS.
    • Major version number is incremented for LTS.  So NetBeans 12.0 would be in April 2020.  Perhaps counter-intuitively the major version number would be increased for the versions with least new features. (Consider NetBeans 11.1 equivalent to NetBeans 11 feature update 1?)

Details, notes, and discussions: Notes and Discussions on the Release Schedule

  • No labels