-
Notifications
You must be signed in to change notification settings - Fork 16
Expand file tree
/
Copy pathBioJava:1.5ReleasePlan.html
More file actions
182 lines (133 loc) · 6.13 KB
/
BioJava:1.5ReleasePlan.html
File metadata and controls
182 lines (133 loc) · 6.13 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
<h1 id="release-plan-for-biojava-15">Release plan for BioJava 1.5</h1>
<h3 id="background">Background</h3>
<p>We would like to begin work on making a 1.5 release of BioJava. This
will include all new developments such as the BioJavaX and structure
APIs.</p>
<p>I propose we initially make a BioJava1.5 beta which will be a snapshot
of CVS and will only contain the documentation, demos and unit tests at
that date (not a complete and up to date suite).</p>
<p>A full BioJava 1.5 final release will ideally contain fully updated
documentation, demos, unit tests etc.</p>
<h3 id="status">Status</h3>
<p>In planning phase. A <a href="Czar" title="wikilink">release Czar</a> is being sought to
coordinate the current release.</p>
<h3 id="alpha-beta-rcs">Alpha, beta, RCs</h3>
<p>The following documents the proposed steps taken before a major release.
The Alpha release step should be considered optional.</p>
<h4 id="alpha">Alpha</h4>
<p>We don’t normally make Alpha releases, the closest approximation would
be a snapshot of the CVS repository leading up to the beta release. An
Alpha release could be a CVS branch that serves as a proof of concept.
If the concept is accepted the branch may become the main trunk of the
CVS.</p>
<p>Requirements:</p>
<ul>
<li>Code fully compiles under Ant.</li>
<li>Announcement made on biojava-dev list.</li>
</ul>
<h4 id="beta">Beta</h4>
<p>A Beta release would show the likely API of a final release.</p>
<p>Requirements:</p>
<ul>
<li>Code fully compiles and passes JUnit tests.</li>
<li>All javadocs build and no warnings issued.</li>
<li>All demos and cookbook demos compile.</li>
<li>JARs, JavaDocs and source code posted to webserver (admin task).</li>
<li>Links to download and API updated (admin task).</li>
<li>Beta released announced on mail-list and news site.</li>
</ul>
<h4 id="release-candidate">Release Candidate</h4>
<p>A release candidate is a possible final release. If no bugs are noted
within a certain testing time frame it could become a final release.</p>
<p>Requirements:</p>
<ul>
<li>Has had a beta release.</li>
<li>Demo code, tutorials and cookbook examples updated to reflect best
practices introduced new APIs and tested.</li>
<li>Where totally new functionality is introduced new cookbook, demo, or
tutorial examples should be added.</li>
<li>New API’s should have complete javadocs.</li>
<li>New API’s should be marked with proper @since tags.</li>
<li>New API’s should have good JUnit test coverage.</li>
<li>JARs, JavaDocs and source code posted to webserver (admin task).</li>
<li>Links to download and API updated (admin task).</li>
<li>Checks for backwards compatability are made.</li>
<li>Known errors and deficiencies documented.</li>
<li>RC released announced on mail-list and news site.</li>
<li>Time frame for final release decided and announced.</li>
</ul>
<h4 id="final-release">Final Release</h4>
<p>A final release is a release candidate that has exceeded a period of
time with no new bugs detected.</p>
<h2 id="pre-release-tasks">Pre-release tasks</h2>
<p>Before BioJava1.5 can be released we need to consider the following
tasks. Please feel free to add more if you think of them. Things that
are not critical but nice to have should go in the wish-list section for
consideration.</p>
<h3 id="coding">Coding</h3>
<ul>
<li>Code for any release (even Alpha) should minimally compile and pass
all JUnit tests!</li>
</ul>
<h4 id="changes-to-buildxml">Changes to build.xml</h4>
<ul>
<li>add tasks to Ant build script to make distribution that includes
biojava.jar, bytecode jar etc, all javadocs and docbook HTML (as
zipped tar), and all source (as zipped tar).</li>
</ul>
<!-- -->
<ul>
<li>would be nice to have checksums for biojava.jar.</li>
</ul>
<h3 id="documentation">Documentation</h3>
<ul>
<li>Update <a href="BioJava:Cookbook" title="wikilink">Cookbook</a> code to reflect best
practices with BioJavaX</li>
<li>Should we keep legacy examples in the
<a href="BioJava:Cookbook" title="wikilink">Cookbook</a>?</li>
<li>Check for errors in biojavax docbook</li>
</ul>
<h3 id="javadoc">Javadoc</h3>
<ul>
<li>The ant javadoc-all task must complete without any failures or
warnings.</li>
<li>Volunteers are needed to check for poorly javadoced packages and add
comments where they can.</li>
</ul>
<h3 id="quality">Quality</h3>
<ul>
<li>All JUnit tests must pass.</li>
<li>Volunteers needed to increase coverage of JUnit tests.</li>
<li>We badly need JUnit tests for BioJavaX / BioSQL interaction</li>
<li>Can someone with a good testing tool generate a coverage report?</li>
</ul>
<h3 id="check-compatibility">Check compatibility</h3>
<h4 id="are-richsequence-objects-compatable-with-gui-code">Are RichSequence objects compatable with GUI code?</h4>
<ul>
<li>We need a volunteer to test how well RichSequence objects behave
with biojava’s GUI code.</li>
<li>GUI code as well as relevant javadocs, demos, and cookbook code may
need to change.</li>
</ul>
<h4 id="are-biojavax-objects-compatable-with-dasdazzle">Are BioJavaX objects compatable with DAS/DAZZLE?</h4>
<p>Someone with experience of the DAS server DAZZLE is needed to check if
there are any issues with DAS and BioJavaX objects. This may not be at
all relevant but it would pay to check.</p>
<h4 id="backwards-compatibility">Backwards Compatibility</h4>
<ul>
<li>Are there any breaks in the API between biojava 1.4 and biojava 1.5?</li>
<li>Can someone run a change tool that will detect API differences that
would prevent biojava 1.4 apps compiling with biojava 1.5</li>
</ul>
<h2 id="wish-list-or-items-yet-to-be-sorted">Wish-list, or Items-yet-to-be-sorted</h2>
<p>Edit this section with items to be considered for the 1.5 release</p>
<h2 id="reference">Reference</h2>
<p>The Apache Jakarta Commons project release prep and release notes might
contain helpful information, particularly as far as providing checksums
for and signing releases:</p>
<ul>
<li><a href="http://jakarta.apache.org/commons/releases/prepare.html">Jakarta Commons - Preparations for a
Release</a></li>
<li><a href="http://jakarta.apache.org/commons/releases/release.html">Jakarta Commons - Cutting the
Release</a></li>
</ul>