Synch with Oort Gnus.
[elisp/gnus.git-] / README.branch
1 README.branch --- description of branches and tags. (DRAFT)
2 ========================================================================
3
4 Semi-gnus revision tree (2000-12-21)
5
6     vendor      personal    main trunk      public
7     branch      branches                    branches
8 ------------------------------------------------------------------------
9 qGnus 0.??  ------> Semi-gnus 6.0.0
10        :                        :
11        :        himi     <--  6.0.7
12        :    ichikawa <------  6.0.8
13        :       |                |
14        :     6.8.17 ---+        :
15        :       :       :        :
16        :               V        :
17        :         pgnus-ichikawa :
18        :               |        :
19        :             6.9.01     :
20        :               :        : (1999.07.02: turn into the public branch)
21        :               +-------->---------------+
22        :                        :               :
23        :                        :               V
24        :                        :            6.10.072 -----> t-gnus-6_12
25        :                        :               :     \      (for FLIM 1.12,
26        :                        :               :      \      stable)
27        :                        :               :       \
28        :                        :               :        --> t-gnus-6_13
29        :                        :               :            (for FLIM 1.13,
30        :                        :               :             develop)
31        :                        :               :               :
32        :                        :         t-gnus-6_10-last-  t-gnus-6_13-last-
33        :                        :               | feedback      |
34        :                        :               +<--------------+
35        :                        :               |               |
36        :            ------------<---------------+            t-gnus-6_14
37        : Oort Gnus /            :               |            (for FLIM 1.13,
38        :     |    |             :               :             develop)
39        :     V    V             :                               |
40        :  t-gnus-6_15-quimby<---<-----(t-gnus-6_14-quimby)<-----+
41        :          |             :                               |
42        :          :             :                               :
43        :                        :
44        :        akr      <--  6.2.3
45        :        shuhei-k <--  6.3.1
46 Gnus 5.6.11 ------>           6.3.3
47        :                      6.4.0 (for SEMI 1.5)
48        :                      (6.4.?)------> for SEMI 1.5
49        :                        |    \
50        :                        |     \
51 (Synch with original Gnus       |      ---> for SEMI 1.6
52  was done many times, but    (6.4.?)------> 6.5 (for SEMI 1.7)
53  we don't include them.)        |        /    6.5.0
54        :                        |    (?)/
55        :                        |   <---
56        :                     (6.5.?)------> 6.6 (for SEMI 1.8, FLIM 1.7)
57        :                        |    \        6.6.0        stable branch
58        :                        |     \
59        :                        |      ---> 6.7 (for SEMI 1.8, FLIM 1.7)
60        :                        |             6.7.0        stable branch
61        :     sync               |               :
62 Gnus 5.6.22 ------>             |   feedback  6.7.7
63        :                     (6.7.8)<------   6.7.8
64        :                        |    \
65        :                        |     \
66        :                        |      ---> 6.8 (for SEMI 1.8, FLIM 1.8)
67        :        keiichi  <--  6.8.18          6.8.0        stable branch
68        :     sync               |               :
69 Gnus 5.6.45 ------>             |   feedback  6.8.20
70        :                     (6.8.20)<------  6.8.20
71        :                        |     \
72        :                        |      \
73        :                        |       --> 6.9 (for SEMI 1.11, FLIM 1.12)
74        :                        |             6.9.1        stable branch
75        :                        |   feedback  6.9.2
76        :                     (6.9.2)<---------6.9.2
77        :                        |    \
78        :                        |     \
79        :                        |       --> 6.10 (for SEMI 1.12, FLIM 1.12)
80        :                        |             6.10.1      develop branch
81        :                        :               :
82        :                        :               :
83 ========================================================================
84
85 The Vendor Branch
86
87     Original version of Gnus.
88     Each version has a tag of the form "qgnus-0_XY" or "gnus-5_X_Y" or
89     "pgnus-0_XY".
90
91     The branch tag for the vendor branch is "larsi".
92
93 The Main Trunk
94
95     Semi-gnus was developed on the main trunk until current branch-
96     management plan (See "Public Branches" below) was introduced.
97     Each version has a tag of the form "gnus-6_N2_N3". (0 < N2 < 5)
98
99 Public Branches
100
101     Current main stream of Semi-gnus development.
102
103     [Goal and policy of public branches here ???]
104
105     Each branch has a tag of the form "gnus-N1_N2" and each version
106     has a tag of the form "gnus-N1_N2_N3".
107
108     N1, N2, and N3 are changed by the following rules.
109
110     N1 will be incremented if any fundamental architecture change is
111     made.  Of cource, in this case, N2 and N3 will be reset to zero.
112
113     N2 will be incremented and new branch will be made if any "major
114     changes" are made.  "major changes" include API changes, major
115     version up of original Gnus, or synchronization with original Gnus
116     which requires design decision.
117
118     N3 will be incremented if some "minor changes" are made.  "minor
119     changes" include small bug fix or synchronization with original Gnus
120     without design decision.
121
122     The following branch tags are currently available.
123
124         for-semi-1_5    Semi-gnus for SEMI 1.5 API
125         for-semi-1_6    Semi-gnus for SEMI 1.6 API
126         gnus-6_5        Semi-gnus for SEMI 1.7 API
127         gnus-6_6        Semi-gnus for SEMI 1.8, FLIM 1.7 API (stable)
128         gnus-6_7        Semi-gnus for SEMI 1.8, FLIM 1.7 API (stable)
129         gnus-6_8        Semi-gnus for SEMI 1.8, FLIM 1.8 API (stable)
130         gnus-6_9        Semi-gnus for SEMI 1.11, FLIM 1.12 API (stable)
131         gnus-6_10       Semi-gnus for SEMI 1.12, FLIM 1.12 API (develop)
132         pgnus-ichikawa  (Main trunk of T-gnus)
133         t-gnus-6_12     T-gnus for SEMI 1.12/1.13, FLIM 1.12 API (stable)
134         t-gnus-6_13     T-gnus for SEMI 1.13, FLIM 1.13 API (develop)
135         t-gnus-6_14     T-gnus for SEMI 1.13, FLIM 1.13 API (develop)
136      t-gnus-6_15-quimby T-gnus for SEMI 1.13, FLIM 1.13 API (develop)
137
138 Personal Branches
139
140     Some Semi-gnus developers have their own "personal branches".
141     Each personal branch may have its own goal and/or policy.
142     See README.${tag} (if exists) for information of each branch.
143
144     The following branch tags are curretly available.
145
146         himi            Owner: Miyashita Hisashi
147         ichikawa        Owner: Tatsuya Ichikawa
148         akr             Owner: Tanaka Akira
149         shuhei-k        Owner: Shuhei KOBAYASHI
150         keiichi         Owner: Keiichi Suzuki
151
152 "semi-gnus" Tag
153
154     Was assigned to the latest stable version.
155     Currently not maintained. (XXX: ???)
156
157 "for-semi-N1_N2" Tags
158
159     Were assigned to corresponding version of SEMI API N1.N2.
160     We will not use this convention any longer. (XXX: ???)