Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Newer
Older
100644 300 lines (202 sloc) 9.053 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++ voluntueere...
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 July ...
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)
1624491 @moritz copy release_guide.pod changes from master, renumber for missed 2011.08 ...
moritz authored
41 2011-04-21 Rakudo #40 "ZA" (duff)
42 2011-05-19 Rakudo #41 "Dahut" (jdhore)
43 2011-06-23 Rakudo #42 "Bruxelles" (jdhore)
44 2011-07-21 Rakudo #43 "Beijing" (mberends,moritz)
45 2011-08-18 -- none --
01d3a6b @perlpilot Update release info
perlpilot authored
46 2011-09-30 Rakudo #44 "Riga" (tadzik)
e17c139 @perlpilot Choose a release name
perlpilot authored
47 2011-10-20 Rakudo #45 "Houston" (duff)
f45384a @pmichaud First version of release_guide.pod, based on a proposed version
pmichaud authored
48
fe2b4e1 @moritz [docs] update years in release_guide.pod, jdhore++. Also add the rest of...
moritz authored
49 =head2 Planned 2011 releases
f45384a @pmichaud First version of release_guide.pod, based on a proposed version
pmichaud authored
50
51 Dates are based on Parrot's expected release schedule.
52
1624491 @moritz copy release_guide.pod changes from master, renumber for missed 2011.08 ...
moritz authored
53 2011-11-17 Rakudo #46 -vacant-
54 2011-12-22 Rakudo #47 -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
1624491 @moritz copy release_guide.pod changes from master, renumber for missed 2011.08 ...
moritz authored
58 MadMongers (YAPC::NA 2012)
59 Columbus (YAPC::NA 2011, p6 track and hackathon)
60 Brazos Valley (YAPC::NA 2007, p6 hackathon)
61 Toronto (YAPC::NA 2005, p6 hackathon)
381d26e @pmichaud Updates to docs/announce and docs/release_guide.pod .
pmichaud authored
62
1d49284 @perlpilot [docs] Add tentative release dates through the end of 2010
perlpilot authored
63 More names can be gotten from L<http://www.pm.org> if you
64 can't think of one with any particular significance to Perl
03e6f5a @masak [docs/release_guide.pod] slight tweaks
masak authored
65 6 or Rakudo.
1d49284 @perlpilot [docs] Add tentative release dates through the end of 2010
perlpilot authored
66
2f3a8ab @pmichaud Update docs/release_guide.pod with typical steps for cutting a release.
pmichaud authored
67 =head2 Steps to create a release (for release managers)
68
69 Each Rakudo development release is timed to occur two
01ae3fa @moritz [docs] propose ThousandOaks as a release name, in recognition of their c...
moritz authored
70 days after a Parrot monthly release.
2f3a8ab @pmichaud Update docs/release_guide.pod with typical steps for cutting a release.
pmichaud authored
71
72 =over 4
73
74 =item 1.
75
03e6f5a @masak [docs/release_guide.pod] slight tweaks
masak authored
76 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
77
78 =over 4
79
80 =item *
81
82 Remind people of the upcoming release, invite people to
01ae3fa @moritz [docs] propose ThousandOaks as a release name, in recognition of their c...
moritz authored
83 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
84 release name, etc.
85
86 =item *
87
88 Verify that the Parrot trunk head is able to build Rakudo
e33d20e @moritz [docs] mention smolder reports in release_guide.pod
moritz authored
89 and run the spectest suite. Also check the smolder reports
0d3c66e @moritz [docs] update release guide
moritz authored
90 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
91
92 =item *
93
94 If Parrot's trunk exhibits any problems building or running
95 Rakudo (that require changes to Parrot to fix), immediately
96 report them to the Parrot development team so they can be
97 fixed prior to Parrot's release.
98
99 =item *
100
101 Review the RT queue for tickets that might need resolving
cf27952 [docs] bare bones 2009-08 announcement and release_guide update
Kyle Hasselbacher authored
102 prior to the release, addressing them as needed. "Tickets
103 that need resolving" is left your discretion. Any problem
104 that has a large impact on users is worth addressing either
105 as a fix or as prominent documentation (the README and/or
106 the release announcement).
2f3a8ab @pmichaud Update docs/release_guide.pod with typical steps for cutting a release.
pmichaud authored
107
108 =back
109
110 =item 2.
111
59332ae @perlpilot update release guide
perlpilot authored
112 Once Parrot issues its monthly release, tag NQP for release
113 according to the year and month of the release:
114
115 $ git clone https://github.com/perl6/nqp.git
116 $ cd nqp
117
118 Follow the steps in NQP's F<docs/release_guide.pod>.
e0bfb29 @moritz [build] git_describe is enough, no need for a separate version specifica...
moritz authored
119
2f3a8ab @pmichaud Update docs/release_guide.pod with typical steps for cutting a release.
pmichaud authored
120 =item 3.
121
01ae3fa @moritz [docs] propose ThousandOaks as a release name, in recognition of their c...
moritz authored
122 The short period following the Parrot release until the
123 Rakudo release is generally intended for fixing bugs,
2f3a8ab @pmichaud Update docs/release_guide.pod with typical steps for cutting a release.
pmichaud authored
124 updating documentation, and so on.
125
1624491 @moritz copy release_guide.pod changes from master, renumber for missed 2011.08 ...
moritz authored
126 =item 4.
f3eb64f [release_guide] Added instructions for updating the leap-second tables.
Kodi Arfer authored
127
128 Update Rakudo's leap-second tables:
129
130 $ perl tools/update-tai-utc.pl src/core/tai-utc.pm
131
132 If a new leap second has been announced, F<tai-utc.pm> will be modified, so
133 commit the new version:
134
135 $ git commit src/core/tai-utc.pm
136
137 But probably there won't be any new leap seconds, in which case the file
138 will be unchanged.
139
1624491 @moritz copy release_guide.pod changes from master, renumber for missed 2011.08 ...
moritz authored
140 =item 5.
2f3a8ab @pmichaud Update docs/release_guide.pod with typical steps for cutting a release.
pmichaud authored
141
142 As the actual release date nears, review the git log history
143 to see if any additional items need to be added to the ChangeLog.
144 This can be conveniently done with "git log --since=yyyy-mm-dd --reverse".
145
48c1791 @pmichaud More release_guide.pod improvements.
pmichaud authored
146 $ git commit docs/ChangeLog
147
1624491 @moritz copy release_guide.pod changes from master, renumber for missed 2011.08 ...
moritz authored
148 =item 6.
2f3a8ab @pmichaud Update docs/release_guide.pod with typical steps for cutting a release.
pmichaud authored
149
150 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
151 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
152 previous month's file as a starting point for this. Highlight areas
153 in which the new release is significant. If possible, also give
154 some small details about the choice of release name. (If the
155 details are a bit lengthy, this can often best be done as a separate
156 section at the bottom of the announcement.)
157
082caee @moritz [docs] instruct release manager to include a list of contributors in the...
moritz authored
158 Include a list of contributors since the last release in the announcement.
159 You can get an automatically generated list by running
160
cbff7d0 @masak [docs/release_guide.pod] updates and improvements
masak authored
161 $ perl tools/contributors.pl
082caee @moritz [docs] instruct release manager to include a list of contributors in the...
moritz authored
162
ecc4efa @perlpilot minor modifications
perlpilot authored
163 B<Note>: this program requires the perl module L<Date::Simple> be installed.
164
082caee @moritz [docs] instruct release manager to include a list of contributors in the...
moritz authored
165 Please check the result manually for duplicates and other errors.
166
9be7890 @pmichaud Update release guide to note that we now use dots instead of hyphens
pmichaud authored
167 $ git add docs/announce/YYYY.MM
48c1791 @pmichaud More release_guide.pod improvements.
pmichaud authored
168 $ git commit docs
169
1624491 @moritz copy release_guide.pod changes from master, renumber for missed 2011.08 ...
moritz authored
170 =item 7.
2f3a8ab @pmichaud Update docs/release_guide.pod with typical steps for cutting a release.
pmichaud authored
171
172 Update the release dates and names at the top of this file
4c248e5 @masak [docs/release_guide.pod] s/-/_/ in file name
masak authored
173 (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
174 you find any steps that are missing.
175
4c248e5 @masak [docs/release_guide.pod] s/-/_/ in file name
masak authored
176 $ git commit docs/release_guide.pod
48c1791 @pmichaud More release_guide.pod improvements.
pmichaud authored
177
1624491 @moritz copy release_guide.pod changes from master, renumber for missed 2011.08 ...
moritz authored
178 =item 8.
2f3a8ab @pmichaud Update docs/release_guide.pod with typical steps for cutting a release.
pmichaud authored
179
180 Make sure everything compiles and runs from a known clean state:
181
182 $ make realclean
183 $ perl Configure.pl --gen-parrot
184 $ make
185 $ make test
a63c7e0 @moritz add stresstest target, and move day 17 of the advent tests to stresstest
moritz authored
186 $ make stresstest
2f3a8ab @pmichaud Update docs/release_guide.pod with typical steps for cutting a release.
pmichaud authored
187
674c984 @perlpilot [release] update release_guide
perlpilot authored
188 There are many tests to run for the stresstest target. If
189 you have a machine with multiple CPU cores, you may want to
190 execute that last as
191
192 $ TEST_JOBS=4 make stresstest
193
194 where 4 is the number of CPU cores. This should make the
195 total time to execute all of the tests dramatically less.
196
197 Continue adjusting things until make stresstest passes as expected.
3c7289b @pmichaud Small improvement to guidelines for failing spectests at time of release...
pmichaud authored
198 Often this means fixing a bug, fudging a test, or (temporarily?)
0d3c66e @moritz [docs] update release guide
moritz authored
199 commenting out a test file in t/spectest.data . Use your best
3c7289b @pmichaud Small improvement to guidelines for failing spectests at time of release...
pmichaud authored
200 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
201
1624491 @moritz copy release_guide.pod changes from master, renumber for missed 2011.08 ...
moritz authored
202 =item 9.
0d3c66e @moritz [docs] update release guide
moritz authored
203
9cbe751 @moritz update release guide to include tagging of NQP
moritz authored
204 =over 4
205
206 =item *
207
208 Go to the NQP repository, tag it and push the tags
209
210 $ git tag -a -m"tag release YYYY.MM" YYYY.MM # e.g., 2010.02
211
212 Check the NQP revision
213
214 $ git describe # should come out as YYYY.MM
215 # if not, contact your local git vendor or #perl6
216
217 If you got the same version back as you entered, proceed with
218
219 $ git push --tags
220
221 =item *
222
223 Go back to the Rakudo repository, and update the NQP dependency:
224
225 $ echo YYYY.MM > tools/build/NQP_REVISION
226 $ git commit -m '[release] bump NQP revision' tools/build/NQP_REVISION
227
228 =item *
229
0d3c66e @moritz [docs] update release guide
moritz authored
230 Enter the new version into the F<VERSION> file, and commit the changes:
231
232 $ echo 2010.09 > VERSION
233 $ git commit -m '[release] bump VERSION' VERSION
234
9cbe751 @moritz update release guide to include tagging of NQP
moritz authored
235 =back
236
1624491 @moritz copy release_guide.pod changes from master, renumber for missed 2011.08 ...
moritz authored
237 =item 10.
2f3a8ab @pmichaud Update docs/release_guide.pod with typical steps for cutting a release.
pmichaud authored
238
239 Make sure any locally modified files have been pushed back to github.
240
48c1791 @pmichaud More release_guide.pod improvements.
pmichaud authored
241 $ git status
242 $ git push
243
1624491 @moritz copy release_guide.pod changes from master, renumber for missed 2011.08 ...
moritz authored
244 =item 11.
2f3a8ab @pmichaud Update docs/release_guide.pod with typical steps for cutting a release.
pmichaud authored
245
cbff7d0 @masak [docs/release_guide.pod] updates and improvements
masak authored
246 Create a tarball by entering C<make release VERSION=YYYY.MM>,
240e2f0 @nunorc Testing commit.
nunorc authored
247 where YYYY.MM is the month for which the release is being made.
f83304d @moritz [docs] markup fix
moritz authored
248 This will create a tarball file named C<rakudo-YYYY.MM.tar.gz>.
2f3a8ab @pmichaud Update docs/release_guide.pod with typical steps for cutting a release.
pmichaud authored
249
ecc4efa @perlpilot minor modifications
perlpilot authored
250 B<Caution>: this step removes any untracked files in F<t/spec>.
0d3c66e @moritz [docs] update release guide
moritz authored
251 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
252
1624491 @moritz copy release_guide.pod changes from master, renumber for missed 2011.08 ...
moritz authored
253 =item 12.
2f3a8ab @pmichaud Update docs/release_guide.pod with typical steps for cutting a release.
pmichaud authored
254
255 Unpack the tar file into another area, and test that it
ecc4efa @perlpilot minor modifications
perlpilot authored
256 builds and runs properly using the same process in step 7.
257 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
258
1624491 @moritz copy release_guide.pod changes from master, renumber for missed 2011.08 ...
moritz authored
259 =item 13.
2f3a8ab @pmichaud Update docs/release_guide.pod with typical steps for cutting a release.
pmichaud authored
260
1624491 @moritz copy release_guide.pod changes from master, renumber for missed 2011.08 ...
moritz authored
261 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
262
1624491 @moritz copy release_guide.pod changes from master, renumber for missed 2011.08 ...
moritz authored
263 $ 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
264 $ git tag -a -m"tag release #nn" CODENAME # e.g., "Bratislava"
79d0b9a @pmichaud Fix "git push --tags" in docs/release_guide.pod .
pmichaud authored
265 $ git push --tags
2f3a8ab @pmichaud Update docs/release_guide.pod with typical steps for cutting a release.
pmichaud authored
266
1624491 @moritz copy release_guide.pod changes from master, renumber for missed 2011.08 ...
moritz authored
267 =item 14.
2f3a8ab @pmichaud Update docs/release_guide.pod with typical steps for cutting a release.
pmichaud authored
268
269 Upload the release tarball to github's download area at
01ae3fa @moritz [docs] propose ThousandOaks as a release name, in recognition of their c...
moritz authored
270 L<http://github.com/rakudo/rakudo/downloads>.
2f3a8ab @pmichaud Update docs/release_guide.pod with typical steps for cutting a release.
pmichaud authored
271
1624491 @moritz copy release_guide.pod changes from master, renumber for missed 2011.08 ...
moritz authored
272 =item 15.
2f3a8ab @pmichaud Update docs/release_guide.pod with typical steps for cutting a release.
pmichaud authored
273
ecc4efa @perlpilot minor modifications
perlpilot authored
274 To avoid public confusion with Rakudo Star releases, we now publish
ded33e1 @pmichaud Update release guide to note new publication strategy for
pmichaud authored
275 compiler release announcements ONLY to perl6-compiler@perl.org.
276 (We may restart widespread announcements of compiler releases
277 once they are known, or we may begin publishing a single
278 announcement for both.)
2f3a8ab @pmichaud Update docs/release_guide.pod with typical steps for cutting a release.
pmichaud authored
279
1624491 @moritz copy release_guide.pod changes from master, renumber for missed 2011.08 ...
moritz authored
280 =item 16.
2f3a8ab @pmichaud Update docs/release_guide.pod with typical steps for cutting a release.
pmichaud authored
281
ecc4efa @perlpilot minor modifications
perlpilot authored
282 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
283
1624491 @moritz copy release_guide.pod changes from master, renumber for missed 2011.08 ...
moritz authored
284 =item 17.
2f3a8ab @pmichaud Update docs/release_guide.pod with typical steps for cutting a release.
pmichaud authored
285
286 You're done! Celebrate with the appropriate amount of fun.
287
288 =back
381d26e @pmichaud Updates to docs/announce and docs/release_guide.pod .
pmichaud authored
289
f45384a @pmichaud First version of release_guide.pod, based on a proposed version
pmichaud authored
290 =head1 COPYRIGHT
2f3a8ab @pmichaud Update docs/release_guide.pod with typical steps for cutting a release.
pmichaud authored
291
fe2b4e1 @moritz [docs] update years in release_guide.pod, jdhore++. Also add the rest of...
moritz authored
292 Copyright (C) 2009-2011, The Perl Foundation.
2f3a8ab @pmichaud Update docs/release_guide.pod with typical steps for cutting a release.
pmichaud authored
293
f45384a @pmichaud First version of release_guide.pod, based on a proposed version
pmichaud authored
294 =cut
2f3a8ab @pmichaud Update docs/release_guide.pod with typical steps for cutting a release.
pmichaud authored
295
f45384a @pmichaud First version of release_guide.pod, based on a proposed version
pmichaud authored
296 # Local Variables:
297 # fill-column: 100
298 # End:
299 # vim: expandtab shiftwidth=4:
Something went wrong with that request. Please try again.