Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Newer
Older
100644 279 lines (195 sloc) 8.951 kb
f45384a @pmichaud First version of release_guide.pod, based on a proposed version
pmichaud authored
1 =head1 release_guide.pod - guide to Rakudo releases
2
3 Rakudo's development release cycle is based on Parrot's release
4 cycle. Parrot releases the third Tuesday of each month; Rakudo
5 will generally issue its own development release two days after
6 the Parrot release.
7
8 Each development release is given a sequential number and a
9 code name based on an active Perl Mongers group. Rakudo's
10 February 2009 release is #14; prior releases were bundled as
11 part of monthly Parrot releases.
12
13 =head2 Development releases
14
5b477c0 @pmichaud Note the release manager for each of the previous releases,
pmichaud authored
15 2009-02-26 Rakudo #14 "Vienna" (pmichaud)
16 2009-03-20 Rakudo #15 "Oslo" (pmichaud)
17 2009-04-23 Rakudo #16 "Bratislava" (pmichaud)
18 2009-05-21 Rakudo #17 "Stockholm" (pmichaud)
19 2009-06-18 Rakudo #18 "Pittsburgh" (pmichaud)
20 2009-07-23 Rakudo #19 "Chicago" (moritz)
cf27952 [docs] bare bones 2009-08 announcement and release_guide update
Kyle Hasselbacher authored
21 2009-08-20 Rakudo #20 "PDX" (kyle)
e33d20e @moritz [docs] mention smolder reports in release_guide.pod
moritz authored
22 2009-09-17 Rakudo #21 "Seattle" (particle)
37956bf @perlpilot Updates in preparation for release
perlpilot authored
23 2009-10-22 Rakudo #22 "Thousand Oaks" (duff)
f5065b6 @masak [docs/release_guide.pod] rolled releases forward
masak authored
24 2009-11-19 Rakudo #23 "Lisbon" (masak)
7f1c3fe @chromatic [docs] Updated release guide.
chromatic authored
25 2009-12-17 Rakudo #24 "Seoul" (chromatic)
4da4e4d @pmichaud Update release dates and names.
pmichaud authored
26 2010-01-22 Rakudo #25 "Minneapolis" (pmichaud)
37e5746 @pmichaud Update release_guide.pod with recent release information.
pmichaud authored
27 2010-02-18 Rakudo #26 "Amsterdam" (mberends)
fc30fad @moritz [docs] the Copenhagen release has already happend; colomon++ voluntue…
moritz authored
28 2010-03-18 Rakudo #27 "Copenhagen" (smash)
05ee824 @moritz [docs] update release guide
moritz authored
29 2010-04-22 Rakudo #28 "Moscow" (moritz)
296a56c @colomon Add #29 Erlangen to the release list, and mark that [Coke] has the Ju…
colomon authored
30 2010-05-20 Rakudo #29 "Erlangen" (colomon)
cbff7d0 @masak [docs/release_guide.pod] updates and improvements
masak authored
31 2010-06-17 Rakudo #30 "Kiev" (masak)
5c33c5a @coke This release is heading out the door soon.
coke authored
32 2010-07-22 Rakudo #31 "Atlanta" (Coke)
99a4e24 @mathw Update release guide with 2010.08 release.
mathw authored
33 2010-08-19 Rakudo #32 "Pisa" (mathw)
74a156f @moritz [release] name is Milan. Bump VERSION
moritz authored
34 2010-09-23 Rakudo #33 "Milan" (moritz)
33bdcee @perlpilot release preparation
perlpilot authored
35 2010-10-21 Rakudo #34 "Paris" (duff)
03e6f5a @masak [docs/release_guide.pod] slight tweaks
masak authored
36 2010-11-18 Rakudo #35 "Melbourne" (masak)
4830af6 @nunorc [release] update release guide
nunorc authored
37 2010-12-23 Rakudo #36 "New York" (smash)
a7d5f19 @tadzik Added announcement for 2011.01
tadzik authored
38 2011-01-20 Rakudo #37 "BristolBath" (tadzik)
c25afe6 @arnsholt [release] Add announcement, updated release guide. Added own name and
arnsholt authored
39 2011-02-17 Rakudo #38 "Toulouse" (arnsholt)
e70f27d @jdhore [release] Add announcement, update release gude and add myself to
jdhore authored
40 2011-03-17 Rakudo #39 "Orlando" (jdhore)
da00dd0 @jdhore Update release_guide
jdhore authored
41 2011-04-21 Rakudo #40 "ZA" (duff)
42 2011-05-19 Rakudo #41 "Dahut" (jdhore)
70c5ca4 @jdhore Update release_guide.pod for 2011.06 release.
jdhore authored
43 2011-06-23 Rakudo #42 "Bruxelles" (jdhore)
cc373ff @moritz update release_guide.pod, bump VERSION
moritz authored
44 2011-07-21 Rakudo #43 "Beijing" (mberends,moritz)
f45384a @pmichaud First version of release_guide.pod, based on a proposed version
pmichaud authored
45
fe2b4e1 @moritz [docs] update years in release_guide.pod, jdhore++. Also add the rest…
moritz authored
46 =head2 Planned 2011 releases
f45384a @pmichaud First version of release_guide.pod, based on a proposed version
pmichaud authored
47
48 Dates are based on Parrot's expected release schedule.
49
fe2b4e1 @moritz [docs] update years in release_guide.pod, jdhore++. Also add the rest…
moritz authored
50 2011-08-18 Rakudo #44 -vacant-
51 2011-09-22 Rakudo #45 -vacant-
3696656 @perlpilot Claim my traditional birthday-month release :-)
perlpilot authored
52 2011-10-20 Rakudo #46 (duff)
fe2b4e1 @moritz [docs] update years in release_guide.pod, jdhore++. Also add the rest…
moritz authored
53 2011-11-17 Rakudo #47 -vacant-
54 2011-12-22 Rakudo #48 -vacant-
f45384a @pmichaud First version of release_guide.pod, based on a proposed version
pmichaud authored
55
381d26e @pmichaud Updates to docs/announce and docs/release_guide.pod .
pmichaud authored
56 =head2 Suggested .pm group names for future releases
57
9225003 @pmichaud Add some release name suggestions for future releases.
pmichaud authored
58 MadMongers (YAPC::NA 2012)
59 Columbus (YAPC::NA 2011, p6 track and hackathon)
60 Riga (YAPC::EU 2011, p6 track and hackathon)
61 Houston (YAPC::NA 2007, p6 hackathon)
62 Brazos Valley (YAPC::NA 2007, p6 hackathon)
63 Toronto (YAPC::NA 2005, p6 hackathon)
381d26e @pmichaud Updates to docs/announce and docs/release_guide.pod .
pmichaud authored
64
1d49284 @perlpilot [docs] Add tentative release dates through the end of 2010
perlpilot authored
65 More names can be gotten from L<http://www.pm.org> if you
66 can't think of one with any particular significance to Perl
03e6f5a @masak [docs/release_guide.pod] slight tweaks
masak authored
67 6 or Rakudo.
1d49284 @perlpilot [docs] Add tentative release dates through the end of 2010
perlpilot authored
68
2f3a8ab @pmichaud Update docs/release_guide.pod with typical steps for cutting a release.
pmichaud authored
69 =head2 Steps to create a release (for release managers)
70
71 Each Rakudo development release is timed to occur two
01ae3fa @moritz [docs] propose ThousandOaks as a release name, in recognition of thei…
moritz authored
72 days after a Parrot monthly release.
2f3a8ab @pmichaud Update docs/release_guide.pod with typical steps for cutting a release.
pmichaud authored
73
74 =over 4
75
76 =item 1.
77
03e6f5a @masak [docs/release_guide.pod] slight tweaks
masak authored
78 A few days before the Parrot release, it's a good idea to...
2f3a8ab @pmichaud Update docs/release_guide.pod with typical steps for cutting a release.
pmichaud authored
79
80 =over 4
81
82 =item *
83
84 Remind people of the upcoming release, invite people to
01ae3fa @moritz [docs] propose ThousandOaks as a release name, in recognition of thei…
moritz authored
85 update the ChangeLog file, update the ROADMAP, choose a
2f3a8ab @pmichaud Update docs/release_guide.pod with typical steps for cutting a release.
pmichaud authored
86 release name, etc.
87
88 =item *
89
90 Verify that the Parrot trunk head is able to build Rakudo
e33d20e @moritz [docs] mention smolder reports in release_guide.pod
moritz authored
91 and run the spectest suite. Also check the smolder reports
0d3c66e @moritz [docs] update release guide
moritz authored
92 at L<http://smolder.parrot.org/app/projects/smoke_reports/5>.
2f3a8ab @pmichaud Update docs/release_guide.pod with typical steps for cutting a release.
pmichaud authored
93
94 =item *
95
96 If Parrot's trunk exhibits any problems building or running
97 Rakudo (that require changes to Parrot to fix), immediately
98 report them to the Parrot development team so they can be
99 fixed prior to Parrot's release.
100
101 =item *
102
103 Review the RT queue for tickets that might need resolving
cf27952 [docs] bare bones 2009-08 announcement and release_guide update
Kyle Hasselbacher authored
104 prior to the release, addressing them as needed. "Tickets
105 that need resolving" is left your discretion. Any problem
106 that has a large impact on users is worth addressing either
107 as a fix or as prominent documentation (the README and/or
108 the release announcement).
2f3a8ab @pmichaud Update docs/release_guide.pod with typical steps for cutting a release.
pmichaud authored
109
110 =back
111
112 =item 2.
113
01ae3fa @moritz [docs] propose ThousandOaks as a release name, in recognition of thei…
moritz authored
114 Once Parrot issues its monthly release, edit Rakudo's
e0bfb29 @moritz [build] git_describe is enough, no need for a separate version specif…
moritz authored
115 F<build/PARROT_REVISION> file to contain the C<git describe --tags>
116 output corresponding to Parrot's monthly release.
117 Once C<build/PARROT_REVISION>
4549f3c @pmichaud Minor update to docs for parrot release number in build/PARROT_REVISION.
pmichaud authored
118 has been set to the Parrot release, it must not be changed until
2f3a8ab @pmichaud Update docs/release_guide.pod with typical steps for cutting a release.
pmichaud authored
119 after the Rakudo release. In other words, we want each
120 monthly release of Rakudo to be able to be built using
121 the immediately prior release of Parrot.
122
e0bfb29 @moritz [build] git_describe is enough, no need for a separate version specif…
moritz authored
123 (Old releases required you to add both the version and the
124 C<git describe> output to the PARROT_REVISION file. This is
125 not necessary anymore).
126
2f3a8ab @pmichaud Update docs/release_guide.pod with typical steps for cutting a release.
pmichaud authored
127 =item 3.
128
01ae3fa @moritz [docs] propose ThousandOaks as a release name, in recognition of thei…
moritz authored
129 The short period following the Parrot release until the
130 Rakudo release is generally intended for fixing bugs,
2f3a8ab @pmichaud Update docs/release_guide.pod with typical steps for cutting a release.
pmichaud authored
131 updating documentation, and so on.
132
b4a5bb8 @jdhore Fix some minor incorrect stuff in the release_guide.
jdhore authored
133 =item 4.
f3eb64f [release_guide] Added instructions for updating the leap-second tables.
Kodi Arfer authored
134
135 Update Rakudo's leap-second tables:
136
137 $ perl tools/update-tai-utc.pl src/core/tai-utc.pm
138
139 If a new leap second has been announced, F<tai-utc.pm> will be modified, so
140 commit the new version:
141
142 $ git commit src/core/tai-utc.pm
143
144 But probably there won't be any new leap seconds, in which case the file
145 will be unchanged.
146
b4a5bb8 @jdhore Fix some minor incorrect stuff in the release_guide.
jdhore authored
147 =item 5.
2f3a8ab @pmichaud Update docs/release_guide.pod with typical steps for cutting a release.
pmichaud authored
148
149 As the actual release date nears, review the git log history
150 to see if any additional items need to be added to the ChangeLog.
151 This can be conveniently done with "git log --since=yyyy-mm-dd --reverse".
152
48c1791 @pmichaud More release_guide.pod improvements.
pmichaud authored
153 $ git commit docs/ChangeLog
154
b4a5bb8 @jdhore Fix some minor incorrect stuff in the release_guide.
jdhore authored
155 =item 6.
2f3a8ab @pmichaud Update docs/release_guide.pod with typical steps for cutting a release.
pmichaud authored
156
157 When it's time to cut the release, create a new release announcement
9be7890 @pmichaud Update release guide to note that we now use dots instead of hyphens
pmichaud authored
158 in docs/announce/YYYY.MM. It's often a good idea to use the
2f3a8ab @pmichaud Update docs/release_guide.pod with typical steps for cutting a release.
pmichaud authored
159 previous month's file as a starting point for this. Highlight areas
160 in which the new release is significant. If possible, also give
161 some small details about the choice of release name. (If the
162 details are a bit lengthy, this can often best be done as a separate
163 section at the bottom of the announcement.)
164
082caee @moritz [docs] instruct release manager to include a list of contributors in …
moritz authored
165 Include a list of contributors since the last release in the announcement.
166 You can get an automatically generated list by running
167
cbff7d0 @masak [docs/release_guide.pod] updates and improvements
masak authored
168 $ perl tools/contributors.pl
082caee @moritz [docs] instruct release manager to include a list of contributors in …
moritz authored
169
ecc4efa @perlpilot minor modifications
perlpilot authored
170 B<Note>: this program requires the perl module L<Date::Simple> be installed.
171
082caee @moritz [docs] instruct release manager to include a list of contributors in …
moritz authored
172 Please check the result manually for duplicates and other errors.
173
9be7890 @pmichaud Update release guide to note that we now use dots instead of hyphens
pmichaud authored
174 $ git add docs/announce/YYYY.MM
48c1791 @pmichaud More release_guide.pod improvements.
pmichaud authored
175 $ git commit docs
176
b4a5bb8 @jdhore Fix some minor incorrect stuff in the release_guide.
jdhore authored
177 =item 7.
2f3a8ab @pmichaud Update docs/release_guide.pod with typical steps for cutting a release.
pmichaud authored
178
179 Update the release dates and names at the top of this file
4c248e5 @masak [docs/release_guide.pod] s/-/_/ in file name
masak authored
180 (F<docs/release_guide.pod>). Also improve these instructions if
2f3a8ab @pmichaud Update docs/release_guide.pod with typical steps for cutting a release.
pmichaud authored
181 you find any steps that are missing.
182
4c248e5 @masak [docs/release_guide.pod] s/-/_/ in file name
masak authored
183 $ git commit docs/release_guide.pod
48c1791 @pmichaud More release_guide.pod improvements.
pmichaud authored
184
b4a5bb8 @jdhore Fix some minor incorrect stuff in the release_guide.
jdhore authored
185 =item 8.
2f3a8ab @pmichaud Update docs/release_guide.pod with typical steps for cutting a release.
pmichaud authored
186
187 Make sure everything compiles and runs from a known clean state:
188
189 $ make realclean
190 $ perl Configure.pl --gen-parrot
191 $ make
192 $ make test
a63c7e0 @moritz add stresstest target, and move day 17 of the advent tests to stresstest
moritz authored
193 $ make stresstest
2f3a8ab @pmichaud Update docs/release_guide.pod with typical steps for cutting a release.
pmichaud authored
194
674c984 @perlpilot [release] update release_guide
perlpilot authored
195 There are many tests to run for the stresstest target. If
196 you have a machine with multiple CPU cores, you may want to
197 execute that last as
198
199 $ TEST_JOBS=4 make stresstest
200
201 where 4 is the number of CPU cores. This should make the
202 total time to execute all of the tests dramatically less.
203
204 Continue adjusting things until make stresstest passes as expected.
3c7289b @pmichaud Small improvement to guidelines for failing spectests at time of rele…
pmichaud authored
205 Often this means fixing a bug, fudging a test, or (temporarily?)
0d3c66e @moritz [docs] update release guide
moritz authored
206 commenting out a test file in t/spectest.data . Use your best
3c7289b @pmichaud Small improvement to guidelines for failing spectests at time of rele…
pmichaud authored
207 judgment or ask others if uncertain what to do here.
2f3a8ab @pmichaud Update docs/release_guide.pod with typical steps for cutting a release.
pmichaud authored
208
b4a5bb8 @jdhore Fix some minor incorrect stuff in the release_guide.
jdhore authored
209 =item 9.
0d3c66e @moritz [docs] update release guide
moritz authored
210
211 Enter the new version into the F<VERSION> file, and commit the changes:
212
213 $ echo 2010.09 > VERSION
214 $ git commit -m '[release] bump VERSION' VERSION
215
b4a5bb8 @jdhore Fix some minor incorrect stuff in the release_guide.
jdhore authored
216 =item 10.
2f3a8ab @pmichaud Update docs/release_guide.pod with typical steps for cutting a release.
pmichaud authored
217
218 Make sure any locally modified files have been pushed back to github.
219
48c1791 @pmichaud More release_guide.pod improvements.
pmichaud authored
220 $ git status
221 $ git push
222
b4a5bb8 @jdhore Fix some minor incorrect stuff in the release_guide.
jdhore authored
223 =item 11.
2f3a8ab @pmichaud Update docs/release_guide.pod with typical steps for cutting a release.
pmichaud authored
224
cbff7d0 @masak [docs/release_guide.pod] updates and improvements
masak authored
225 Create a tarball by entering C<make release VERSION=YYYY.MM>,
240e2f0 @nunorc Testing commit.
nunorc authored
226 where YYYY.MM is the month for which the release is being made.
ecc4efa @perlpilot minor modifications
perlpilot authored
227 This will create a tarball file named <rakudo-YYYY.MM.tar.gz>.
2f3a8ab @pmichaud Update docs/release_guide.pod with typical steps for cutting a release.
pmichaud authored
228
ecc4efa @perlpilot minor modifications
perlpilot authored
229 B<Caution>: this step removes any untracked files in F<t/spec>.
0d3c66e @moritz [docs] update release guide
moritz authored
230 So please make a backup if you have any important data in there.
e3fe329 @moritz [docs] warn about potential damage from "make release"
moritz authored
231
b4a5bb8 @jdhore Fix some minor incorrect stuff in the release_guide.
jdhore authored
232 =item 12.
2f3a8ab @pmichaud Update docs/release_guide.pod with typical steps for cutting a release.
pmichaud authored
233
234 Unpack the tar file into another area, and test that it
ecc4efa @perlpilot minor modifications
perlpilot authored
235 builds and runs properly using the same process in step 7.
236 If there are any problems, fix them and go back to step 7.
2f3a8ab @pmichaud Update docs/release_guide.pod with typical steps for cutting a release.
pmichaud authored
237
b4a5bb8 @jdhore Fix some minor incorrect stuff in the release_guide.
jdhore authored
238 =item 13.
2f3a8ab @pmichaud Update docs/release_guide.pod with typical steps for cutting a release.
pmichaud authored
239
b4a5bb8 @jdhore Fix some minor incorrect stuff in the release_guide.
jdhore authored
240 Tag the release by its release month ("YYYY.MM") and its code name.
2f3a8ab @pmichaud Update docs/release_guide.pod with typical steps for cutting a release.
pmichaud authored
241
b4a5bb8 @jdhore Fix some minor incorrect stuff in the release_guide.
jdhore authored
242 $ git tag -a -m"tag release #nn" YYYY.MM # e.g., 2010.02
2f3a8ab @pmichaud Update docs/release_guide.pod with typical steps for cutting a release.
pmichaud authored
243 $ git tag -a -m"tag release #nn" CODENAME # e.g., "Bratislava"
79d0b9a @pmichaud Fix "git push --tags" in docs/release_guide.pod .
pmichaud authored
244 $ git push --tags
2f3a8ab @pmichaud Update docs/release_guide.pod with typical steps for cutting a release.
pmichaud authored
245
b4a5bb8 @jdhore Fix some minor incorrect stuff in the release_guide.
jdhore authored
246 =item 14.
2f3a8ab @pmichaud Update docs/release_guide.pod with typical steps for cutting a release.
pmichaud authored
247
248 Upload the release tarball to github's download area at
01ae3fa @moritz [docs] propose ThousandOaks as a release name, in recognition of thei…
moritz authored
249 L<http://github.com/rakudo/rakudo/downloads>.
2f3a8ab @pmichaud Update docs/release_guide.pod with typical steps for cutting a release.
pmichaud authored
250
b4a5bb8 @jdhore Fix some minor incorrect stuff in the release_guide.
jdhore authored
251 =item 15.
2f3a8ab @pmichaud Update docs/release_guide.pod with typical steps for cutting a release.
pmichaud authored
252
ecc4efa @perlpilot minor modifications
perlpilot authored
253 To avoid public confusion with Rakudo Star releases, we now publish
ded33e1 @pmichaud Update release guide to note new publication strategy for
pmichaud authored
254 compiler release announcements ONLY to perl6-compiler@perl.org.
255 (We may restart widespread announcements of compiler releases
256 once they are known, or we may begin publishing a single
257 announcement for both.)
2f3a8ab @pmichaud Update docs/release_guide.pod with typical steps for cutting a release.
pmichaud authored
258
b4a5bb8 @jdhore Fix some minor incorrect stuff in the release_guide.
jdhore authored
259 =item 16.
2f3a8ab @pmichaud Update docs/release_guide.pod with typical steps for cutting a release.
pmichaud authored
260
ecc4efa @perlpilot minor modifications
perlpilot authored
261 Update the Wikipedia entry at L<http://en.wikipedia.org/wiki/Rakudo>.
2f3a8ab @pmichaud Update docs/release_guide.pod with typical steps for cutting a release.
pmichaud authored
262
b4a5bb8 @jdhore Fix some minor incorrect stuff in the release_guide.
jdhore authored
263 =item 17.
2f3a8ab @pmichaud Update docs/release_guide.pod with typical steps for cutting a release.
pmichaud authored
264
265 You're done! Celebrate with the appropriate amount of fun.
266
267 =back
381d26e @pmichaud Updates to docs/announce and docs/release_guide.pod .
pmichaud authored
268
f45384a @pmichaud First version of release_guide.pod, based on a proposed version
pmichaud authored
269 =head1 COPYRIGHT
2f3a8ab @pmichaud Update docs/release_guide.pod with typical steps for cutting a release.
pmichaud authored
270
fe2b4e1 @moritz [docs] update years in release_guide.pod, jdhore++. Also add the rest…
moritz authored
271 Copyright (C) 2009-2011, The Perl Foundation.
2f3a8ab @pmichaud Update docs/release_guide.pod with typical steps for cutting a release.
pmichaud authored
272
f45384a @pmichaud First version of release_guide.pod, based on a proposed version
pmichaud authored
273 =cut
2f3a8ab @pmichaud Update docs/release_guide.pod with typical steps for cutting a release.
pmichaud authored
274
f45384a @pmichaud First version of release_guide.pod, based on a proposed version
pmichaud authored
275 # Local Variables:
276 # fill-column: 100
277 # End:
278 # vim: expandtab shiftwidth=4:
Something went wrong with that request. Please try again.