Skip to content

Commit f53ea8b

Browse files
committed
reset to development mode
1 parent ad3f21f commit f53ea8b

File tree

7 files changed

+67
-159
lines changed

7 files changed

+67
-159
lines changed

CHANGES.txt

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,13 @@
66

77
NOTE: The 4.0.0 Release of SCons will drops Python 2.7 Support
88

9+
RELEASE 4.1.0.devyyyymmdd - Mon, 04 Jul 2020 16:06:40 -0700
10+
11+
From John Doe:
12+
13+
- Whatever John Doe did.
14+
15+
916
RELEASE 4.0.0 - Sat, 04 Jul 2020 12:00:27 +0000
1017

1118
From Dirk Baechle:

README-SF.rst

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -392,11 +392,11 @@ Depending on the utilities installed on your system, any or all of the
392392
following packages will be built::
393393

394394
SCons-4.0.0-py3-none-any.whl
395-
SCons-4.0.0.tar.gz
396-
SCons-4.0.0.zip
397-
scons-doc-4.0.0.tar.gz
398-
scons-local-4.0.0.tar.gz
399-
scons-local-4.0.0.zip
395+
SCons-4.1.0.devyyyymmdd.tar.gz
396+
SCons-4.1.0.devyyyymmdd.zip
397+
scons-doc-4.1.0.devyyyymmdd.tar.gz
398+
scons-local-4.1.0.devyyyymmdd.tar.gz
399+
scons-local-4.1.0.devyyyymmdd.zip
400400

401401
The SConstruct file is supposed to be smart enough to avoid trying to build
402402
packages for which you don't have the proper utilities installed.

RELEASE.txt

Lines changed: 48 additions & 127 deletions
Original file line numberDiff line numberDiff line change
@@ -1,152 +1,73 @@
1-
A new SCons release, 4.0.0, is now available
1+
A new SCons checkpoint release, 2.0.0.beta.yyyymmdd, is now available
22
on the SCons download page:
33

44
https://scons.org/pages/download.html
55

6-
Here is a summary of the changes since 3.1.2:
6+
XXX The primary purpose of this release ... XXX
7+
8+
A SCons "checkpoint release" is intended to provide early access to
9+
new features so they can be tested in the field before being released
10+
for adoption by other software distributions.
11+
12+
Note that a checkpoint release is developed using the same test-driven
13+
development methodology as all SCons releases. Existing SCons
14+
functionality should all work as it does in previous releases (except
15+
for any changes identified in the release notes) and early adopters
16+
should be able to use a checkpoint release safely for production work
17+
with existing SConscript files. If not, it represents not only a bug
18+
in SCons but also a hole in the regression test suite, and we want to
19+
hear about it.
20+
21+
New features may be more lightly tested than in past releases,
22+
especially as concerns their interaction with all of the other
23+
functionality in SCons. We are especially interested in hearing bug
24+
reports about new functionality.
25+
26+
We do not recommend that downstream distributions (Debian, Fedora,
27+
etc.) package a checkpoint release, mainly to avoid confusing the
28+
"public" release numbering with the long checkpoint release names.
29+
30+
Here is a summary of the changes since 1.3.0:
731

832
NEW FUNCTIONALITY
933

10-
- Added support for scanning multiple entries in an action string if
11-
IMPLICIT_COMMAND_DEPENDENCIES is set to 2 or 'all'. This enables more thorough
12-
action scanning where every item in each command line is scanned to determine
13-
if it is a non-source and non-target path and added to the list of implicit dependencies
14-
for the target.
15-
- Added new module SCons.Scanner.Python to allow scanning .py files.
16-
- Added support for explicitly passing a name when creating Value() nodes. This may be useful
17-
when the value can't be converted to a string or if having a name is otherwise desirable.
18-
- Added a new flag called "linedraw" for the command line argument "--tree"
19-
that instructs scons to use single line drawing characters to draw the dependency tree.
20-
- Add CompilationDatabase() builder in compilation_db tool. Contributed by MongoDB.
21-
Setting COMPILATIONDB_USE_ABSPATH to True|False controls whether the files are absolute or relative
22-
paths. Address Issue #3693 and #3694 found during development.
23-
- Extended `Environment.Dump()` to select a format to serialize construction variables (pretty, json).
24-
- New conditional C Scanner (`SCons.Scanner.C.CConditionalScanner()`)
25-
which interprets C/C Preprocessor conditional syntax (#ifdef, #if, #else,
26-
#elif, #define, etc.)
27-
- Experimental New Feature: Enable caching MSVC configuration
28-
If SCONS_CACHE_MSVC_CONFIG shell environment variable is set,
29-
SCons will cache the results of past calls to vcvarsall.bat to
30-
a file; integrates with existing memoizing of such vars.
31-
- Preliminary Python 3.9 support.
34+
- List new features (presumably why a checkpoint is being released)
3235

3336
DEPRECATED FUNCTIONALITY
3437

35-
- Drop support for Python 2.7. SCons will be Python 3.5+ going forward.
36-
- Remove deprecated SourceCode()
38+
- List anything that's been deprecated since the last release
3739

3840
CHANGED/ENHANCED EXISTING FUNCTIONALITY
3941

40-
- Added check for SONAME in environment to setup symlinks correctly (Github Issue #3246)
41-
- Resolve Issue #3248 - Removing '-Wl,-Bsymbolic' from SHLIBVERSIONFLAGS
42-
NOTE: If your build depends on the above you must now add to your SHLIBVERSIONFLAGS
43-
- Microsoft Visual Studio - switch to using uuid module to generate GUIDs rather than hand rolled
44-
method using md5 directly.
45-
NOTE: This change affects the following builders' output. If your build depends on the output of these builders
46-
you will likely see a rebuild.
47-
* Package() (with PACKAGETYPE='msi')
48-
* MSVSSolution()
49-
* MSVSProject()
50-
- Improve Visual Studio solution/project generation code to add support
51-
for a per-variant cppflags. Intellisense can be affected by cppflags,
52-
this is especially important when it comes to /std:c++* which specifies
53-
what C++ standard version to target. SCons will append /Zc:__cplusplus
54-
to the project's cppflags when a /std:c++* flag is found as this is
55-
required for intellisense to use the C++ standard version from cppflags.
56-
- Allow user specified location for vswhere.exe specified by VSWHERE.
57-
NOTE: This must be set at the time the 'msvc' 'msvs' and/or 'mslink' tool(s) are initialized to have any effect.
58-
- Fixed Github Issue 3628 - Hardcoding pickle protocol to 4 (supports python 3.4+)
59-
and skipping Python 3.8's new pickle protocol 5 whose main advantage is for out-of-band data buffers.
60-
NOTE: If you used Python 3.8 with SCons 3.0.0 or above, you may get a a pickle protocol error. Remove your
61-
.sconsign.dblite. You will end up with a full rebuild.
62-
- MSVC updates: When there are multiple product installations (e.g, Community and
63-
Build Tools) of MSVC 2017 or MSVC 2019, an Enterprise, Professional,
64-
or Community installation will be selected before a Build Tools installation when
65-
"14.1" or "14.2" is requested, respectively. (GH Issue #3699).
66-
- MSVC updates: When there are multiple product installations of MSVC 2017 (e.g.,
67-
Community and Express), 2017 Express is no longer returned when "14.1" is
68-
requested. Only 2017 Express will be returned when "14.1Exp" is requested.
69-
(GH Issue #3699).
70-
- MSVC updates: pass on VSCMD_DEBUG and VSCMD_SKIP_SENDTELEMETRY to msvc
71-
tool setup if set in environment. Add Powershell to default env
72-
(used to call telemetry script).
73-
- Renamed as.py to asm.py and left redirecting tool. 'as' is a reserved word and so
74-
changing the name was required as we wanted to import symbols for use in compilation_db
75-
tool.
76-
- Add no_progress (-Q) option as a set-able option. However, setting it in the
77-
SConstruct/SConscript will still cause "scons: Reading SConscript files ..." to be
78-
printed, since the option is not set when the build scripts first get read.
79-
- Docbook builder provides a fallback if lxml fails to generate
80-
a document with tostring().
81-
- SubstitutionEnvironment and OverrideEnvironment now have keys()
82-
and values() methods to better emulate a dict (already had items()).
42+
- List modifications to existing features, where the previous behavior
43+
wouldn't actually be considered a bug
8344

8445
FIXES
8546

86-
- Cleanup dangling symlinks before running builders (Issue #3516)
87-
- Fixed usage of abspath and path for RootDir objects on Windows. Previously
88-
env.fs.Dir("T:").abspath would return "T:\T:" and now it correctly returns "T:".
89-
- Fix Issue #3469 - Fixed improper reuse of temporary and compiled files by Configure when changing
90-
the order and/or number of tests. This is done by using the hash of the generated temporary files
91-
content and (For the target files) the hash of the action.
92-
So where previously files would be named:
93-
- config_1.c, config_1.o, config_1
94-
The will now be named (For example)
95-
- conftest_68b375d16e812c43e6d72d6e93401e7c_0.c,
96-
conftest_68b375d16e812c43e6d72d6e93401e7c_0_5713f09fc605f46b2ab2f7950455f187.o
97-
or
98-
conftest_68b375d16e812c43e6d72d6e93401e7c_0.o
99-
conftest_68b375d16e812c43e6d72d6e93401e7c_0_5713f09fc605f46b2ab2f7950455f187 (for executable)
100-
- Updated documentation toolchain to work properly under Python3, also
101-
removed libxslt support from the Docbook Tool. (issue #3580)
102-
- Fix broken clang + MSVC 2019 combination by using MSVC configuration logic to
103-
propagate 'VCINSTALLDIR' and 'VCToolsInstallDir' which clang tools use to locate
104-
header files and libraries from MSVC install. (Fixes GH Issue #3480)
105-
- Fix Github Issue #2904 - Provide useful error message when more than one Configure Contexts are opened.
106-
Only one open is allowed. You must call conf.Finish() to complete the currently open one before creating another
47+
- List fixes of outright bugs
10748

10849
IMPROVEMENTS
10950

110-
- Improve performance of Subst by preventing unnecessary frame
111-
allocations by no longer defining the *Subber classes inside of their
112-
respective function calls.
113-
- Improve performance of Subst in some cases by preventing
114-
unnecessary calls to eval when a token is surrounded in braces
115-
but is not a function call.
116-
- Improve performance of subst by removing unnecessary recursion.
51+
- List improvements that wouldn't be visible to the user in the
52+
documentation: performance improvements (describe the circumstances
53+
under which they would be observed), or major code cleanups
11754

11855
PACKAGING
11956

120-
- Resolve Issue #3451 and Issue #3450 - Rewrite SCons setup.py and packaging. Move script logic to entry points so
121-
package can create scripts which use the correct version of Python.
57+
- List changes in the way SCons is packaged and/or released
12258

12359
DOCUMENTATION
12460

125-
- Significant rework of documentation: API docs are now generated
126-
using Sphinx; manpage and user guide now use more "standard"
127-
markup elements (which could facilitate later conversion to a
128-
different doc format, should that choice be made); significant
129-
rewordings in manpage. Manpage Examples moved to an external
130-
repository / website (scons-cookbook.readthedocs.io).
131-
132-
Thanks to the following contributors listed below for their contributions to this release.
133-
134-
git shortlog --no-merges -ns 3.1.2..HEAD
135-
290 William Deegan
136-
184 Mats Wichmann
137-
46 Adam Gross
138-
22 Daniel Moody
139-
16 Joseph Brill
140-
15 Dirk Baechle
141-
12 Ivan Kravets
142-
9 Mathew Robinson
143-
6 Paul Tipei
144-
1 Rob Boehne
145-
1 Robert Boehne
146-
1 Daniel
147-
1 Andrew Morrow
148-
1 Iosif Daniel Kurazs
149-
1 James Benton
150-
1 Jeremy Elson
151-
1 Konstantin Gonchar
152-
1 Andrii Doroshenko (Xrayez)
61+
- List any significant changes to the documentation (not individual
62+
typo fixes, even if they're mentioned in src/CHANGES.txt to give
63+
the contributor credit)
64+
65+
DEVELOPMENT
66+
67+
- List visible changes in the way SCons is developed
68+
69+
Thanks to CURLY, LARRY, and MOE for their contributions to this release.
70+
Contributors are listed alphabetically by their last name.
71+
72+
__COPYRIGHT__
73+
__FILE__ __REVISION__ __DATE__ __DEVELOPER__

ReleaseConfig

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ __revision__ = "__FILE__ __REVISION__ __DATE__ __DEVELOPER__"
3232
# 'final', the patchlevel is set to the release date. This value is
3333
# mandatory and must be present in this file.
3434
#version_tuple = (2, 2, 0, 'final', 0)
35-
version_tuple = (4,0,0)
35+
version_tuple = (4, 1, 0, 'dev', 0)
3636

3737
# Python versions prior to unsupported_python_version cause a fatal error
3838
# when that version is used. Python versions prior to deprecate_python_version

SConstruct

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,6 @@ copyright_years = strftime('2001 - %Y')
1111

1212
# This gets inserted into the man pages to reflect the month of release.
1313
month_year = strftime('%B %Y')
14-
1514
#
1615
# __COPYRIGHT__
1716
#
@@ -37,7 +36,7 @@ month_year = strftime('%B %Y')
3736

3837

3938
project = 'scons'
40-
default_version = '4.0.0'
39+
default_version = '4.1.0.devyyyymmdd'
4140
copyright = "Copyright (c) %s The SCons Foundation" % copyright_years
4241

4342
#

bin/update-release-info.py

Lines changed: 2 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -275,8 +275,8 @@ def main(args, rel_info):
275275

276276
# Update src/RELEASE.txt
277277

278-
t = UpdateFile('RELEASE.txt'),
279-
os.path.join('template', 'RELEASE.txt')
278+
t = UpdateFile('RELEASE.txt',
279+
os.path.join('template', 'RELEASE.txt'))
280280
if DEBUG: t.file = '/tmp/RELEASE.txt'
281281
t.replace_version()
282282

@@ -286,25 +286,6 @@ def main(args, rel_info):
286286
if DEBUG: t.file = '/tmp/CHANGES.txt'
287287
t.sub('\nRELEASE .*', '\nRELEASE ' + rel_info.version_string + ' - ' + rel_info.new_date)
288288

289-
# Update RELEASE.txt
290-
t = UpdateFile('RELEASE.txt')
291-
if DEBUG: t.file = '/tmp/RELEASE.txt'
292-
t.replace_version()
293-
294-
# Update src/Announce.txt
295-
296-
# t = UpdateFile(os.path.join('src', 'Announce.txt'))
297-
# if DEBUG: t.file = '/tmp/Announce.txt'
298-
# t.sub('\nRELEASE .*', '\nRELEASE ' + rel_info.version_string + ' - ' + rel_info.new_date)
299-
#
300-
# Update SConstruct
301-
302-
t = UpdateFile('SConstruct')
303-
if DEBUG: t.file = '/tmp/SConstruct'
304-
t.replace_assign('month_year', repr(rel_info.month_year))
305-
t.replace_assign('copyright_years', repr(rel_info.copyright_years))
306-
t.replace_assign('default_version', repr(rel_info.version_string))
307-
308289
# Update README
309290
for readme_file in ['README.rst', 'README-SF.rst']:
310291
t = UpdateFile(readme_file)

testing/framework/TestSCons.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -35,10 +35,10 @@
3535
# here provides some independent verification that what we packaged
3636
# conforms to what we expect.
3737

38-
default_version = '3.1.2'
38+
default_version = '4.1.0.devyyyymmdd'
3939

40-
python_version_unsupported = (2, 6, 0)
41-
python_version_deprecated = (2, 7, 0)
40+
python_version_unsupported = (3, 4, 0)
41+
python_version_deprecated = (3, 4, 0)
4242

4343
# In the checked-in source, the value of SConsVersion in the following
4444
# line must remain "__ VERSION __" (without the spaces) so the built

0 commit comments

Comments
 (0)