Merge pull request #4544 from bdbaddog/win32_test_speedup
[scons.git] / RELEASE.txt
bloba8d121ef36c438533f0e896f21cba87590ae0877
1 If you are reading this in the git repository, the contents
2 refer to *unreleased* changes since the last SCons release.
3 Past official release announcements appear at:
5     https://scons.org/tag/releases.html
7 ==================================================================
9 A new SCons release, 4.7.1, is now available on the SCons download page:
11     https://scons.org/pages/download.html
14 Here is a summary of the changes since 4.7.0:
16 NEW FUNCTIONALITY
17 -----------------
19 - GetSConsVersion() added to retrieve the SCons version.
21 DEPRECATED FUNCTIONALITY
22 ------------------------
24 - Mark Python 3.6 support as deprecated. Use --warn=no-python-version
25   to quiet the warning.
27 CHANGED/ENHANCED EXISTING FUNCTIONALITY
28 ---------------------------------------
30 - Dump() with json format selected now recognizes additional compound types
31   (UserDict and UserList), which improves the detail of the display.
32   json output is also sorted, to match the default display.
33 - Python 3.13 changes the behavior of isabs() on Windows. Adjust SCons
34   usage of this in NodeInfo classes to avoid test problems.
35 - Drop duplicated __getstate__ and __setstate__ methods in AliasNodeInfo,
36   FileNodeInfo and ValueNodeInfo classes, as they are identical to the
37   ones in parent NodeInfoBase and can just be inherited.
38 - All exceptions during the execution of an Action are now returned by value
39   rather than by raising an exception, for more consistent behavior.
40   NOTE: With this change, user created Actions should now catch and handle
41   expected exceptions (whereas previously many of these were silently caught
42   and suppressed by the SCons Action exection code).
43 - ParseFlags now sorts a --stdlib=libname argument into CXXFLAGS instead
44   of CCFLAGS; the latter variable could cause a compiler warning.
45 - The implementation of Variables was slightly refactored, there should
46   not be user-visible changes.
48 FIXES
49 -----
51 - OSErrors are now no longer hidden during the execution of Actions.
52 - Improved the conversion of a "foreign" exception from an action
53   into BuildError by making sure our defaults get applied even in
54   corner cases. Fixes Issue #4530
56 IMPROVEMENTS
57 ------------
59 - Make the testing framework a little more resilient: the temporary
60   directory for tests now includes a component named "scons" which can
61   be given to antivirus software to exclude.
63 PACKAGING
64 ---------
66 - setup.cfg logic now handled via pyproject.toml; consequently, setup.cfg
67   was removed.
70 DOCUMENTATION
71 -------------
73 - Updated Value Node docs.
74 - Update manpage for Tools, and for the TOOL variable.
75 - Update manpage and user guide for Variables usage.
76 - Restructured API Docs build so main package contents are listed
77   before contents of package submodules.
78 - Updated manpage description of Command "builder" and function.
82 DEVELOPMENT
83 -----------
85 - Documentation build now properly passes through skipping the PDF
86   (and EPUB) builds of manpage and user guide; this can also be done
87   manually if directly calling doc/man/SConstruct and doc/user/SConstruct
88   by adding SKIP_PDF=1. This should help with distro packaging of SCons,
89   which now does not need "fop" and other tools to be set up in order to
90   build pdf versions which are then ignored.
93 Thanks to the following contributors listed below for their contributions to this release.
94 ==========================================================================================
95 .. code-block:: text
97     git shortlog --no-merges -ns 4.0.1..HEAD