| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
| | | | | | | | |
|
| |\ \ \ \ \ \ \
| | |/ / / / / /
| |/| | | | | | |
|
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
Signed-off-by: Mats Wichmann <mats@linux.com>
|
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
Signed-off-by: Mats Wichmann <mats@linux.com>
|
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
Sider in the CI system doesn't like the change which added a try/except
block for a version without a dot. This was copied from a different
file, so to fix the complaint, four instances are actually updated to
"except ValueError" - I am assuming that this is the only thing that
could go wrong, a version string cannot be converted with int(foo),
which would throw ValueError.
Signed-off-by: Mats Wichmann <mats@linux.com>
|
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
The java tool common routine finds a jdk by doing a filesystem glob.
This had a problem on windows in the case a specific version is requested,
because the format of name of the jdk directory has changed with JDK 9 -
there is a dash between jdk and the version string. The glob which does
not attempt to match a version was general enough not to trip on this,
but with a version to match it would never match jdk-9 or higher.
The test harness then asks the found javac what version it is, and the
parsing of that did not work as expected once version numbers became
double-digit, as the regex was for a single digit followed by a dot.
The outcome is for 11.0.2 we get back '11' instead of '11.0'. Change the
regex to match any number of digits followed by dot.
The Repository/RMIC.py change is to align with an earlier change to
Java/RMIC.py, but the may not be needed after the change to regex
just described.
Clean up some of the Java tool routines for consistency (there was
no functional change outside of JavaCommon.py)
Docstrings added or updated in several places.
Signed-off-by: Mats Wichmann <mats@linux.com>
|
|\ \ \ \ \ \ \ \
| |_|/ / / / / /
|/| | | | | | | |
Fix Issue #3350 mslink tempfile join char
|
| | | | | | | | |
|
| | | | | | | | |
|
| |\ \ \ \ \ \ \
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
into fix_3350_mslink_tempfile_join_char
|
| | | | | | | | | |
|
| | | | | | | | | |
|
| | | | | | | | | |
|
| |\ \ \ \ \ \ \ \
| |/ / / / / / / /
|/| / / / / / / /
| |/ / / / / / / |
fix_3350_mslink_tempfile_join_char
|
|\ \ \ \ \ \ \ \
| | | | | | | | |
| | | | | | | | | |
Fixup some code triggering pylint errors.
|
|/ / / / / / / /
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
Assorted fixups: exception types, redefined functions, globals, etc.
Some old code removed to resolve issues (hashlib is always present on
modern Pythons; no longer need the code for 2.5-and-earlier optparse).
cmp is not a builtin function in Py3, drop one (unused) use; replace one.
Fix another instance of renaming to SConsEnvironmentError.
TODO flagged some instances of doing a raise without argument but not
inside a try block - this is not considered legal, since raise
with no argument is for re-raising an exception, but I don't know
exactly how to resolve this in these cases. Also flagged an instance
of raising an int instead of an exception class. We can either leave
these as markers or update the PR.
Signed-off-by: Mats Wichmann <mats@linux.com>
|
|/ / / / / / /
| | | | | | |
| | | | | | |
| | | | | | | |
item placed into a TEMPFILE. Previously hardcoded as a bytearray space, now it is overridden by msvc and mslink tools
|
|\ \ \ \ \ \ \
| |/ / / / / /
|/| | | | | | |
Issue #3350 - Refactor EnvironmentError to SConsEnvironmentError to avoid overriding python's native EnvironmentError
|
|/ / / / / /
| | | | | |
| | | | | |
| | | | | | |
overriding python's native EnvironmentError
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
A list of possible executable names are provided in several places
in yacc and lex tools, make it a little cleaner by defining once,
at the top.
Signed-off-by: Mats Wichmann <mats@linux.com>
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Remove now unneeded code to save/restore the path, since
the routine now does not modify the path.
Signed-off-by: Mats Wichmann <mats@linux.com>
|
| |/ / / /
|/| | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
When tool modules initialize, they check paths to decide if
the underlying tool is actually present. The current checker adds
any "default paths" the caller may have supplied (locations like
mingw, cygwin, chocolatey install locations, etc.); if there is
match from this list, any previous default paths are also kept.
To avoid keeping these non-matching paths, restore the original PATH;
the caller is responsible for adding to PATH if necessary.
Docstring now says so.
Note lex and yacc tool modules seem to expect the path-modifying
behavior that's being gotten rid of - so they preseve the path
first and restore it after. The change here won't break those,
but makes the extra behavior unneeded - could remove it.
Signed-off-by: Mats Wichmann <mats@linux.com>
|
|\ \ \ \ \
| | | | | |
| | | | | | |
Give sconsign a default filename.
|
| |/ / / /
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
sconsign required filename(s) or directory name(s) to do anything,
in their absence it just quits silently. Change so if filename
argument omitted, use the same default as scons - .sconsign.dblite.
print something in case of bad options.
add an extra info line in case the sconsign cannot be read due
to pickle protocol (when py2 used in a place where scons
previously run with py3)
Tweak the manpage a bit.
Signed-off-by: Mats Wichmann <mats@linux.com>
|
|\ \ \ \ \
| |/ / / /
|/| | | | |
Tweaks to packaging tests: avoid default tool list
|
|/ / / /
| | | |
| | | |
| | | | |
Signed-off-by: Mats Wichmann <mats@linux.com>
|
| |/ / |
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| |\ \
| |/ /
|/| |
| | | |
fix_mongo_bug_33111_multiple_targets_via_emitter_spurious_rebuilds
|
|\ \ \
| | | |
| | | | |
[PY 3.8] fix more warnings
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Manually make scons-time.py match master after it evolved independently
in a different PR.
Signed-off-by: Mats Wichmann <mats@linux.com>
|
| | | |
| | | |
| | | |
| | | | |
Signed-off-by: Mats Wichmann <mats@linux.com>
|
| | | |
| | | |
| | | |
| | | | |
Signed-off-by: Mats Wichmann <mats@linux.com>
|
| | | |
| | | |
| | | |
| | | | |
Signed-off-by: Mats Wichmann <mats@linux.com>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
One was "real": had failed to indent a with: block
Signed-off-by: Mats Wichmann <mats@linux.com>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
For PR #3331: the change in src/script/scons-time.py to use subprocess
in log_execute caused failures on Windows platform. For now, go back
to os.popen, but save the open descriptor so it can be closed (that
was the original warning being addressed).
Signed-off-by: Mats Wichmann <mats@linux.com>
|
|/ / /
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Several locations with simple usage of deprecated "imp" module
changed to use "importlib". These match with work in #3159,
but this is not a complete implementation of #3159.
More regex patterns are changed to be raw strings.
Some strings which did not seem appropriate to change to raw
strings (e.g. contain embedded tabs, which Python should honor)
had backslashes escaped to avoid accidental Python interpretation.
Example:
'\t<Import Project="$(VCTargetsPath)\\Microsoft.Cpp.targets" />\n'
Python 3.8 was Warning \M was an unknown escape.
More open().write(), open().read() style usage changed to use
context managers so the file is closed.
WIP part: even with Python 3.7, the tests which call sconsign.py
fail; oddly they do not fail without the patch to compat.py.
sconsign.py does an import using imp module (which is what
generates the errors) so needs to be updated anyway. It does not
quite fit the "simple usage" pattern - can't do a simple relative
import since sconsign is normally located elsewhere in the tree than
the main scons code body.
With this version of the patch, 700 tests now pass with 3.8, and
Warning messages reduced to 2800 (current master has 200 pass,
9000 warns)
Signed-off-by: Mats Wichmann <mats@linux.com>
|
|/ /
| |
| |
| | |
when builder has more than one target and source file generated
|
|\ \
| | |
| | | |
Runtest improvements for multi-job runs
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
With runtest now honoring the -j 2 option given to it in
CI setup on Windows, there were some problems where scons-time
tests could try to remove a test directory while some files
in it were still open (these locations were complained about
by Python 3.8 also).
Switch test framework to using mkdtemp also, and to not use
tempfile.template (usage of that and mktemp are long
deprecated)
Signed-off-by: Mats Wichmann <mats@linux.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
runtest change to run requested number of jobs exposed a concurrency
problem on Appveyor CI (Windows) builds - which seems to be due to
scons-time using mktemp to create a temporary directory name, and then
later creating the directory. In scons-time the timing window for
this is a bit longer than usual. Try using mkdtemp instead.
Signed-off-by: Mats Wichmann <mats@linux.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The various instances of subprocess.Popen call with
shell=True, but this is not necessary, the test command lines
don't depend on any shell processing and are complete as constructed.
With shell=False, send a list of command words instead of a
single string.
Signed-off-by: Mats Wichmann <mats@linux.com>
|
|/ /
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Main fix: if duing a multi-job run (-j flag is present), collect the
test output in runtest and keep the test heading together with the test
output, so the information about a given test will not separated in
the output. The test number is recorded in the test instance instead
of kept as a global. Tests may appear out of order now, but since they
may be run "out of order" depending on how fast the various threads
complete the jobs they pull off the queue, that just reflects reality.
The help message is now the script's docstring, and help prints the
docstring along with some other info. This avoids having the options
described twice (and going out of sync) - once in the inital comment,
once in the help message. A mention of the -j multi-job option is
added, was previously missing.
Also: one less worker than requested was created due to use of
range(1, n) (may have been intentional?). changed to number requested.
Also: the lock is taken from the RunTest instance, not from the global
lock variable. This must have been intended as the lock is stored in
the instance on initialization. The lock was not really declared as
a global, it was just assigned in global scope.
Also: the test result reporting is now split off into its own function,
makes a bit cleaner separation (and facilitates possible changes to
the multi-job model in future).
Signed-off-by: Mats Wichmann <mats@linux.com>
|
| | |
|
|\ \
| | |
| | | |
Merge 3.0.5 changes back to master
|