Branches and releases

How works Talend Open Studio release system? What is the difference between the release 2.0.1 and milestone 2.1.0M2?

Summary

A release is a kind of snapshot at a precise instant. Release 2.0.2 will never be modified. If needed, a release 2.0.3 will appear. The snapshot is taken on a branch, release 2.0.2 is a snapshot taken on branch 2.0. A branch evolves : improvement and bug fixing. But a branch does not move considering its features : there should be no additionnal features in release 2.0.3 than in release 2.0.2, only code improvement, bug fixing and so on.

Graph

Here is an ASCII art graph of branches an releases :

+-------+
| trunk |
+-------+
    |
    |
    |
    +----------- BRANCH 1.0 ----------+
    |                                 | <- 1.0.0 51 2006-10-03
    |                                 | <- 1.0.1 759 2006-11-28
    | <- 1.1.0M1  761 2006-11-28
    | <- 1.1.0M2  864 2006-12-06
    | <- 1.1.0M3  1021 2006-12-13
    | <- 1.1.0RC1 1213 2006-12-27
    |
    +----------- BRANCH 1.1 ----------+
    |                                 | <- 1.1.0 1311 2007-01-05
    | <- 2.0.0M1  2188 2007-02-27
    | <- 2.0.0M2  2461 2007-03-14
    | <- 2.0.0M3  2704 2007-03-27
    | <- 2.0.0RC1 2928 2007-04-04
    |
    +----------- BRANCH 2.0 ----------+
    |                                 | <- 2.0.0 3134 2007-04-18
    |                                 | <- 2.0.1 3462 2007-05-15
    | <- 2.1.0M1  3483 2007-05-16     |
    |                                 | <- 2.0.2 3513 2007-05-21
    |                                 | <- 2.0.3 3791 2007-06-12
    | <- 2.1.0M2  3967 2007-06-21
    | <- 2.1.0RC1 4264 2007-07-04
    |
    +----------- BRANCH 2.1 ----------+
    |                                 | <- 2.1.0 4515 2007-07-11
    |                                 | <- 2.1.1 4583 2007-07-15
    | <- 2.2.0M1  5127 2007-08-10     |
    |                                 | <- 2.1.2 5184 2007-08-14
    |                                 | <- 2.1.3 5286 2007-08-22
    | <- 2.2.0M2  5454 2007-09-03     |
    |                                 | <- 2.1.4 5618 2007-09-17
    | <- 2.2.0RC1 5798 2007-09-21
    |
    +----------- BRANCH 2.2 ----------+
    |                                 | <- 2.2.0 6191 2007-10-08
    |                                 | <- 2.2.1 6584 2007-10-26
    | <- 2.3.0M1  7019 2007-11-15     |
    |                                 | <- 2.2.2 7074 2007-11-16
    |                                 | <- 2.2.3 7292 2007-11-29
    | <- 2.3.0M2  7640 2007-12-18     |
    |                                 | <- 2.2.4 7943 2008-01-07
    |
    | <- 2.3.0RC1 8112 2008-01-15
    | <- 2.3.0RC2 8292 2008-01-22
    | <- 2.3.0RC3 8443 2008-01-29
    |
    +----------- BRANCH 2.3 ----------+
    |                                 | <- 2.3.0 8623  2008-02-05
    |                                 | <- 2.3.1 11695 2008-02-25
    |                                 | <- 2.3.2 12698 2008-03-25
    | <- 2.4.0M1  13097 2008-04-08    |
    | <- 2.4.0M2  13443 2008-04-21    |
    |                                 | <- 2.3.3 13873 2008-05-07
    |
    | <- 2.4.0RC1 13964 2008-05-09
    | <- 2.4.0RC2 14257 2008-05-21
    | <- 2.4.0RC3 14571 2008-05-30
    |
    +----------- BRANCH 2.4 ----------+
    |                                 | <- 2.4.0 14858 2008-06-06
    |                                 | <- 2.4.1 16077 2008-07-09
    | <- 3.0.0M1  16339 2008-07-21    |
    | <- 3.0.0M2  16767 2008-08-05    |
    | <- 3.0.0M3  17341 2008-08-28    |
    |                                 | <- 2.4.2 17347 2008-08-28
    | <- 3.0.0RC1 17920 2008-09-17    |
    |                                 |
    |                                 +------------------------------+
    |                                                                |
    +----------- BRANCH 3.0 ----------+                              |
    |                                 | <- 3.0.0 18993 2008-10-15    |
    |                                 |                              | <- 2.4.3 19058 2008-10-17
    |                                 | <- 3.0.1 19980 2008-11-10    |
    |                                 | <- 3.0.2 20205 2008-11-19    |
    |                                 |                              | <- 2.4.4 20534 2008-12-08
    |                                 | <- 3.0.3 21383 2009-01-30
    | <- 3.1.0M1  22164 2009-02-26    |
    |                                 | <- 3.0.4 22547 2009-03-18
    | <- 3.1.0M2  22765 2009-03-18    |
    | <- 3.1.0M3  22953 2009-03-23    |
    | <- 3.1.0RC1 23203 2009-04-01    |
    | <- 3.1.0RC2 23530 2009-04-10    |
    | <- 3.1.0RC3 23793 2009-04-17    |
    |                                 |
    |                                 +------------------------------+
    |                                                                |
    +----------- BRANCH 3.1 ----------+                              |
    |                                 | <- 3.1.0 24382 2009-05-05    |
    |                                 |                              | <- 3.0.5 24802 2009-05-18
    |                                 | <- 3.1.1 24830 2009-05-19
    |                                 | <- 3.1.2 25815 2009-06-21
    |                                 | <- 3.1.3 26090 2009-06-30
    | <- 3.2.0M1  26328 2009-07-07    |
    | <- 3.2.0M2  27165 2009-08-06    |
    | <- 3.2.0M3  28760 2009-08-26    |
    | <- 3.2.0RC1 29643 2009-09-11    |
    |                                 | <- 3.1.4 29781 2009-09-17
    |
    +----------- BRANCH 3.2 ----------+
    |                                 | <- 3.2.0 30698 2009-10-05
    |                                 | <- 3.2.1 31371 2009-10-22
    |                                 | <- 3.2.2 33000 2009-11-20
    | <- 4.0.0M1  33789 2009-12-08    |
    |                                 | <- 3.2.3 35442 2010-01-11
    | <- 4.0.0M2  35653 2010-01-14
    | <- 4.0.0M3  37014 2010-02-08
    | <- 4.0.0RC1 38438 2010-03-12
    | <- 4.0.0RC2 38885 2010-03-22
    | <- 4.0.0RC3 39916 2010-03-29
    |                                                                
    +----------- BRANCH 4.0 ----------+
    |                                 | <- 4.0.0 39896 2010-04-06
    |                                 | <- 4.0.1 41260 2010-04-28
    |                                 | <- 4.0.2 43696 2010-06-06
    | <- 4.1.0M1  43983 2010-06-11    |
    | <- 4.1.0M2  45078 2010-07-06    |
    | <- 4.1.0M3  46036 2010-07-27    |
    | <- 4.1.0M4  46802 2010-08-14    |
    |                                 | <- 4.0.3 47759 2010-09-03
    | <- 4.1.0RC1 48034 2010-09-08
    | <- 4.1.0RC2 48628 2010-09-20
    | <- 4.1.0RC3 48998 2010-09-27
    |
    +----------- BRANCH 4.1 ----------+
    |                                 | <- 4.1.0 49467 2010-10-05
    |                                 | <- 4.1.1 50363 2010-10-22
    | <- 4.2.0M1 52549 2010-12-12     |
    |                                 | <- 4.1.2 53616 2011-01-06
    | <- 4.2.0M2 53829 2011-01-13     |
    | <- 4.2.0M3 54685 2011-01-31     |
    | <- 4.2.0M4 55913 2011-03-01     |
    | <- 4.2.0RC1 57577 2011-03-28    |
    | <- 4.2.0RC2 58358 2011-04-12    |
    | <- 4.2.0RC3 59036 2011-04-22    |
    |                                 |
    |                                 +------------------------------+
    |                                                                |
    +----------- BRANCH 4.2 ----------+                              |
    |                                 | <- 4.2.0 59885 2011-05-05    |
    |                                 | <- 4.2.1 60995 2011-05-24    |
    |                                 |                              | <- 4.1.3 62258 2011-06-13
    |                                 | <- 4.2.2 63143 2011-06-22
    | <- 5.0.0M1 64233 2011-07-12     |
    | <- 5.0.0M2 65004 2011-07-28     |
    | <- 5.0.0M3 66102 2011-08-16     |
    |                                 | <- 4.2.3 67267 2011-09-06
    | <- 5.0.0M4 67624 2011-09-09     |
    | <- 5.0.0M5 69141 2011-09-29     |
    | <- 5.0.0RC1 70559 2011-10-21    |
    | <- 5.0.0RC2 71327 2011-11-03    |
    | <- 5.0.0RC3 72225 2011-11-14    |
    | <- 5.0.0 72978 2011-11-28       |
    |                                 |
    |                                 +------------------------------+
    |                                                                |
    +----------- BRANCH 5.0 ----------+                              |
    |                                 | <- 5.0.1  74687 2011-12-16   |
    |                                 |                              | <- 4.2.4 76583 2012-01-12
    |                                 | <- 5.0.2  78327 2012-02-17
    | <- 5.1.0M1  79245 2012-03-06    |
    | <- 5.1.0M2  80439 2012-03-28    |
    | <- 5.1.0RC1 81684 2012-04-16    |
    | <- 5.1.0    82787 2012-05-07    |
    |                                 +------------------------------+
    |                                                                |
    +----------- BRANCH 5.1 ----------+                              |
    |                                 | <- 5.1.1  84309 2012-05-31   |
    |                                 |                              | <- 5.0.3  86507 2012-06-30
    | <- 5.2.0M1  86684 2012-07-05    |
    | <- 5.2.0M2  88087 2012-07-26    |
    | <- 5.2.0M3  89249 2012-08-17    |
    | <- 5.2.0M4  90320 2012-09-09    |
    |                                 | <- 5.1.2  90681 2012-09-17
    | <- 5.2.0RC1 91494 2012-10-01    |     
    | <- 5.2.0RC2 92176 2012-10-16    |    
    | <- 5.2.0    92826 2012-10-26    | 
    |                                 |
    |                                 +-----------------------------+
    |                                                               |
    +----------- BRANCH 5.2 ----------+                             |
    |                                 | <- 5.2.1  95165 2012-12-18  |
    |                                 |                             | <- 5.1.3  96646 2013-01-18
    | <- 5.3.0M1   96946 2013-01-18   | 
    | <- 5.3.0M2   97954 2013-02-08   |
    |                                 | <- 5.2.2  99271 2013-03-08
    | <- 5.3.0M3   99274 2013-03-08   |
    | <- 5.3.0RC1 100420 2013-04-02   |
    | <- 5.3.0RC2 101011 2013-04-10   +-----------------------------+                             
    | <- 5.3.0    101800 2013-04-24                                 |
    +----------- BRANCH 5.3 ----------+                             |
    |                                 | <- 5.3.1 104014 2013-06-19  |
    |                                 |                             | <- 5.2.3 105372 2013-07-18
    | <- 5.4.0M1  105421 2013-07-19   |
    | <- 5.4.0M2  106416 2013-08-09   |
    | <- 5.4.0M3  107267 2013-08-29   |
    | <- 5.4.0RC1 108625 2013-09-27   |
    | <- 5.4.0    110020 2013-10-28   +---------------------------------------------+
    |                                                                               |
    +----------- BRANCH 5.4 -----------------+                                      |
    |                                        | <- 5.4.1 111943 2013-12-17           |
    |                                        |                                      | <- 5.3.2 113626 2014-01-29
    |                                        | <- 5.4.2 117442 2014-05-18                            
    |
    |
    +----------- BRANCH 5.5 -----------------+                             
    |                                        | <- 5.5.0 117820 2014-05-26
    | <- 5.6.0M1  118307 2014-06-05          |  
    |                                        | <- 5.5.1 118616 2014-06-24
    |                                        |
+------------------------+                   |
| master (Git migration) |                   |
+------------------------+                   |
    |                                        |
    | <- 5.6.0M2  20140703_0659 2014-07-07   |
    | <- 5.6.0M3  20140806_1834 2014-08-12   +--------------------------------------+
    |                                                                               |      
    +-------- BRANCH maintenance/5.6 --------+                                      |
    |                                        | <- 5.6.0M4  20140904_1841 2014-09-05 |
    |                                        | <- 5.6.0RC1 20140925_2024 2014-09-26 |
    |                                        | <- 5.6.0    20141024_1545 2014-10-27 |
    |                                        | <- 5.6.1    20141207_1530 2014-12-11 |
    | <- 6.0.0M1  20150116_1241 2015-01-20   |                                      |
    |                                        |                                      | <- 5.5.2 20150128_1740 2015-02-01
    | <- 6.0.0M2  20150211_1538 2015-02-13   |
    | <- 6.0.0M3  20150311_1626 2015-03-11   |
    | <- 6.0.0M4  20150408_1742 2015-04-09   |
    | <- 6.0.0M5  20150507_2137 2015-05-12   | <- 5.6.2    20150508_1414 2015-05-12
    | <- 6.0.0RC1 20150605_1406 2015-06-08   |
    | <- 6.0.0    20150702_1326 2015-07-03   |
    | <- 6.0.0EP  20150702_1518 2015-07-03   +-------------------------------------+
    |                                                                              |
    +-------- BRANCH maintenance/6.0 --------+                                     |
    |                                        |                                     |
    | <- 6.1.0M1  20150812_1515 2015-08-13   |                                     |
    | <- 6.1.0M2  20150902_1604 2015-09-03   |                                     |
    |                                        | <- 6.0.1   20150908_1633 2015-09-15 |
    | <- 6.1.0RC1 20150924_1412 2015-09-25                                         |
    | <- 6.1.0    20151029_1337 2015-10-30                                         |
    | <- 6.1.0EP  20151029_1637 2015-10-30                                         |
    |                                                                              |
    +-------- BRANCH maintenance/6.1 --------+                                     |
    |                                        | <- 6.1.1   20151214_1327 2015-12-16 |
    | <- 6.2.0M1  20160113_1234 2016-01-14   |                                     |   
    |                                        |                                     | <- 5.6.3 20160127_1448 2016-02-02
    | <- 6.2.0M2  20160217_1258 2016-02-18   |
    | <- 6.2.0M3  20160317_1358 2016-03-18   |
    | <- 6.2.0RC1 20160414_1249 2016-04-15   |
    | <- 6.2.0    20160510_1709 2016-05-13   |
    | <- 6.2.0EP  20160510_1929 2016-05-13   +-------------------------------------+
    |                                                                              |
    +-------- BRANCH maintenance/6.2 --------+                                     |
    |                                        | <- 6.2.1   20160704_1411 2016-07-06 |
    | <- 6.3.0M1  20160803_1127 2016-08-04   |                                     |
    | <- 6.3.0M2  20160901_1543 2016-09-02   |                                     |
    |                                        |                                     | <- 6.1.2 20160912_1228 2016-09-14
    | <- 6.3.0RC1 20160928_1335 2016-09-29   |
    | <- 6.3.0    20161026_1219 2016-10-28   |
    | <- 6.3.0EP  20161026_1012 2016-10-28   |
    | <- 6.3.1    20161216_1026 2017-01-20   |
    |                                        | <- 6.2.2   20170124_1318 2017-01-30
    |
    +-------- BRANCH maintenance/6.3 --------+
    |                                        |
    | <- 6.4.0M1  20170214_1432 2017-02-16   |
    | <- 6.4.0M2  20170315_1443 2017-03-15   |
    | <- 6.4.0RC1 20170412_1448 2017-04-12   |
    | <- 6.4.0/EP 20170510_1410 2017-05-12   |
    | <- 6.4.1    20170623_1246 2017-06-30   |                                        
    |                                        +-------------------------------------+
    |                                                                              |
    +-------- BRANCH maintenance/6.4 --------+                                     |
    |                                        |                                     |
    | <- 6.5.0M1  20170725_1102 2017-07-28   |                                     |
    | <- 6.5.0M2  20170829_1119 2017-09-05   |                                     |
    |                                        |                                     | <- 6.3.2 20170917_1316 2017-09-17
    |                                        |                                          
    |                                        +-------------------------------------+
    |
    +-------- BRANCH maintenance/6.5 --------+      
    |                                        | <- 6.5.1M4 20171024_1518 2017-11-10                                       
    | <- 7.0.1M1  20171115_1047 2017-11-20   |
    |                                        | <- 6.5.1EP 20171215_1808 2017-12-18
    | <- 7.0.1M2  20171219_1109 2017-12-22   |
    |                                        | <- 6.5.1   20180116_1512 2018-01-23
    | <- 7.0.1EP  20180131_1240 2018-02-02   |
    | <- 7.0.1EP2 20180313_1419 2018-03-15   |
    | <- 7.0.1    20180411_1414 2018-04-13   |
    |                                        |
    |                                        +-------------------------------------+
    |                                        
    +-------- BRANCH maintenance/7.0 --------+
    |                                        |
    | <- 7.1.1M1  20180627_1546 2018-06-29   |
    | <- 7.1.1M2  20180724_1359 2018-07-26   |
    | <- 7.1.1M3  20180829_1603 2018-08-31   |
    | <- 7.1.1M4  20180927_1104 2018-09-28   |
    | <- 7.1.1    20181026_1147 2018-10-29   |
    |                                        |
    |                                        +-------------------------------------+
    |
    +-------- BRANCH maintenance/7.1 --------+
    |                                        |
    | <- 7.2.1M1  20181218_1206 2018-12-28   |
    | <- 7.2.1M2  20190131_1157 2019-02-04   |
    | <- 7.2.1M3  20190228_1114 2019-03-05   |
    | <- 7.2.1M3  20190325_1906 2019-04-04   |
    | <- 7.2.1M4  20190325_1906 2019-03-29   |
    | <- 7.2.1M5  20190424_1503 2019-04-30   |
    | <- 7.2.1M6  20190523_1134 2019-05-29   |
    | <- 7.2.1    20190620_1446 2019-06-24   |
    |                                        |
    |                                        +-------------------------------------+

Release numbers : x.y.z

  • x : the major release number, incremented when a big change is introduced.
  • y : the minor release number, additionnal features
  • z : the Service Pack number. No new features between 2 Service Pack, 'only bug correction', differences between 2.0.0 and 2.0.1 are really minor but sometimes very important (security fixes for example).

Parallel working

The main advantage of branch versionning is that TOS dev team can still create new fixing releases on an old branch even if a new branch has been available since. For example, if you find some bugs in release 2.0.2, TOS dev team will certainly fix bugs for a release 2.0.3 even if release 2.1.0 has already been out for a while.

Milestones, Release Candidate, Main

When preparing a release, it has to be tested and qualified. TOS dev team works as follows :

  1. milestones x.y.zM# are snapshot from trunk, the development main branch. Milestones are designed for test by most impatient and advanced users. It is obvious for the dev team that this release may contain bugs even if we work to make them as few as possible. The purpose is to list them all to prepare the release candidates…
  2. release x.y.zRC# is also a snapshot from trunk. The purpose is to fix all blocking bugs before releasing the main release.
  3. release x.y.z is a main release.

Example : 2.0.0M1 » 2.0.0M2 » 2.0.0M3 » 2.0.0M4 »2.0.0RC1 » 2.0.0 » 2.0.1

 
dev/branches_releases.txt · Last modified: 2019/06/24 03:30 by iwang
 
 
Recent changes RSS feed Driven by DokuWiki