From 5f98ca3def3aeae185045a91987f59d2f1355d82 Mon Sep 17 00:00:00 2001 From: Gary Oberbrunner Date: Sun, 5 Aug 2012 14:14:04 +0000 Subject: Update CHANGES, Release and Announce prior to 2.2.0 release. --- src/Announce.txt | 26 ++++++----- src/CHANGES.txt | 1 + src/RELEASE.txt | 135 ++++++++++++++----------------------------------------- 3 files changed, 51 insertions(+), 111 deletions(-) diff --git a/src/Announce.txt b/src/Announce.txt index be3148d..e2b4001 100644 --- a/src/Announce.txt +++ b/src/Announce.txt @@ -19,26 +19,32 @@ effectively, please go to http://scons.org/lists.php#users to sign up for the scons-users mailing list. -RELEASE 2.1.0 - Mon, 09 Sep 2011 20:54:57 -0700 +RELEASE 2.2.0 - Mon, 09 Sep 2011 20:54:57 -0700 - Please consult the RELEASE.txt file for a summary changes since the last + Please consult the RELEASE.txt file for a summary of changes since the last release and consult the CHANGES.txt file for complete a list of changes since last release. This announcement highlights only the important changes. - IMPORTANT: In 1.3.0 and 2.0.0, explicit dependencies (configured via - the Depends() call) are ignored for any nodes that do not have builders. - This known issue[1] will typically only happen if you explicitly - configure a builder call to create multiple output files, some of which - are "hidden" from SCons by not being listed in the targets list, and then - use Depends() to establish an explicit dependency on a "hidden" file. - [1] See http://scons.tigris.org/issues/show_bug.cgi?id=2647 for details. + Please note the following important changes since release 2.1.0: + + -- New gettext toolset for internationalization + + -- Support for Visual Studio 11 + + -- Support for Intel C/C++ compiler v12 on Linux and Mac + + -- LaTeX support for multibib, biblatex and biber Please note the following important changes since release 2.0.0: + -- Support for Windows manifest generation + + -- SCons now searches sitewide dirs for site_scons + -- Support for Latex bibunits package has been added along with - support for tex files generated by other builders. + support for tex files generated by other builders Please note the following important changes since release 1.3.0: diff --git a/src/CHANGES.txt b/src/CHANGES.txt index 0e97a4c..b820727 100644 --- a/src/CHANGES.txt +++ b/src/CHANGES.txt @@ -5,6 +5,7 @@ Change Log RELEASE 2.X.X - + From dubcanada on Bitbucket: - Fix 32-bit Visual Express C++ on 64-bit Windows (generate 32-bit code) diff --git a/src/RELEASE.txt b/src/RELEASE.txt index 0914988..2ec9219 100644 --- a/src/RELEASE.txt +++ b/src/RELEASE.txt @@ -1,148 +1,81 @@ - A new SCons checkpoint release, 2.1.0.alpha.yyyymmdd, is now available + A new SCons release, 2.1.0.alpha.yyyymmdd, is now available on the SCons download page: http://www.scons.org/download.php - XXX The primary purpose of this release ... XXX + This release adds several new features and fixes many issues. - A SCons "checkpoint release" is intended to provide early access to - new features so they can be tested in the field before being released - for adoption by other software distributions. - - Note that a checkpoint release is developed using the same test-driven - development methodology as all SCons releases. Existing SCons - functionality should all work as it does in previous releases (except - for any changes identified in the release notes) and early adopters - should be able to use a checkpoint release safely for production work - with existing SConscript files. If not, it represents not only a bug - in SCons but also a hole in the regression test suite, and we want to - hear about it. - - New features may be more lightly tested than in past releases, - especially as concerns their interaction with all of the other - functionality in SCons. We are especially interested in hearing bug - reports about new functionality. - - We do not recommend that downstream distributions (Debian, Fedora, - etc.) package a checkpoint release, mainly to avoid confusing the - "public" release numbering with the long checkpoint release names. - - Here is a summary of the changes since 2.0: + Here is a summary of the changes since 2.1: NEW FUNCTIONALITY - - SCons now supports Microsoft Visual Studio 11. - - - SCons can now automatically embed manifests in Windows executables - and DLLs, by setting WINDOWS_EMBED_MANIFEST in the environment. - - - SCons now searches for site_scons dirs in several system-wide - and per-user locations, in addition to the SConstruct top dir. - This should enable much easier use of third-party (non-core) - Tools. - - - List new features (presumably why a checkpoint is being released) + - New gettext toolset for internationalization + - Support for Visual Studio 11 (both using it and generating solution files) + - Support for Intel C/C++ compiler v12 on Linux and Mac + - LaTeX support for multibib, biblatex and biber DEPRECATED FUNCTIONALITY - - List anything that's been deprecated since the last release + - None CHANGED/ENHANCED EXISTING FUNCTIONALITY - - scons --version now prints the path to the SCons package in use - - - List modifications to existing features, where the previous behavior - wouldn't actually be considered a bug - - - Add initial support for VS/VC 2010 + - 32-bit Visual Express C++ on 64-bit Windows now generates 32-bit code instead of giving errors FIXES - - Fixed occasional crashes with -jN on Windows. - - Windows resource compiler (RC) scanner now handles DOS line endings - - Visual Studio project generation now works when CPPPATH contains Dir nodes - - Visual Studio projects are regenerated when CPPPATH or CPPDEFINES change - NOTE: this will cause all MSVS projects to be regenerated with this version. - - Passing MSVC_BATCH=False works now (treated same as 0) - - Long compile lines no longer break MSVC_BATCH mode - - RPATH is now in LINKCOM rather than LINKFLAGS, so resetting - LINKFLAGS doesn't kill RPATH - - Precompiled headers on Windows no longer break when used with - variant dirs containing spaces. - - Delete can now delete symlinks to directories and broken symlinks - - CPPDEFINES containing dictionaries now work better. - - A problem with using implicit-cache and removing dependencies on - disk is corrected. - - A problem with FS Entries which are dirs and have builders - is corrected. - - A problem with Install() of a dir when the dest dir exists - is corrected. - - Windows subprocess output should now be more reliable. - - The users guide and man page have various fixes. - - Appending to default $*FLAGS in a copied environment - now works properly. - - LaTeX scanner is improved for broken lines or embedded spaces. - - Windows UNC paths (\\SERVER\SHARE\dir) now work much better. - - - List fixes of outright bugs + - Fixed FindSourceFiles to find final sources (leaf nodes). + - Make Windows not redefine builtin file as un-inheritable (#2857) + - Fix WINDOWS_INSERT_DEF on MinGW (Windows) (#2856) + - Fix LINKCOMSTR, SHLINKCOMSTR, and LDMODULECOMSTR on Windows (#2833). + - Make -s (silent mode) be silent about entering subdirs (#2976). + - Fix cloning of builders when cloning environment (#2821). + - Fixed the Taskmaster, curing spurious build failures in + multi-threaded runs (#2720). + - Fixed scons-doc.py to properly convert main XML files (#2812). IMPROVEMENTS - - ParseFlags now supports -std=c++0x and related CXXFLAGS - - ParseFlags now supports -dylib_file from pkgconfig - - New debugging options to print unlink/relinking of variant files - (--debug=duplicate) and preparation of targets (--debug=prepare). - - SCons can now generate MSVS 9.0 and 10.0 Projects and Solutions. - - MSVS Solution generation is improved. - - Fortran 03 is supported (preliminary) - - .sx files are now treated as assembly sources. - - site_scons/site_init.py is now treated as a proper module - with __doc__, __file__ and __name__. - - TeX command strings now work on Windows when the new dir is - on a different drive letter. - - DMD version 2 is supported (using the phobos2 library) - - New --debug=prepare option shows each target as it's prepared - for building; can help when you don't know why a target isn't - being built. - - - List improvements that wouldn't be visible to the user in the - documentation: performance improvements (describe the circumstances - under which they would be observed), or major code cleanups + - Improved documentation of command-line variables (#2809). + - Show valid Visual Studio architectures in error message + when user passes invalid arch. + - Allow Node objects in Java path (#2825) PACKAGING - - List changes in the way SCons is packaged and/or released - - DOCUMENTATION - - - List any significant changes to the documentation (not individual - typo fixes, even if they're mentioned in src/CHANGES.txt to give - the contributor credit) + - No changes DEVELOPMENT - - List visible changes in the way SCons is developed + - No changes - Thanks to +Thanks to: Dirk Baechle, - Vincent Beffara, - Grzegorz Bizoń, + Vincent Beffar, Jean-François Colson, Bauke Conijn, Bill Deegan, Ken Deeter, + dubcanada on Bitbucket, Luca Falavigna, Alexander Goomenyuk, Justin Gullingsrud, + Joshua Hughes, + Alexey Klimkin, Steven Knight, Arve Knudsen, Jean-Baptiste Lab, Rob Managan, + Mortoray, Gary Oberbrunner, + Alexey Petruchik, Evgeny Podjachev, + smallbub on Bitbucket, Sohail Somani, Anatoly Techtonik, + Paweł Tomulik, + Greg Ward, Allen Weeks, Russel Winder, Joe Zuntz -- cgit v0.12 From 743590e8bad30878e52c7e6a9ec6965dc321a77f Mon Sep 17 00:00:00 2001 From: Gary Oberbrunner Date: Sun, 5 Aug 2012 14:17:00 +0000 Subject: Update ReleaseConfig for 2.2.0 --- ReleaseConfig | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/ReleaseConfig b/ReleaseConfig index c881b0f..0a5e606 100644 --- a/ReleaseConfig +++ b/ReleaseConfig @@ -22,12 +22,16 @@ __revision__ = "__FILE__ __REVISION__ __DATE__ __DEVELOPER__" +# +# After updating this file, run bin/update-release-info.py . +# + # The version tuple that will be used for the release. The fields are # (major, minor, micro, type, patchlevel). The release level is one of # 'alpha', 'beta', 'candidate', or 'final'. If the release type is not # 'final', the patchlevel is set to the release date. This value is # manatory and must be present in this file. -version_tuple = (2, 1, 0, 'alpha', 0) +version_tuple = (2, 2, 0, 'final', 0) # Python versions prior to unsupported_python_version cause a fatal error # when that version is used. Python versions prior to deprecate_python_version -- cgit v0.12 From e0e780e48082ec2d02543a1f88876f43a1125197 Mon Sep 17 00:00:00 2001 From: Gary Oberbrunner Date: Sun, 5 Aug 2012 14:47:42 +0000 Subject: Fix typo introduced during recent change to vc.py --- src/engine/SCons/Tool/MSCommon/vc.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/engine/SCons/Tool/MSCommon/vc.py b/src/engine/SCons/Tool/MSCommon/vc.py index 2ddb910..a3a8952 100644 --- a/src/engine/SCons/Tool/MSCommon/vc.py +++ b/src/engine/SCons/Tool/MSCommon/vc.py @@ -361,7 +361,7 @@ def msvc_find_valid_batch_script(env,version): # The TARGET_ARCH is amd64 then also try 32 bits if there are no viable # 64 bit tools installed try_target_archs = [target_platform] - if not req_target_platform and target_platform in ('amd64','x86_64') + if not req_target_platform and target_platform in ('amd64','x86_64'): try_target_archs.append('x86') d = None -- cgit v0.12 From 305b50ccfe2c1158e26a3a334e3f6dae0dd7f63f Mon Sep 17 00:00:00 2001 From: Gary Oberbrunner Date: Sun, 5 Aug 2012 17:36:16 +0000 Subject: New release script to upload dist files to SourceForge --- bin/upload-release-files.sh | 51 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100755 bin/upload-release-files.sh diff --git a/bin/upload-release-files.sh b/bin/upload-release-files.sh new file mode 100755 index 0000000..17eb71b --- /dev/null +++ b/bin/upload-release-files.sh @@ -0,0 +1,51 @@ +#!/bin/sh + +if [ $# -lt 2 ]; then + echo Usage: $0 VERSION SF_USERNAME + exit 1 +fi + +VERSION=$1; shift +SF_USER=$1; shift + +RSYNC='rsync' +RSYNCOPTS='-v -e ssh' +SF_MACHINE='frs.sourceforge.net' +SF_TOPDIR='/home/frs/project/scons' + +# the build products are here: +cd build/dist +cp -f ../../src/CHANGES.txt ../../src/RELEASE.txt ../../src/Announce.txt . + +set -x + +# Upload main scons release files: +$RSYNC $RSYNCOPTS \ + scons-$VERSION-1.noarch.rpm \ + scons-$VERSION-1.src.rpm \ + scons-$VERSION-setup.exe \ + scons-$VERSION.tar.gz \ + scons-$VERSION.zip \ + Announce.txt CHANGES.txt RELEASE.txt \ + $SF_USER@$SF_MACHINE:$SF_TOPDIR/scons/$VERSION/ + +# Local packages: +$RSYNC $RSYNCOPTS \ + scons-local-$VERSION.tar.gz \ + scons-local-$VERSION.zip \ + Announce.txt CHANGES.txt RELEASE.txt \ + $SF_USER@$SF_MACHINE:$SF_TOPDIR/scons-local/$VERSION/ + +# Source packages: +$RSYNC $RSYNCOPTS \ + scons-src-$VERSION.tar.gz \ + scons-src-$VERSION.zip \ + Announce.txt CHANGES.txt RELEASE.txt \ + $SF_USER@$SF_MACHINE:$SF_TOPDIR/scons-src/$VERSION/ + + +# Doc doesn't go to SF, but to scons.org. +$RSYNC $RSYNCOPTS \ + scons-doc-$VERSION.tar.gz \ + scons@scons.org:public_html/production/doc/$VERSION/ + -- cgit v0.12 From 547595c54e9ef1041f72613326f8efae6afa017c Mon Sep 17 00:00:00 2001 From: Gary Oberbrunner Date: Sun, 5 Aug 2012 21:32:08 +0000 Subject: New upload-release-files script, and fixed up update-release-info. update-release-info: allow regular 3-digit releases (not .final.0) upload-release-files: new, does a lot of the heavy lifting for a release. --- bin/update-release-info.py | 7 +++++-- bin/upload-release-files.sh | 27 +++++++++++++++++++++++++-- 2 files changed, 30 insertions(+), 4 deletions(-) diff --git a/bin/update-release-info.py b/bin/update-release-info.py index 15a35b7..4493911 100644 --- a/bin/update-release-info.py +++ b/bin/update-release-info.py @@ -108,14 +108,17 @@ if DEBUG: print 'release date', release_date if mode == 'develop' and version_tuple[3] != 'alpha': version_tuple == version_tuple[:3] + ('alpha', 0) -if version_tuple[3] != 'final': +if len(version_tuple) > 3 and version_tuple[3] != 'final': if mode == 'develop': version_tuple = version_tuple[:4] + ('yyyymmdd',) else: yyyy,mm,dd,_,_,_ = release_date version_tuple = version_tuple[:4] + ((yyyy*100 + mm)*100 + dd,) version_string = '.'.join(map(str, version_tuple)) -version_type = version_tuple[3] +if len(version_tuple) > 3: + version_type = version_tuple[3] +else: + version_type = 'final' if DEBUG: print 'version string', version_string if version_type not in ['alpha', 'beta', 'candidate', 'final']: diff --git a/bin/upload-release-files.sh b/bin/upload-release-files.sh index 17eb71b..2ba10cc 100755 --- a/bin/upload-release-files.sh +++ b/bin/upload-release-files.sh @@ -44,8 +44,31 @@ $RSYNC $RSYNCOPTS \ $SF_USER@$SF_MACHINE:$SF_TOPDIR/scons-src/$VERSION/ -# Doc doesn't go to SF, but to scons.org. +# +# scons.org stuff: +# +# Doc: copy the doc tgz over; we'll unpack later $RSYNC $RSYNCOPTS \ scons-doc-$VERSION.tar.gz \ scons@scons.org:public_html/production/doc/$VERSION/ - +# Copy the changelog +$RSYNC $RSYNCOPTS \ + CHANGES.txt \ + scons@scons.org:public_html/production/ +# Note that Announce.txt gets copied over to RELEASE.txt. +# This should be fixed at some point. +$RSYNC $RSYNCOPTS \ + Announce.txt \ + scons@scons.org:public_html/production/RELEASE.txt +# Unpack the doc and repoint doc symlinks: +ssh scons@scons.org " + cd public_html/production/doc + cd $VERSION + tar xvf scons-doc-$VERSION.tar.gz + cd .. + rm latest; ln -s $VERSION latest + rm production; ln -s $VERSION production +" +echo '*****' +echo '***** Now manually update index.php, includes/versions.php and news-raw.xhtml on scons.org.' +echo '*****' -- cgit v0.12