Skip to content

Commit 03de8d1

Browse files
authored
Merge branch 'master' into jbrill-gh4320-fix
2 parents 04eed99 + 00c8ea3 commit 03de8d1

File tree

6 files changed

+39
-17
lines changed

6 files changed

+39
-17
lines changed

CHANGES.txt

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,12 +8,23 @@ NOTE: The 4.0.0 Release of SCons dropped Python 2.7 Support
88
NOTE: 4.3.0 now requires Python 3.6.0 and above. Python 3.5.x is no longer supported
99

1010
RELEASE VERSION/DATE TO BE FILLED IN LATER
11-
11+
From Ataf Fazledin Ahamed:
12+
- Use of NotImplemented instead of NotImplementedError for special methods
13+
of _ListVariable class
14+
1215
From Joseph Brill:
1316
- Add an optional argument list string to configures CheckFunc method so
1417
that the generated function argument list matches the function's
1518
prototype when including a header file. Fixes GH Issue #4320
1619

20+
From Michał Górny:
21+
- Remove unecessary dependencies on pypi packages from setup.cfg
22+
23+
From Sten Grüner:
24+
- Fix of the --debug=sconscript option to return exist statements when using return
25+
statement with stop flag enabled
26+
27+
1728

1829
RELEASE 4.6.0 - Sun, 19 Nov 2023 17:22:20 -0700
1930

RELEASE.txt

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -33,19 +33,19 @@ CHANGED/ENHANCED EXISTING FUNCTIONALITY
3333
FIXES
3434
-----
3535

36-
- List fixes of outright bugs
36+
- Fix of the --debug=sconscript option to return exist statements when using return
37+
statement with stop flag enabled
3738

3839
IMPROVEMENTS
3940
------------
4041

41-
- List improvements that wouldn't be visible to the user in the
42-
documentation: performance improvements (describe the circumstances
43-
under which they would be observed), or major code cleanups
42+
- Use of NotImplemented instead of NotImplementedError for special methods
43+
of _ListVariable class
4444

4545
PACKAGING
4646
---------
4747

48-
- List changes in the way SCons is packaged and/or released
48+
- Remove unecessary dependencies on pypi packages from setup.cfg
4949

5050
DOCUMENTATION
5151
-------------

SCons/Script/SConscript.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -280,7 +280,10 @@ def _SConscript(fs, *files, **kw):
280280
if SCons.Debug.sconscript_trace:
281281
print("scons: Exiting "+str(scriptname))
282282
except SConscriptReturn:
283-
pass
283+
if SCons.Debug.sconscript_trace:
284+
print("scons: Exiting "+str(scriptname))
285+
else:
286+
pass
284287
finally:
285288
if Main.print_time:
286289
elapsed = time.perf_counter() - start_time

SCons/Variables/ListVariable.py

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -70,22 +70,22 @@ def __init__(self, initlist=None, allowedElems=None) -> None:
7070
self.allowedElems = sorted(allowedElems)
7171

7272
def __cmp__(self, other):
73-
raise NotImplementedError
73+
return NotImplemented
7474

7575
def __eq__(self, other):
76-
raise NotImplementedError
76+
return NotImplemented
7777

7878
def __ge__(self, other):
79-
raise NotImplementedError
79+
return NotImplemented
8080

8181
def __gt__(self, other):
82-
raise NotImplementedError
82+
return NotImplemented
8383

8484
def __le__(self, other):
85-
raise NotImplementedError
85+
return NotImplemented
8686

8787
def __lt__(self, other):
88-
raise NotImplementedError
88+
return NotImplemented
8989

9090
def __str__(self) -> str:
9191
if not len(self):

setup.cfg

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -45,10 +45,6 @@ classifiers =
4545
[options]
4646
zip_safe = False
4747
python_requires = >=3.6
48-
install_requires = setuptools
49-
setup_requires =
50-
setuptools
51-
build
5248
include_package_data = True
5349
packages = find:
5450

test/option/debug-sconscript.py

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,18 @@
5151
'scons: Exiting %s%sSConstruct' % (wpath, os.sep)
5252
]
5353
test.must_contain_all_lines(test.stdout(), expect)
54+
55+
# Ensure that reutrns with stop are handled properly
56+
57+
test.write('SConstruct', """\
58+
foo = "bar"
59+
Return("foo", stop=True)
60+
print("SConstruct")
61+
""")
62+
63+
test.run(arguments="--debug=sconscript .")
64+
test.must_contain_all_lines(test.stdout(), expect)
65+
5466
test.pass_test()
5567

5668
# Local Variables:

0 commit comments

Comments
 (0)