diff options
| author | William Deegan <bill@baddogconsulting.com> | 2015-09-21 17:03:12 (GMT) |
|---|---|---|
| committer | William Deegan <bill@baddogconsulting.com> | 2015-09-21 17:03:12 (GMT) |
| commit | 0941093e0e5a030faa49968457638a3a6aee7ad8 (patch) | |
| tree | 6d33513c14eb6eac0531dd050de0ecca4c39bd79 /HOWTO/release.txt | |
| download | SCons-2.4.0.zip SCons-2.4.0.tar.gz SCons-2.4.0.tar.bz2 | |
release 2.4.02.4.0
Diffstat (limited to 'HOWTO/release.txt')
| -rw-r--r-- | HOWTO/release.txt | 656 |
1 files changed, 656 insertions, 0 deletions
diff --git a/HOWTO/release.txt b/HOWTO/release.txt new file mode 100644 index 0000000..5fbbfc7 --- /dev/null +++ b/HOWTO/release.txt @@ -0,0 +1,656 @@ +__COPYRIGHT__ + +This document covers how to prepare major releases of SCons--that is, +releases numbered with X.Y format, such as 0.93, 1.0, etc. + +If you need to prepare a specific subrelease (X.Y.Z, such as 0.94.1), +then see the document HOWTO/subrelease.txt. + +Things to do to release a new X.Y version of SCons: + + Prepare the describe-the-release section for the announcements + + summarize changes from src/CHANGES.txt + + template is below, search for "describe-the-release" + + send this out for review while you get the rest of the + release ready! + + Build and test candidate packages + + test on Linux + + test on Windows NT + + 1) tar zxf scons-src-{version}.tar.gz + cd scons-src-{version} + python runtest.py -a + + 2) tar zxf scons-{version}.tar.gz + cd scons-{version} + python setup.py install + cd scons-src-{version} + python runtest.py -a -X -x C:\Python20\scons.bat + + 3) scons-{verson}.win32.exe + cd scons-src-{version} + python runtest.py -a -X -x C:\Python20\scons.bat + + 4) mkdir temporary_directory + cd temporary_directory + tar zxf scons-local-{version}.tar.gz + cd scons-src-{version} + python runtest.py -a -x C:\temporary_directory\scons.py + + Check in any changes necessary to make everything work + + Update the user's guide + + sh bin/docdiff + + sh bin/docupdate + + END THE CURRENT DEVELOPMENT BRANCH + + ae_p scons.0 + + aede {96} + + aerpass {96} + + aeib {96} + + aed + + aeb + + aet + + aet -reg + + aeipass + + START THE NEW BRANCH FOR RELEASE + + aenbr -p scons.0 {97} + + aenc -p scons.0.{97} + + Call it something like, + "Initialize the new branch for release." + Cause = internal_enhancement. + Exempt it from all tests (*_exempt = true). + + ae_p scons.0.{97} + + aedb 100 + + aecd + + # Change the hard-coded package version numbers + # in the following files. + aecp README + vi README + + aecp SConstruct + vi SConstruct + + aecp QMTest/TestSCons.py + vi QMTest/TestSCons.py + + # Read through and update the README files if necessary + [optional] aecp README + [optional] vi README + + [optional] aecp src/README.txt + [optional] vi src/README.txt + + # Prepare src/CHANGES.txt + aecp src/CHANGES.txt + vi src/CHANGES.txt + + date -R the latest release + + should be current if this has been updated + as each change went in. + + # Prepare src/RELEASE.txt + aecp src/RELEASE.txt + vi src/RELEASE.txt + + date -R the latest release + + Read through and edit appropriately. + + Can probably keep most of the existing text + + Add any new known problems + + # Prepare debian/changelog + aecp debian/changelog + vi debian/changelog + + date -R the latest release + + # Now build and prepare the release itself. + aeb + + aed + + aet -reg + + aede + + etc. + + + + Read through the FAQ for any updates + + + + Upload the packages to the SourceForge incoming FTP: + + ftp upload.sourceforge.net + anonymous + <your email> + cd incoming + bin + put scons-0.{97}-1.noarch.rpm + put scons-0.{97}-1.src.rpm + put scons-0.{97}.tar.gz + put scons-0.{97}.win32.exe + put scons-0.{97}.zip + put scons-local-0.{97}.tar.gz + put scons-local-0.{97}.zip + put scons-src-0.{97}.tar.gz + put scons-src-0.{97}.zip + put scons_0.{97}-1_all.deb + + Create the new release at the SourceForge project page: + + Pull down the "Admin" menu and select "File Releases" + + Package Name: scons + + => Add Release + + New release name: 0.{97} + + Upload the RELEASE.txt file. + + Upload the CHANGES.txt file. + + Check the "Preserve my pre-formatted text." box (IMPORTANT!) + + Click "Submit/Refresh" (IMPORTANT!) + + Check the SCons files you uploaded + + Click "Add Files and/or Refresh View" + + Edit the file info: + + scons-0.{97}-1.noarch.rpm Any .rpm + scons-0.{97}-1.src.rpm Any Source .rpm + scons-0.{97}.tar.gz Any .gz + scons-0.{97}.win32.exe i386 .exe (32-bit Windows) + scons-0.{97}.zip Any .zip + scons_0.{97}-1_all.deb Any .deb + + Click "Update/Refresh" for each file; this must be done + one at a time. + + Check "I'm sure." and click "Send Notice" in the Email + Release Notice section. + + + Pull down the "Admin" menu and select "File Releases" + + Package Name: scons-local + + => Add Release + + New release name: 0.{97} + + Upload the RELEASE.txt file. + + Upload the CHANGES.txt file. + + Check the "Preserve my pre-formatted text." box (IMPORTANT!) + + Click "Submit/Refresh" (IMPORTANT!) + + Check the SCons files you uploaded + + Click "Add Files and/or Refresh View" + + Edit the file info: + + scons-local-0.{97}.tar.gz Any .gz + scons-local-0.{97}.zip Any .zip + + Click "Update/Refresh" for each file; this must be done + one at a time. + + Check "I'm sure." and click "Send Notice" in the Email + Release Notice section. + + + Pull down the "Admin" menu and select "File Releases" + + Package Name: scons-src + + => Add Release + + New release name: 0.{97} + + Upload the RELEASE.txt file. + + Upload the CHANGES.txt file. + + Check the "Preserve my pre-formatted text." box (IMPORTANT!) + + Click "Submit/Refresh" (IMPORTANT!) + + Check the SCons files you uploaded + + Click "Add Files and/or Refresh View" + + Edit the file info: + + scons-src-0.{97}.tar.gz Any .gz + scons-src-0.{97}.zip Any .zip + + Click "Update/Refresh" for each file; this must be done + one at a time. + + Check "I'm sure." and click "Send Notice" in the Email + Release Notice section. + + + Hide release 0.{95} at the SourceForge download page: + + Pull down the "Admin" menu and select "File Releases" + + Package Name: scons + + => Edit Releases + + Release Name: 0.{95} + + => Edit This Release + + Status: => Hidden + + Click Submit/Refresh + + + Pull down the "Admin" menu and select "File Releases" + + Package Name: scons-local + + => Edit Releases + + Release Name: 0.{95} + + => Edit This Release + + Status: => Hidden + + Click Submit/Refresh + + + Pull down the "Admin" menu and select "File Releases" + + Package Name: scons-src + + => Edit Releases + + Release Name: 0.{95} + + => Edit This Release + + Status: => Hidden + + Click Submit/Refresh + + + + Add a new release for 0.{97} in the Issue Tracker at tigris.org: + + Click "Issue Tracker" on the left-hand nav bar + + Click "Configuration options" + + Click "Add/edit components" + + Under "scons" + To the right of "Add ..." + Click "Version" + + At the bottom of the list click "Add" + + Fill in the "Version:" box with 0.{97} + + Check "Add this version to *all* components." + + Click the "Add" button + + + + Update the scons.org web site: + + svn co http://scons.tigris.org/svn/scons/scons.org + + cd scons.org + + CHANGES.txt: copy new version from built source tree + + download.php: new version number + + includes/templates.php: + update $latestrelease + + includes/versions.php: + update $stablerelease and/or $latestrelease + add new version number to $docversions[], + IMPORTANT: SHIFT $docversions[] INDEX NUMBERS :-( + + index.php: announcement on the home page + remove out-of-date announcements + + news-raw.xhtml: add announcement to list (dup from home page) + + RELEASE.txt: copy new version from built source tree + + mkdir doc/0.{97} + + (cd doc/0.{97} && tar zxf scons-doc-0.{97}.tar.gz) + + svn add doc/0.{97} + + svn commit + + ssh -l scons manam.pair.com + + cd public_html + + mkdir new + + svn co http://scons.tigris.org/svn/scons/scons.org new + + mv production previous && mv new production + + [point your browser to http://www.scons.org/] + + + Update the project pages at tigris.org: + + svn co http://scons.tigris.org/svn/scons/trunk + + cd trunk + + www/project_highlights.html + + www/roadmap.html + + svn commit + + + + + Test downloading from the SourceForge project page + + You may need to wait a good bit; they seem to update + this on half-hour cycles. + + + Test downloading from the web site download page + + + + Add news item to the SourceForge project page + + Pull down "Project => News" + + Click "Submit" + + Fill in the "Subject:" box + + Cut-and-paste the announcement text into the "Details:" box + + Click "submit" + + + + Add news item to the tigris.org project page + + Click "Announcements" + + Click "Add new announcement" + + Double-check the date (probably already set) + + Fill in the "Headline" box + + Fill in the "Body" box (probably short) + + Click "Add new announcement" + + + + Announce to the following mailing lists (template below): + + scons-announce@lists.sourceforge.net + scons-users@lists.sourceforge.net + scons-devel@lists.sourceforge.net + + [right away] + + python-announce@python.org + + [right away, it's moderated and will take + some time to get through] + + linux-announce@news.ornl.gov + + [right away, it's moderated and will take + some time to get through] + + [optional] cons-discuss@gnu.org + + [only if it's a really big announcement, + I said we wouldn't bug this list] + + python-list@python.org + + [wait until business hours so the announcement + hits mailboxes while U.S. workers are active] + + Notify Gentoo Linux of the update + + For now, we will do this by entering a bug report, and + attaching the files in build/gentoo to the report. Go + to: + + http://bugs.gentoo.org/ + + This requires an account (based on your email address) + and a certain amount of Bugzilla-based navigation, + but nothing that's too difficult. + + This is just my best stab at a process that will work + for Gentoo. This process may change if the Gentoo + developers come back and want something submitted in + some other form. + + Notify www.cmtoday.com/contribute.html + + [This guy wants an announcement no more frequently than + once a month, so save it for a future release if it's + been too soon since the previous one.] + + Notify freshmeat.net + + [Wait until the morning so the announcement hits the + main freshmeat.net page while people in the U.S. are + awake and working] + + + + Checkin another change to prepare for development on this branch. + + # Prep the following files to track the changes + # made during the next development cycle + aecp src/CHANGES.txt src/RELEASE.txt + vi src/CHANGES.txt src/RELEASE.txt + + # Optionally, update release numbers in the following: + [optional] aecp HOWTO/change.txt + [optional] vi HOWTO/change.txt + + [optional] aecp HOWTO/release.txt + [optional] vi HOWTO/release.txt + + + + +======================= +Template describe-the-release section: + +IMPORTANT: Release 0.95 contains the following interface changes: + + - XXX + + See the release notes for more information about these changes. + +This release adds the following features: + + - XXX + +This release enhances the following existing features: + + - XXX + +The following fixes have been added: + + - XXX + +Performance has been improved as follows: + + - XXX + +The following changes have been made to the SCons packaging: + + - XXX + +The documentation has been improved: + + - XXX +======================= +Template scons-devel announcement: + +SConspirators-- + +SCons beta release 0.95 is now available for download. + +XXX Template describe-the-release section goes here XXX + +Special thanks to XXX, XXX, and XXX for their contributions to this +release. + + --SK +======================= +Template scons-users + scons-announce announcement: + +Version 0.95 of SCons has been released and is available for download +from the SCons web site: + + http://www.scons.org/ + +Or through the download link at the SCons project page at SourceForge: + + http://sourceforge.net/projects/scons/ + +RPM and Debian packages and a Win32 installer are all available, in +addition to the traditional .tar.gz and .zip files. + + +WHAT'S NEW IN THIS RELEASE? + +XXX Template describe-the-release section goes here XXX + + +ACKNOWLEDGEMENTS + +Special thanks to XXX, XXX, and XXX for their contributions to this +release. + +On behalf of the SCons team, + + --SK +======================= +Template python-announce, linux-announce and python-list announcement: + +SCons is a software construction tool (build tool, or make tool) written +in Python. It is based on the design which won the Software Carpentry +build tool competition in August 2000. + +Version 0.95 of SCons has been released and is available for download +from the SCons web site: + + http://www.scons.org/ + +Or through the download link at the SCons project page at SourceForge: + + http://sourceforge.net/projects/scons/ + +RPM and Debian packages and a Win32 installer are all available, in +addition to the traditional .tar.gz and .zip files. + + +WHAT'S NEW IN THIS RELEASE? + +XXX Template describe-the-release section goes here XXX + + +ABOUT SCONS + +Distinctive features of SCons include: + + - a global view of all dependencies; no multiple passes to get + everything built properly + - configuration files are Python scripts, allowing the full use of a + real scripting language to solve difficult build problems + - a modular architecture allows the SCons Build Engine to be + embedded in other Python software + - the ability to scan files for implicit dependencies (#include files); + - improved parallel build (-j) support that provides consistent + build speedup regardless of source tree layout + - use of MD5 signatures to decide if a file has really changed; no + need to "touch" files to fool make that something is up-to-date + - easily extensible through user-defined Builder and Scanner objects + - build actions can be Python code, as well as external commands + +An scons-users mailing list is available for those interested in getting +started using SCons. You can subscribe at: + + http://lists.sourceforge.net/lists/listinfo/scons-users + +Alternatively, we invite you to subscribe to the low-volume +scons-announce mailing list to receive notification when new versions of +SCons become available: + + http://lists.sourceforge.net/lists/listinfo/scons-announce + + +ACKNOWLEDGEMENTS + +Special thanks to XXX, XXX, and XXX for their contributions to this +release. + +On behalf of the SCons team, + + --SK |
