14
13
announce the tasks to the Parrot mailing list. Make sure everyone knows what
15
14
they've committed to accomplish in time for the release.
17
Right after the release preceeding your release, it is a good idea to start
16
Right after the release preceding your release, it is a good idea to start
18
17
tracking parrot news in NEWS. A good resource are the reports
19
18
in the weekly #parrotsketch IRC-meeting. A reliable log of these meetings
20
19
is available in L<http://irclog.perlgeek.de/parrotsketch/>.
55
54
The day of the release has come.
56
Make sure you're up to date:
55
Make sure you have the most recent version of the master branch:
57
git checkout master && git pull --rebase
59
Also be sure you do not have any local commits that have not yet
60
been pushed out and tested thoroughly. You can check for this with
62
git log ..origin/master
64
If there is no output from that command, then your local master
65
and the master on origin are in sync.
155
162
Make sure everything works:
158
$ perl Configure.pl --test ...
159
$ make world docs html 2>&1 | tee make_world_docs_html.log
160
$ make fulltest 2>&1 | tee make_fulltest.log
165
perl Configure.pl --test ...
166
make world docs html 2>&1 | tee make_world_docs_html.log
167
make fulltest 2>&1 | tee make_fulltest.log
162
169
Note that running "make fulltest" takes a while and that separate
163
170
harnesses are being run.
169
176
When all is well, then commit your changes:
174
Write down the revision number from this commit. You will need it later in
179
git add file1 file2 ...
180
git commit -m "awesome and informative commit message"
182
Instead of adding files individually, you can also tell C<git commit> that
183
you want all modified and deleted files to be in your next commit via the C<-a>
186
git commit -a -m "awesome and informative commit message"
188
Be carefult with C<git commit -a>, it could add files that you do not mean
189
to include. Verify that the contents of your most recent commit look sane with:
193
If you want you can note the SHA1 from this commit.
195
git rev-parse master > SHA1_TO_REMEMBER
197
Update repository on github.
199
git push origin master
179
203
Prepare the release tarball.
181
$ make release VERSION=a.b.c
205
make release VERSION=a.b.c
183
207
where a.b.c is the version number. This will create the tarball named
184
208
F<parrot-a.b.c.tar.gz>. This will automatically avoid including C<DEVELOPING>
193
217
Make sure everything works:
196
$ make world docs html 2>&1 | tee make_world_docs_html.log
197
$ make fulltest 2>&1 | tee make_fulltest.log
220
make world docs html 2>&1 | tee make_world_docs_html.log
221
make fulltest 2>&1 | tee make_fulltest.log
199
223
Verify that the version is correct and doesn't contain the suffix C<devel>:
205
229
Tag the release as "RELEASE_a_b_c", where a.b.c is the version number.
206
Specify the revision number generated in step 3, above.
208
$ export SVNPARROT=https://svn.parrot.org/parrot
209
$ svn copy -r <REV> -m "tagged release a.b.c" \
210
$SVNPARROT/trunk $SVNPARROT/tags/RELEASE_a_b_c
231
git tag RELEASE_a_b_c
214
236
SSH to ftp-osl.osuosl.org. (If you don't have the necessary login information,
215
237
get it from one of the previous release managers.)
217
$ ssh -l <USERNAME> ftp-osl.osuosl.org
239
ssh -l <USERNAME> ftp-osl.osuosl.org
219
241
If the release is a monthly development release, create a new directory under
220
242
F<~/ftp/releases/devel>.
222
$ mkdir ~/ftp/releases/devel/a.b.c
244
mkdir ~/ftp/releases/devel/a.b.c
224
246
If the release is in the supported series (L<Appendix 1 - Upcoming releases>)
225
247
create the new directory in F<~/ftp/releases/supported> instead.
227
$ mkdir ~/ftp/releases/supported/a.b.c
249
mkdir ~/ftp/releases/supported/a.b.c
229
251
Copy the different compressed tarballs and the according checksum files from
230
252
your machine into the new directory.
232
$ scp parrot-a.b.c.tar.gz parrot-a.b.c.tar.bz2 \
254
scp parrot-a.b.c.tar.gz parrot-a.b.c.tar.bz2 \
233
255
parrot-a.b.c.tar.gz.sha256 parrot-a.b.c.tar.bz2.sha256 \
234
256
<USERNAME>@ftp-osl.osuosl.org:~/ftp/releases/devel/a.b.c/.
248
270
Compose the release announcement. Use F<tools/release/crow.pir> to make
249
271
this part easier. You can specify the format of your announcements like so:
251
$ ./parrot tools/release/crow.pir --type=text
252
$ ./parrot tools/release/crow.pir --type=html
273
./parrot tools/release/crow.pir --type=text
274
./parrot tools/release/crow.pir --type=html
254
276
Take the screen output and paste it into the application you need. HTML
255
277
works well for use Perl and PerlMonks, and text for the rest. It is not a
408
430
L<http://www.google.com/calendar/render?cid=ldhctdamsgfg5a1cord52po9h8@group.calendar.google.com>.
410
- Oct 19, 2010 - 2.9* - gerd
411
- Nov 16, 2010 - 2.10 - tcurtis
412
- Dec 21, 2010 - 2.11 - whiteknight
413
432
- Jan 18, 2011 - 3.0* - cotto
414
433
- Feb 15, 2011 - 3.1 - mikehh
415
434
- Mar 15, 2011 - 3.2 - ??