NQP's development release cycle is intimately tied to Rakudo's release cycle. There is no separate, independent release cycle for NQP.
Parrot releases the third Tuesday of each month; Rakudo will generally issue its own development release soon after the Parrot release (Usually within a few days). To accomplish this, NQP must be tagged for release immediately prior to the Rakudo release.
- * Note: This step has changed starting in 2012.07.
Check to see if tools/build/PARROT_REVISION needs to be bumped to a later Parrot release. If PARROT_REVISION already contains a Parrot release tag (e.g.,
RELEASE_3_9_0) then it does not need to be changed. If PARROT_REVISION refers to an interim commit, as in
RELEASE_4_6_0-27-gda9adfa, then update PARROT_REVISION to contain the tag corresponding to Parrot's monthly release.
To see a list of Parrot release tags, use
git tagon an up-to-date Parrot repository.
Once tools/build/PARROT_REVISION has been set to a Parrot release, it must not be changed (except to another Parrot release) until after the Rakudo release.
- Change the
VERSIONfile in nqp:
$ echo '2012.12' > VERSION $ git commit -m 'bump VERSION to 2012.12' VERSION $ git push
- Make sure everything compiles and runs from a known clean state. This step is especially important if PARROT_REVISION was changed in step 1 above.
$ make realclean $ perl Configure.pl --gen-parrot $ make $ make test
Resolve any problems that may still exist.
- Create a release tarball (needed for the Rakudo Star release) by entering
make release VERSION=YYYY.MM, where YYYY.MM is the month for which the release is being made. This will create a tarball file named
- Unpack the tar file into another area, and test that it builds and runs properly using the same process in step 3 above. If there are any problems, fix them and go back to step 3.
- Tag NQP by its release month ("YYYY.MM")
$ git tag -a -m"tag release YYYY.MM" YYYY.MM # e.g., 2012.12 $ git push --tags
- Upload the release tarball to Github's download area at http://github.com/perl6/nqp/downloads.
- If creating the NQP release as part of a Rakudo release, continue with the Rakudo release process.