forked from SCons/scons
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathRELEASE.txt
More file actions
147 lines (102 loc) · 5.54 KB
/
Copy pathRELEASE.txt
File metadata and controls
147 lines (102 loc) · 5.54 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
If you are reading this in the git repository, the contents
refer to *unreleased* changes since the last SCons release.
Past official release announcements appear at:
https://scons.org/tag/releases.html
==================================================================
A new SCons release, X.Y.Z, is now available on the SCons download page:
https://scons.org/pages/download.html
Here is a summary of the changes since 4.9.1:
NEW FUNCTIONALITY
-----------------
- List new features (presumably why a checkpoint is being released)
DEPRECATED FUNCTIONALITY
------------------------
- List anything that's been deprecated since the last release
CHANGED/ENHANCED EXISTING FUNCTIONALITY
---------------------------------------
- List modifications to existing features, where the previous behavior
wouldn't actually be considered a bug
- Nodes are now treated as PathLike objects.
- Replace use of old conditional expression idioms with the official
one from PEP 308 introduced in Python 2.5 (2006). The idiom being
replaced (using and/or) is regarded as error prone.
- MSVC: The following shell environment variables are now included in
the environment used by SCons to initialize MSVC when defined:
VCPKG_DISABLE_METRICS, VCPKG_ROOT, POWERSHELL_TELEMETRY_OPTOUT,
PSDisableModuleAnalysisCacheCleanup, and PSModuleAnalysisCachePath.
A subset of the shell environment PSModulePath is included in the
environment used by SCons to initialize MSVC when defined. None of
these variables and values are propagated to the user's SCons
environment after running the MSVC batch files.
FIXES
-----
- Fixed SCons.Variables.PackageVariable to correctly test the default
setting against both enable & disable strings. (Fixes #4702)
- MSVC: Fixed a significant delay experienced in the Github Actions
windows 2022 and 2025 runners due to the environment used by SCons
to initialize MSVC when the Visual Studio vcpkg component is
installed. The Github Actions windows 2019 runner was not affected.
- Fix the variant dir component being missing from generated source file
paths with CompilationDatabase() builder (Fixes #4003).
- Ninja tool generate_command() fixed to call subst() with correct
arguments in ListAction case. Unit tests added for generate_command.
- Fix the SCons.Scanner.LaTeX to mimic LaTeX's search method.
- Ninja tool now quotes targets (if necessary) when calling back to
SCons - both in the POST request constructed to contact the
daemon, and in the command eventually issued from the deamon.
- Ninja tool is adjusted to recognize and emit the right rule in
the case of special actions that the tool recognizes, like Copy.
This was working in the case of single commands, but not when part
of a list of actions. Recognition only happens if the special
action is first in the list.
- Fix a test problem on Windows where UNC tests failed due to incorrect path
munging if a non-default %TEMP% was defined (as in moving to a Dev Drive).
IMPROVEMENTS
------------
- 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
- Virtualenv support module modernized: previously looked first for an
unofficial approach from before venv support was made part of Python
in 3.3; now looks for the official approach first. This in an internal
detail, the API is unchanged.
- Add internal routines to maniplutate publicly visible argument and
target lists. These interfaces are not part of the public API.
PACKAGING
---------
- List changes in the way SCons is packaged and/or released
- The generated roff (.1) manpages are now included in the
scons-doc tarball that is built at part of the release process,
in addition to the html and txt versions. For distribution
packaging, the manpages can be extracted from here (downloadable
from https://scons.org/doc/ using a a version-specific URL,
e.g. https://scons.org/doc/4.9.1/scons-doc-4.9.1.tar.gz).
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)
- Clarify how pre/post actions on an alias work.
- Improve the description of PackageVariable.
- The "API Docs" build (Sphinx) configuration is improved, and
SConsDoc and SConsExample are now included - their API is
interesting to developers working on SCons (needed to write docs),
even if not part of "The SCons API" itself.
- Missing documentation for the Virtualenv() function is added.
Note that the User Guide previously described a negative outcome
as returning None. It is now explicit that the path is returned if
running in a virtualenv, and an empty (falsy) string if not.
DEVELOPMENT
-----------
- List visible changes in the way SCons is developed
- runtest.py once again finds "external" tests, such as the tests for
tools in scons-contrib. An earlier rework had broken this. Fixes #4699.
- Clean up C and C++ FLAGS tests. Tests which use a real compiler
are now more clearly distinguished (-live.py suffix and docstring).
- Fix a couple of unit tests to not fail with Python 3.14. These involve
expectations for bytecode strings and error message contents; there was
no problem with SCons itself using 3.14.
Thanks to the following contributors listed below for their contributions to this release.
==========================================================================================
.. code-block:: text
git shortlog --no-merges -ns 4.9.1..HEAD