diff options
author | Steven Knight <knight@baldmt.com> | 2008-03-31 17:03:04 (GMT) |
---|---|---|
committer | Steven Knight <knight@baldmt.com> | 2008-03-31 17:03:04 (GMT) |
commit | 8a201fe36c6b3ee53892b43efd2a21e967a5fc19 (patch) | |
tree | c867300d84fadb6014b7017b2eca94deffcaab88 /src/RELEASE.txt | |
parent | be25024e65a30e65a9e3799ffa5323e23f49003d (diff) | |
download | SCons-8a201fe36c6b3ee53892b43efd2a21e967a5fc19.zip SCons-8a201fe36c6b3ee53892b43efd2a21e967a5fc19.tar.gz SCons-8a201fe36c6b3ee53892b43efd2a21e967a5fc19.tar.bz2 |
Merged revisions 2647-2719 via svnmerge from
http://scons.tigris.org/svn/scons/branches/core
........
r2649 | stevenknight | 2008-02-08 06:43:30 -0800 (Fri, 08 Feb 2008) | 3 lines
Make the "bootstrap" copy directory relative to the script location
regardless of where the user is when executing.
........
r2650 | stevenknight | 2008-02-09 09:26:40 -0800 (Sat, 09 Feb 2008) | 3 lines
Chdir back to the original directory before removing our temporary
directory, to avoid "Permission denied" errors on Windows.
........
r2651 | stevenknight | 2008-02-09 10:02:09 -0800 (Sat, 09 Feb 2008) | 3 lines
Fix floating-point numbers confusing our notion of the .class
files that will be generated in certain configurations.
........
r2652 | stevenknight | 2008-02-09 10:26:48 -0800 (Sat, 09 Feb 2008) | 4 lines
Issue 1868: change the RootDir "lookup path" from '/' to '' so that
looking up '/foo' returns the same node as looking up 'foo' when the
current directory is the root.
........
r2653 | stevenknight | 2008-02-09 11:16:17 -0800 (Sat, 09 Feb 2008) | 3 lines
Issue 1902: Document all the values that can now be fetched with GetOption.
Additional formatting cleanups.
........
r2654 | stevenknight | 2008-02-09 11:37:50 -0800 (Sat, 09 Feb 2008) | 3 lines
Fix handling file names that contain substrings of multiple spaces
when using ActionFactory instances like Copy() and Move().
........
r2655 | stevenknight | 2008-02-09 13:36:14 -0800 (Sat, 09 Feb 2008) | 3 lines
Issue 1898: Fix use of a variable expansion in a source file name
(like foo$OBJSUFFIX) when trying to match source builder suffixes.
........
r2656 | stevenknight | 2008-02-09 20:58:32 -0800 (Sat, 09 Feb 2008) | 3 lines
Issue 1903: don't allow Java generics syntax to interfere with
identifying an anonymous inner class.
........
r2657 | stevenknight | 2008-02-09 21:02:37 -0800 (Sat, 09 Feb 2008) | 3 lines
Left out the \w from the regular expression that matches generics,
so we wouldn't match alphanumerics, only alphabetics.
........
r2658 | stevenknight | 2008-02-09 23:33:03 -0800 (Sat, 09 Feb 2008) | 3 lines
Issue 1899: Enhance Chmod(), Delete(), Mkdir() and Touch() to take
lists of Nodes or strings.
........
r2659 | stevenknight | 2008-02-10 00:15:24 -0800 (Sun, 10 Feb 2008) | 4 lines
Issue 1878: Add comment lines to the generated config.h file describing
the intent of the various #define/#undef lines.
(David Cournapeau)
........
r2660 | stevenknight | 2008-02-11 18:15:27 -0800 (Mon, 11 Feb 2008) | 3 lines
Issue 1682: Fix the ability to save and restore the ListOption value
'all' in newer Python versions that have an all() built-in function.
........
r2661 | stevenknight | 2008-02-27 07:25:18 -0800 (Wed, 27 Feb 2008) | 3 lines
Issue 1919: Optimize the SCons.Util.is_*() and SCons.Util.flatten()
functions. More efficient suffix selection in Selector.__call__() method.
........
r2662 | stevenknight | 2008-02-28 06:43:29 -0800 (Thu, 28 Feb 2008) | 3 lines
Fix SCons.Util.is_List() method to use the passed-in ListTypes variable.
(Daniel Svensson)
........
r2663 | stevenknight | 2008-02-28 06:57:44 -0800 (Thu, 28 Feb 2008) | 4 lines
Issue 1884: avoid an infinite loop when trying to use saved copies of
the ToolInitializer objects that we use to initialize the env.Install()
and env.InstallAs() methods.
........
r2664 | garyo | 2008-02-28 07:25:25 -0800 (Thu, 28 Feb 2008) | 1 line
Fix long-style command-line args in runtest.py (they were missing from getopt call).
........
r2665 | garyo | 2008-02-28 09:31:42 -0800 (Thu, 28 Feb 2008) | 1 line
runtest.py: Use qmtest instead of qmtest.py; newer QMTest releases may only have qmtest in /usr/bin.
........
r2666 | stevenknight | 2008-02-28 12:10:02 -0800 (Thu, 28 Feb 2008) | 3 lines
Remove dead code that was at one time apparently intended to grab the
external environment's %INCLUDE% values.
........
r2667 | stevenknight | 2008-02-28 12:16:40 -0800 (Thu, 28 Feb 2008) | 3 lines
Move the regular expression and function that check for whether a
construction variable name is legal from Util.py to Environment.py.
........
r2668 | stevenknight | 2008-02-28 20:24:36 -0800 (Thu, 28 Feb 2008) | 2 lines
Fix qmtest.py references (replace with qmtest) in tests and infrastructure.
........
r2669 | stevenknight | 2008-02-28 20:27:05 -0800 (Thu, 28 Feb 2008) | 7 lines
Speed up the SubstitionEnvironment.__setitem__() method by: 1) avoiding
checking for whether the variable name is legal if it already exists; 2)
use the regular expression directly when checking the form for illegality;
3) more efficient check for whether a variable name is special. Add a
timing script so we can document why we implemented it as we did and
revisit it in the future if need be.
........
r2670 | stevenknight | 2008-02-28 20:51:44 -0800 (Thu, 28 Feb 2008) | 2 lines
Add a shell script that generates context-diff output for review.
........
r2671 | GregNoel | 2008-03-01 00:40:16 -0800 (Sat, 01 Mar 2008) | 1 line
add test to env.__setitem__ benchmark
........
r2672 | GregNoel | 2008-03-01 02:00:12 -0800 (Sat, 01 Mar 2008) | 1 line
compatibility changes for env.__setitem__ benchmark
........
r2673 | stevenknight | 2008-03-01 09:56:57 -0800 (Sat, 01 Mar 2008) | 3 lines
Capture a vanilla copy of the Python 2.[45] timeit.py module, as a
basis for being able to use this to time Python 2.2 (and earlier).
........
r2674 | stevenknight | 2008-03-01 10:04:11 -0800 (Sat, 01 Mar 2008) | 3 lines
Work around a race in the order in which we detect and report the build
failures by letting the error messages show up in either order on stdout.
........
r2675 | stevenknight | 2008-03-01 10:05:24 -0800 (Sat, 01 Mar 2008) | 3 lines
Back-port the captured timeit.py module, and the env.__setitem__.py
script itself, to Python versions before 2.3.
........
r2676 | GregNoel | 2008-03-01 14:01:03 -0800 (Sat, 01 Mar 2008) | 1 line
add banner information, remove inadvertent tabs
........
r2677 | stevenknight | 2008-03-02 05:04:52 -0800 (Sun, 02 Mar 2008) | 3 lines
Don't look for a Copyright string in the source-packaged bench/timeit.py
module that we captured.
........
r2678 | stevenknight | 2008-03-02 14:59:39 -0800 (Sun, 02 Mar 2008) | 6 lines
Issue 1884: Allow env.{Install,InstallAs}() to be replaced by user-
supplied wrappers that call the underlying builder.
Fix how environment cloning so it only clones dynamically-added method
attributes that the user hasn't also overwritten explicity.
........
r2679 | stevenknight | 2008-03-04 07:48:53 -0800 (Tue, 04 Mar 2008) | 3 lines
Fix env.{Dir,Entry,File}() when the input is a list, broken last December
when env.subst() was modified to return lists as-is.
........
r2680 | stevenknight | 2008-03-04 08:24:06 -0800 (Tue, 04 Mar 2008) | 2 lines
Fix printing Python Value Nodes in --debug=explain output. (Jim Randall)
........
r2681 | garyo | 2008-03-04 12:37:39 -0800 (Tue, 04 Mar 2008) | 1 line
Make File(), Dir() and Entry() return lists when passed a sequence.
........
r2682 | garyo | 2008-03-05 15:24:00 -0800 (Wed, 05 Mar 2008) | 1 line
InstallBuilderWrapper and InstallBuilderWrapper should accept keyword args and pass them to the base builder, like other builders.
........
r2683 | stevenknight | 2008-03-06 06:32:13 -0800 (Thu, 06 Mar 2008) | 2 lines
Python 1.5.2 compatibility: use apply() instead of **kw.
........
r2684 | garyo | 2008-03-14 13:07:09 -0700 (Fri, 14 Mar 2008) | 1 line
Fix QMTest problem with $TERM variable in user's environment causing test failures.
........
r2685 | bdbaddog | 2008-03-14 13:16:20 -0700 (Fri, 14 Mar 2008) | 13 lines
* Added java_where_includes - gets path list for java JDK's include dirs
* Added java_where_java_home - gets JAVA_HOME path
* Added path's to find java for sun's JDK rpm install to java_where_jar
* moved paths() to be outside of java_ENV() routine and available for other routines to use as well as tests
* set TERM to be dumb to fix broken readline causing massive failures on FC8 (only updated Gary's comments to include note about broken FC8 readline, as Gary committed the TERM just prior to my checkin)
* Modified the following tests to use the above changes:
* test/SWIG/SWIGOUTDIR.py
* test/Java/swig-dependencies.py
* test/Java/multi-step.py
* test/Repository/Java.py
* test/runtest/fallback.py [ This test also has been changed to remove more than one qmtest in your PATH, previously it would only remove one path which had qmtest, my system had a local and a system version ]
........
r2686 | stevenknight | 2008-03-15 20:50:07 -0700 (Sat, 15 Mar 2008) | 4 lines
Add a warning about deprecating support for Python versions 1.5, 2.0
and 2.1. Fix the ability to SetOption('warn') so people can disable
the warning by adding something to a SConscript file.
........
r2687 | stevenknight | 2008-03-15 21:48:26 -0700 (Sat, 15 Mar 2008) | 3 lines
Issue 1942: Document the Dir(), File() and Entry() methods of Dir
and File Nodes. (Greg Noel)
........
r2688 | GregNoel | 2008-03-16 00:05:04 -0700 (Sun, 16 Mar 2008) | 1 line
Add parse_flags keyword option
........
r2689 | stevenknight | 2008-03-16 00:32:33 -0700 (Sun, 16 Mar 2008) | 3 lines
Print a message if we're skipping the build of a package because the
necessary underlying tool doesn't exist.
........
r2690 | stevenknight | 2008-03-16 00:40:28 -0700 (Sun, 16 Mar 2008) | 7 lines
Add --warn=no-python-version to the $SCONSFLAGS variable when running
tests under deprecated Python versions, so the warning doesn't interfere
with running normal tests under those version.
Have the test/python-version.py remove --warn=no-python-version from the
$SCONSFLAGS variable, since it's explicitly testing that behavior.
........
r2691 | stevenknight | 2008-03-16 08:20:54 -0700 (Sun, 16 Mar 2008) | 4 lines
Handle ripple effects from setting $SCONSFLAGS to suppress the deprecation
under older Python versions by commonizing and moving much of the logic
in QMTest/TestSCons.py.
........
r2692 | stevenknight | 2008-03-16 08:47:52 -0700 (Sun, 16 Mar 2008) | 5 lines
Update the warning message for running under a deprecated Python
version (text courtesy Greg Noel). Make that warning a subclass of the
DeprecatedWarning class, so the message can also be disabled by setting
--warn=no-deprecated.
........
r2693 | stevenknight | 2008-03-16 11:19:52 -0700 (Sun, 16 Mar 2008) | 4 lines
Shorten the deprecated-python-version warning.
Use sys.version_info to check, instead of hard-coded string comparisons.
Edit the release note.
........
r2694 | stevenknight | 2008-03-16 11:29:10 -0700 (Sun, 16 Mar 2008) | 3 lines
Have the warning mention both that 2.2 is the base un-deprecated version
and the version they're running without getting too wordy.
........
r2695 | stevenknight | 2008-03-16 12:00:22 -0700 (Sun, 16 Mar 2008) | 2 lines
Skip test/SWIG/SWIGOUTDIR.py if no installed jni.h files are found.
........
r2696 | stevenknight | 2008-03-18 18:01:46 -0700 (Tue, 18 Mar 2008) | 2 lines
Remove old, commented-out deprecation test code.
........
r2697 | stevenknight | 2008-03-19 17:54:55 -0700 (Wed, 19 Mar 2008) | 2 lines
Deprecate env.Copy() with a suppressable message.
........
r2699 | stevenknight | 2008-03-20 08:20:22 -0700 (Thu, 20 Mar 2008) | 2 lines
Move the debug-nomemoizer.py test to the test/Deprecated subdirectory.
........
r2700 | stevenknight | 2008-03-20 08:37:51 -0700 (Thu, 20 Mar 2008) | 2 lines
Issue 1954: Adds deprecation warnings for --debug={dtree,stree,tree}.
........
r2701 | stevenknight | 2008-03-23 00:33:25 -0700 (Sun, 23 Mar 2008) | 7 lines
Add VariantDir() as a replacement for BuildDir().
Change "build directory" references in text (comments and
documentation) to "variant directory."
Move and rename tests that named BuildDir in their path.
Add a release note about the forthcoming deprecation of BuildDir().
Add a test/Deprecated/BuildDir.py to track backwards compatibility.
........
r2702 | stevenknight | 2008-03-24 11:23:39 -0700 (Mon, 24 Mar 2008) | 4 lines
Change the VariantDir() and SConscrip "build_dir" keyword to "variant_dir."
Still support "build_dir" for (you guessed it) backwards compatibility.
Add documentation update and release note.
........
r2703 | garyo | 2008-03-25 07:57:01 -0700 (Tue, 25 Mar 2008) | 1 line
Improve Install error message when target and source list lengths don't match.
........
r2704 | garyo | 2008-03-25 08:10:24 -0700 (Tue, 25 Mar 2008) | 1 line
Allow executing main scons.py script without running scons, using standard if __name__==__main__ idiom.
........
r2705 | stevenknight | 2008-03-26 08:51:58 -0700 (Wed, 26 Mar 2008) | 3 lines
Update scripts that use {Source,Target}Signatures() to use Decider()
or the default behavior. Update test condition checks as necessary.
........
r2706 | stevenknight | 2008-03-27 14:13:50 -0700 (Thu, 27 Mar 2008) | 2 lines
Update some leftover uses of env.Copy() in some test scripts to env.Clone().
........
r2707 | stevenknight | 2008-03-27 14:20:33 -0700 (Thu, 27 Mar 2008) | 6 lines
Fix use of SetOption('warn') to disable warning messages.
Refactor the Script.Main._setup_warn() function into
Warnings.process_warn_strings().
Split test/option--warn.py into separate test/option/warn-*.py scripts
for the individual subtests it contained.
........
r2708 | stevenknight | 2008-03-27 15:17:44 -0700 (Thu, 27 Mar 2008) | 5 lines
Deprecate the {Target,Source}Signatures() functions and methods.
Move the test scripts underneath the test/Deprecated directory.
Update man page with the new --warn=* options (and some that
were overlooked on previous checkins). Add a release note.
........
r2709 | stevenknight | 2008-03-27 23:22:38 -0700 (Thu, 27 Mar 2008) | 2 lines
More conversion of env.Copy() calls to env.Clone().
........
r2710 | stevenknight | 2008-03-28 00:09:40 -0700 (Fri, 28 Mar 2008) | 3 lines
Test updates for old Python versions (1.5.2) now that we generate a
warning message about the deprecation.
........
r2711 | stevenknight | 2008-03-28 22:11:03 -0700 (Fri, 28 Mar 2008) | 3 lines
Chmod the built packages in build/dist to 0644 so they're publicy readable
when they're copied over to the snapshot system.
........
r2712 | stevenknight | 2008-03-28 22:11:54 -0700 (Fri, 28 Mar 2008) | 3 lines
Issue 1951: have Copy() preserve file times and mode when copying
over individual files. (Leanid Nazdrynau)
........
r2713 | stevenknight | 2008-03-29 06:49:27 -0700 (Sat, 29 Mar 2008) | 3 lines
Don't bother checking for equivalent file access times. Under system
load it can vary because we do actually access the file.
........
r2714 | GregNoel | 2008-03-29 17:24:25 -0700 (Sat, 29 Mar 2008) | 1 line
Fix regression test using Python 1.5.2 on OS X
........
r2715 | GregNoel | 2008-03-29 20:44:19 -0700 (Sat, 29 Mar 2008) | 1 line
'Copy' conflicts with 'copy' on case-insensitive file systems
........
r2716 | stevenknight | 2008-03-29 21:00:13 -0700 (Sat, 29 Mar 2008) | 3 lines
Capture scripts for downloading and installing different versions of
Python and SCons.
........
r2717 | stevenknight | 2008-03-30 08:48:28 -0700 (Sun, 30 Mar 2008) | 3 lines
Fix a regression in how subst_path() handles lists (like a ListOption)
in expansions of things like $CPPDEFINES and $CPPPATH.
........
r2718 | stevenknight | 2008-03-30 10:02:21 -0700 (Sun, 30 Mar 2008) | 6 lines
User's Guide updates:
-- Paragraph about deprecated BuildDir().
-- Updated output using the jar -C option.
-- Updated default environment Dump().
-- Updated --debug=stacktrace output.
........
r2719 | stevenknight | 2008-03-31 00:50:08 -0700 (Mon, 31 Mar 2008) | 2 lines
Update the branch for 0.98.
........
Diffstat (limited to 'src/RELEASE.txt')
-rw-r--r-- | src/RELEASE.txt | 299 |
1 files changed, 276 insertions, 23 deletions
diff --git a/src/RELEASE.txt b/src/RELEASE.txt index 7327f21..0c4f905 100644 --- a/src/RELEASE.txt +++ b/src/RELEASE.txt @@ -20,25 +20,182 @@ more effectively, please sign up for the scons-users mailing list at: -RELEASE 0.97.0d20071212 - Wed, 12 Dec 2007 09:29:32 -0600 +RELEASE 0.98 - Sun, 30 Mar 2008 23:33:05 -0700 - This is the eighth beta release of SCons. Please consult the + This is the ninth beta release of SCons. Please consult the CHANGES.txt file for a list of specific changes since last release. Please note the following important changes since release 0.97.0d20071212: + -- SUPPORT FOR PYTHON VERSIONS BEFORE 2.2 IS NOW DEPRECATED + + SCons now prints the following warning when it is run by any + Python 1.5, 2.0 or 2.1 release or sub-release: + + scons: warning: Support for pre-2.2 Python (VERSION) is deprecated. + If this will cause hardship, contact dev@scons.tigris.org. + + You may disable all warnings about deprecated features by adding + the option "--warn=no-deprecated" to the command line or to the + $SCONSFLAGS environment variable: + + $ scons --warn=no-deprecated + + Using '--warn=no-deprecated' is compatible with earlier versions + of SCons. + + You may also, as of this version of SCons, disable all warnings + about deprecated features by adding the following to any + SConscript file: + + SetOption('warn', 'no-deprecated') + + You may disable only the specific warning about running under + a deprecated Python version by adding the following to any + SConscript file: + + SetOption('warn', 'no-python-version') + + The warning may also be suppressed on the command line: + + $ scons --warn=no-python-version + + Or by specifying the --warn=no-python-version option in the + $SCONSFLAGS environment variable. + + Using SetOption('warn', ...), and the 'no-python-version' + command-line option for suppressing this specific warning, + are *not* backwards-compatible to earlier versions of SCons. + + -- THE env.Copy() METHOD IS NOW OFFICIALLY DEPRECATED + + The env.Copy() method is now officially deprecated and will + be removed in a future release. Using the env.Copy() method + now generates the following message: + + scons: warning: The env.Copy() method is deprecated; use the env.Clone() method instead. + + You may disable all warnings about deprecated features by adding + the option "--warn=no-deprecated" to the command line or to the + $SCONSFLAGS environment variable: + + $ scons --warn=no-deprecated + + Using '--warn=no-deprecated' is compatible with earlier versions + of SCons. + + You may also, as of this version of SCons, disable all warnings + about deprecated features by adding the following to any + SConscript file: + + SetOption('warn', 'no-deprecated') + + You may disable only the specific warning about the deprecated + env.Copy() method by adding the following to any SConscript + file: + + SetOption('warn', 'no-deprecated-copy') + + The warning may also be suppressed on the command line: + + $ scons --warn=no-deprecated-copy + + Or by specifying the --warn=no-deprecated-copy option in the + $SCONSFLAGS environment variable. + + Using SetOption('warn', ...), and the 'no-deprecated-copy' + command-line option for suppressing this specific warning, + are *not* backwards-compatible to earlier versions of SCons. + + -- THE --debug=dtree, --debug=stree AND --debug=tree OPTIONS ARE DEPRECATED + + The --debug=dtree, --debug=stree and --debug=tree methods + are now officially deprecated and will be removed in a + future release. Using these options now generate a warning + message recommending use of the --tree=derived, --tree=all,status + and --tree=all options, respectively. + + You may disable these warnings, and all warnings about + deprecated features, by adding the option "--warn=no-deprecated" + to the command line or to the $SCONSFLAGS environment + variable: + + $ scons --warn=no-deprecated + + Using '--warn=no-deprecated' is compatible with earlier versions + of SCons. + + -- THE TargetSignatures() AND SourceSignatures() FUNCTIONS ARE DEPRECATED + + The TargetSignatures() and SourceSignatures() functions, + and their corresponding env.TargetSignatures() and + env.SourceSignatures() methods, are now officially deprecated + and will be be removed in a future release. Using ahy of + these functions or methods now generates a message + similar to the following: + + scons: warning: The env.TargetSignatures() method is deprecated; + convert your build to use the env.Decider() method instead. + + You may disable all warnings about deprecated features by adding + the option "--warn=no-deprecated" to the command line or to the + $SCONSFLAGS environment variable: + + $ scons --warn=no-deprecated + + Using '--warn=no-deprecated' is compatible with earlier versions + of SCons. + + You may also, as of this version of SCons, disable all warnings + about deprecated features by adding the following to any + SConscript file: + + SetOption('warn', 'no-deprecated') + + You may disable only the specific warning about the use of + TargetSignatures() or SourceSignatures() by adding the + following to any SConscript file: + + SetOption('warn', 'no-deprecated-target-signatures') + SetOption('warn', 'no-deprecated-source-signatures') + + The warnings may also be suppressed on the command line: + + $ scons --warn=no-deprecated-target-signatures --warn=no-deprecated-source-signatures + + Or by specifying these options in the $SCONSFLAGS environment + variable. + + Using SetOption('warn', ...), or the command-line options + for suppressing these warnings, is *not* backwards-compatible + to earlier versions of SCons. + + -- File(), Dir() and Entry() NOW RETURN A LIST WHEN THE INPUT IS A SEQUENCE + + Previously, if these methods were passed a list, the list was + substituted and stringified, then passed as a single string to + create a File/Dir/Entry Node. This rarely if ever worked with + more than one element in the list. They now return a list of + Nodes when passed a list. + + One case that works differently now is a passing in a + single-element sequence; that formerly was stringified + (returning its only element) and then a single Node would be + returned. Now a single-element list containing the Node will + be returned, for consistency. + -- THE env.subst() METHOD NOW RETURNS A LIST WHEN THE INPUT IS A SEQUENCE The env.subst() method now returns a list with the elements expanded when given a list as input. Previously, the env.subst() method would always turn its result into a string. - This behavior was changed because way it interfered with - being able to include things like lists within the expansion - of variables like $CPPPATH and have SCons understand that the - elements of the "internal" lists still needed to be treated - separately. This would show up as a list like ['subdir1', - 'subdir'] showing up in a command line as "-Isubdir1 subdir". + This behavior was changed because it interfered with being able + to include things like lists within the expansion of variables + like $CPPPATH and then have SCons understand that the elements + of the "internal" lists still needed to be treated separately. + This would cause a $CPPPATH list like ['subdir1', 'subdir'] + to show up in a command line as "-Isubdir1 subdir". -- THE Jar() BUILDER NOW USES THE Java() BUILDER CLASSDIR BY DEFAULT @@ -698,6 +855,105 @@ RELEASE 0.97.0d20071212 - Wed, 12 Dec 2007 09:29:32 -0600 Please note the following planned, future changes: + -- THE BuildDir() METHOD AND FUNCTION WILL BE DEPRECATED + + The env.BuildDir() method and BuildDir() function are being + replaced by the new env.VariantDir() method and VariantDir() + function. + + In some future release a deprecation warning will be added + to existing uses of the env.BuildDir() method and BuildDir() + function. At some point after the deprecation warning, the + env.Builder() method and BuildDir() function will either + be removed entirely or have their behavior changed. + + You can prepare for this by changing all your uses of the + env.BuildDir() method to env.VariantDir() and uses of the + global BuildDir() function to VariantDir(). If you use a + named keyword argument of "build_dir" when calling + env.BuildDir() or BuildDir(): + + env.BuildDir(build_dir='opt', src_dir='src') + + The keyword must be changed to "variant_dir": + + env.VariantDir(variant_dir='opt', src_dir='src') + + NOTE: CHANGING USES OF env.BuildDir() AND BuildDir() to + env.VariantDir() AND VariantDir() IS NOT BACKWARDS COMPATIBLE + TO VERSIONS OF SCons BEFORE 0.98. YOUR SConscript FILES + WILL NOT WORK ON EARLIER VERSIONS OF SCons AFTER MAKING + THIS CHANGE. + + If you change SConscript files in software that you make + available for download or otherwise distribute, other users + may try to build your software with an earlier version of + SCons that does not have the env.VariantDir() method or + VariantDir() fnction. We recommend preparing for this in + one of two ways: + + -- Make your SConscript files backwards-compatible by + including the following code near the beginning of your + top-level SConstruct file: + + import SCons.Environment + try: + SCons.Environment.Environment.VariantDir + except AttributeError: + SCons.Environment.Environment.VariantDir = \ + SCons.Environment.Environment.BuildDir + + -- Use the EnsureSConsVersion() function to provide a + descriptive error message if your SConscript files + are executed by an earlier version of SCons: + + EnsureSConsVersion(0, 98) + + -- THE SConscript() "build_dir" KEYWORD ARGUMENT WILL BE DEPRECATED + + The "build_dir" keyword argument of the SConscript function + and env.SConscript() method are being replaced by a new + "variant_dir" keyword argument. + + In some future release a deprecation warning will be added + to existing uses of the SConscript()/env.SConscript() + "build_dir" keyword argument. At some point after the + deprecation warning, support for this keyword argument will + be removed entirely. + + You can prepare for this by changing all your uses of the + SConscript()/env.SConscript() 'build_dir" keyword argument: + + SConscript('src/SConscript', build_dir='opt') + + To use the new "variant_dir" keyword argument: + + SConscript('src/SConscript', variant_dir='opt') + + NOTE: USING THE NEW "variant_dir" KEYWORD IS NOT BACKWARDS + COMPATIBLE TO VERSIONS OF SCons BEFORE 0.98. YOUR SConscript + FILES WILL NOT WORK ON EARLIER VERSIONS OF SCons AFTER + MAKING THIS CHANGE. + + If you change SConscript files in software that you make + available for download or otherwise distribute, other users + may try to build your software with an earlier version of + SCons that does not support the "variant_dir" keyword. + + If you can insist that users use a recent version of SCons + that supports "variant_dir", we recommend using the + EnsureSConsVersion() function to provide a descriptive error + message if your SConscript files are executed by an earlier + version of SCons: + + EnsureSConsVersion(0, 98) + + If you want to make sure that your SConscript files will + still work with earlier versions of SCons, then your best + bet is to continue to use the "build_dir" keyword until the + support is removed (which, in all likelihood, won't happen + for quite some time). + -- SCANNER NAMES HAVE BEEN DEPRECATED AND WILL BE REMOVED Several internal variable names in SCons.Defaults for various @@ -724,22 +980,23 @@ RELEASE 0.97.0d20071212 - Wed, 12 Dec 2007 09:29:32 -0600 The env.Copy() method (to make a copy of a construction environment) is being replaced by the env.Clone() method. - In some future release, a deprecation warning will be added - to current uses of the env.Copy() method. At some point after - the deprecation warning, the env.Copy() method will either be - removed entirely or have its behavior changed. + As of SCons 0.98, a deprecation warning has been added to + current uses of the env.Copy() method. At some point in + the future, the env.Copy() method will either be removed + entirely or have its behavior changed. You can prepare for this by changing all your uses of env.Copy() to env.Clone(), which has the exact same calling arguments. - NOTE: CHANGING USES OF env.Copy() TO env.Clone() WILL MAKE YOUR - SConscript FILES NOT WORK ON EARLIER VERSIONS OF SCons. + NOTE: CHANGING USES OF env.Copy() TO env.Clone() WILL MAKE + YOUR SConscript FILES NOT WORK ON VERSIONS OF SCons BEFORE + 0.96.93. - If you change SConscript files in software that you make available - for download or otherwise distribute, other users may try to - build your software with an earlier version of SCons that does - not have the env.Clone() method. We recommend preparing for - this in one of two ways: + If you change SConscript files in software that you make + available for download or otherwise distribute, other users + may try to build your software with an earlier version of + SCons that does not have the env.Clone() method. We recommend + preparing for this in one of two ways: -- Make your SConscript files backwards-compatible by including the following code near the beginning of your @@ -835,10 +1092,6 @@ RELEASE 0.97.0d20071212 - Wed, 12 Dec 2007 09:29:32 -0600 created as part of the build, and also does not clean up SideEffect files (for example, Visual Studio .pdb files). - - Switching content signatures from "MD5" to "timestamp" and back - again can cause unusual errors. These errors can be cleared up by - removing all .sconsign files. - - When using multiple Repositories, changing the name of an include file can cause an old version of the file to be used. |