* Development phases::
* Minor release checklist::
* Major release checklist::
-* Making a release::
+* Release extra notes::
@end menu
A @qq{minor release} means an update of @code{y} in @code{2.x.y}.
-email brief summary to info-lilypond
+@subheading Pre-release
+@enumerate
+
+@item Add a news item to @file{Documentation/web/news-front.itexi}
+
+@item Check that lilypond builds from scratch in an out-of-tree
+build.
+
+@item
+If you do not have the previous release test-output tarball, download
+it and put it in @code{regtests/}
+
+@item Build release on GUB by running:
+
+@example
+make lilypond
+@end example
+
+@noindent
+or something like:
+
+@example
+make LILYPOND_BRANCH=stable/2.12 lilypond
+@end example
+
+
+@item Check the regtest comparison in @file{uploads/webtest/} for
+any unintentional breakage.
+
+@item Check if the mingw build contains lilypad.exe; when you find
+that it doesn't, rebuild @code{mingw::lilypond-installer}. Repeat
+as necessary.
+
+@uref{http://code.google.com/p/lilypond/issues/detail?id=901}
+
+@item If any work was done on GUB since the last release, upload
+binaries to a temporary location, ask for feedback, and wait a day
+or two in case there's any major problems.
+
+@end enumerate
+
+
+@subheading Post-release
+
+@enumerate
+
+@item If you're not right user on the webserver, remove the "t"
+from the rsync command in @file{test-lily/rsync-lily-doc.py} and
+@file{test-lily/rsync-test.py}
+
+@code{graham} owns v2.13; @code{han-wen} owns v2.12.
+
+@item Upload GUB by running:
+
+@example
+make lilypond-upload LILYPOND_BRANCH=master LILYPOND_REPO_URL=git://git.sv.gnu.org/lilypond.git
+@end example
+
+@noindent
+or something like:
+
+@example
+make lilypond-upload LILYPOND_BRANCH=stable/2.12 LILYPOND_REPO_URL=git://git.sv.gnu.org/lilypond.git
+@end example
+
+
+@item Update @file{VERSION} in lilypond git.
+
+@item Wait a few hours for the website to update.
+
+@item Email release notice to @code{info-lilypond}
+
+@end enumerate
@node Major release checklist
* Run convert-ly on all files, bump parser minimum version.
+* update links to distros providing lilypond packages? link in
+Documentation/web/download.itexi . This has nothing to do with
+the release, but I'm dumping this here so I'll find it when I
+reorganize this list later. -gp
+
* Make FTP directories on lilypond.org
* website:
- doc auto redirects to v2.LATEST-STABLE
+ - add these two lines to http://www.lilypond.org/robots.txt:
+
+@example
+Disallow: /doc/v2.PREVIOUS-STABLE/
+Disallow: /doc/v2.CURRENT-DEVELOPMENT/
+@end example
+
News:
comp.music.research
versiontracker.com [auto]
hitsquad.com [auto]
http://www.svgx.org
+ https://savannah.gnu.org/news/submit.php?group_id=1673 @c => planet.gnu.org
+@node Release extra notes
+@section Release extra notes
-@node Making a release
-@section Making a release
+If releasing stable/2.12, then:
-@subheading Technical notes
+- apply doc patch: patches/rsync-lily.patch (or something like
+ that)
-To build GUB:
+- change infodir in gub/specs/lilypond-doc.py from "lilypond.info"
+ to "lilypond-web.info"
-@itemize
-@item
-Run the following (from the gub/ dir):
+GENERAL STUFF TO BE MOVED ELSEWHERE
-@example
-make -f lilypond.make update-versions
-@end example
+Regenerating regtests (if the lilypond-book naming has changed):
-@item
-Download
-@uref{http://lilypond.org/download/binaries/test-output/lilypond-2.13.0-0.test-output.tar.bz2,lilypond-2.13.0-0.test-output.tar.bz2}
+- git checkout release/lilypond-X.Y.Z-A
-@item
-Copy / move / link it to uploads, but rename it to
-@file{lilypond-2-13.test-output.tar.bz2}
+- take lilypond-book and any related makefile updates from the
+ latest git.
-@item
-Run:
+- configure; make; make test
-@example
-make lilypond
-@end example
+- tar -cjf lilypond-X.Y.Z-A.test-output.tar.bz2
+ input/regression/out-test/
-@end itemize
+- mv lilypond-X.Y.Z-A.test-output.tar.bz2 ../gub/regtests/
-To upload:
+- cd ../gub/regtests/
-@itemize
+- make lilypond
-@item remove the "t" from the rsync command in test-lily/rsync-lily-doc.py
-@item run:
+New contributor / mentor idea:
-@example
-python test-lily/upload.py --branch=master --url git://git.sv.gnu.org/lilypond.git --execute
-@end example
+- tell them to spend 10 minutes on a problem, then give up and ask
+ for help from their mentor
-@end itemize
+- the mentor should tell them if a "make clean; make" (or the same
+ for docs) is required
-@subheading Policy notes
+Latest website:
-@itemize
+- generated hourly on lilypond.org. Only split-HTML; big-html and
+ pdf are not generated hourly (wait for the next devel release)
-@item
-Build with GUB, and check the regtests.
-@item
-Upload the tarballs and sh scripts.
+VERSION-SPECIFIC MACROS
-@item
-(if major)
-Branch MASTER to stable/2.x.
+- made with scripts/build/create-version-itexi.py
-@item
-Make announcement.
+- used extensively in the WEBSITE_ONLY_BUILD version of the
+ website (made with website.make, and used on lilypond.org)
-@end itemize
+- not (?) used in the main docs?
+
+- FIXME: the numbers in VERSION: MINOR should be 1 more than the
+ last release, VERSION_DEVEL should be the last *online* release.
+
+
+LANGUAGE LISTS
+
+- a translator can ask for an official lilypond-xy mailing list
+ once they've finished all "priority 1" translation items.