Release plan: Difference between revisions

Jump to navigation Jump to search
A bit of cleanup in the first paragraph
(A bit of cleanup in the first paragraph)
Line 1: Line 1:
{{GitStatus}}
{{GitStatus}}


This page contains details about how to release a new version of [[FlightGear]] into the wild. It is a continous work in progress to be improved with every new release.  
The '''release plan''' is the process by which a new version of [[FlightGear]] is released. The release plan is actually a continual work-in-progress, and is refined with every new release.


[[File:ReleasePlan.jpg|thumb|250px|The original plan]]
[[File:ReleasePlan.jpg|thumb|250px|The original plan]]
This '''release plan''' was originally developed by Mathias Fröhlich, Martin Spott, Thorsten Brehm and Torsten Dreyer during LinuxTag 2011.
The current release plan was originally developed by Mathias Fröhlich, Martin Spott, Thorsten Brehm and Torsten Dreyer during LinuxTag 2011.


If you think you have something to contribute to the release process, feel free to <span class=plainlinks>[{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|action=edit}} edit this page]</span>. In particular, improvements should be based on [[Release plan/Lessons learned]] from past releases. Please discuss this concept at the mailing-list.
If you think you have something to contribute to the release process, feel free to <span class="plainlinks">[{{fullurl:{{FULLPAGENAME}}|action=edit}} edit this page]</span>. In particular, improvements should be based on [[Release plan/Lessons learned|lesson learned]] from past releases. Please discuss this concept on the [[mailing list]].


== General release concept ==
== General release concept ==
New FlightGear releases are scheduled twice a year. The magic number to remember is 17 (we tried 42, but that didn't turn out so well. 17 is perfect: 1 is not a prime, 7 is a prime and so is 17). On the 17th of January (1) and July (7) a new release branch is created for [[SimGear]], FlightGear and FGDATA.  
New FlightGear releases are scheduled twice a year. The magic number to remember is 17. On the 17th of January (the first month) and July (the seventh month), a new release branch is created for [[SimGear]], the FlightGear source, and [[fgdata]].  


{{cquote|As a clarification: We do not enter a code freeze but a feature freeze. Code changes are welcome after December 17th as long as it is guaranteed (not just "unlikely") that they do not introduce any side effects and become a release blocker. It is the sole responsibility of the commiter to decide if that is the case or not. Every new feature that didn't make it into the respository by the deadline may probably easily wait for another four weeks to get commited. Remember: most aircraft are not affected by the feature freeze and aircraft developers quickly adopt and use new features as they become available<ref>{{cite web |url=http://www.mail-archive.com/flightgear-devel@lists.sourceforge.net/msg38749.html|title=<nowiki>[Flightgear-devel] Next FlightGear release (Feb. 17 2013)</nowiki>|author=Torsten Dreyer|date=16 November 2012}}</ref>|Torsten Dreyer}}
{{Cquote
|As a clarification: We do not enter a code freeze but a feature freeze. Code changes are welcome after December 17th as long as it is guaranteed (not just "unlikely") that they do not introduce any side effects and become a release blocker. It is the sole responsibility of the committer to decide if that is the case or not. Every new feature that didn't make it into the repository by the deadline may probably easily wait for another four weeks to get committed. Remember: most aircraft are not affected by the feature freeze and aircraft developers quickly adopt and use new features as they become available
| {{cite web
  | url   = http://www.mail-archive.com/flightgear-devel@lists.sourceforge.net/msg38749.html
  | title = <nowiki>[Flightgear-devel] Next FlightGear release (Feb. 17 2013)</nowiki>
  | author = Torsten Dreyer
  | date   = 16th Nov 2012
  }}
}}


After branching, there is one month for bug fixing in the release branch, so building and packing of the binaries and FGDATA takes place around February, 18th and August, 18th. Allowing a few days for distribution of the files, new versions should be publically available around the 20th of February and August.
After branching, there is one month for bug fixing in the release branch, so building and packing of the binaries and fgdata takes place around the 18th of February and the 18th of August. Allowing a few days for distribution of the files, new versions should be publicly available around the 20th of February and August.


The development stream of SimGear, FlightGear, FGRun and FGDATA is set into a frozen state one month before the branch-day (17th), to let the dust of development settle and to allow fixing the most annoying bugs in the code. During this period, developers should not add any new features, subsystems, and the like. Immediately after the stream has branched for the release, development in the main stream (next/master) is open for major changes until one month before the next branch-day. This results in a duty cycle of 5 month developing and 1 month thinking.
The development stream of [[SimGear]], FlightGear, and fgdata is set into a frozen state one month before the branch-day (17th), to let the dust of development settle and to allow fixing the most annoying bugs in the code. During this period, developers should not add any new features, subsystems, and the like. Immediately after the stream has branched for the release, development in the main stream (next/master) is open for major changes until one month before the next branch-day. This results in a duty cycle of 5 month developing and 1 month thinking.


== Version numbers ==
== Version numbers ==

Navigation menu