summaryrefslogtreecommitdiffstats
path: root/SCons
Commit message (Collapse)AuthorAgeFilesLines
...
| | | * | | Fix PyPackageDirMats Wichmann2024-02-133-25/+66
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Passing a module which the active Python (system or virtualenv) cannot locate through the import machinery would cause SCons to fail with an AttributError, because the result of the initial lookup was used without checking for success. Now returns None for not found. Manpage entry and docstring also updated. Signed-off-by: Mats Wichmann <mats@linux.com>
| | * | | | Merge pull request #4469 from acmorrow/newsched-dynamic-workersWilliam Deegan2024-02-131-13/+23
| | |\ \ \ \ | | | |/ / / | | |/| | | NewParallel only adds worker threads as executable tasks are discovered
| | | * | | Only create new workers when current workers are saturated with jobsAndrew Morrow2024-02-131-1/+2
| | | | | |
| | | * | | Only add worker threads as necesaryAndrew Morrow2024-02-081-13/+22
| | | | | |
| | * | | | doc: update Pseudo description and moreMats Wichmann2024-02-094-22/+39
| | |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The Pseudo manpage entry is updated to be more descriptive. Since they were near neighbors in Environment.py, it and the three functions Precious, Repository and Requires received minor docstring changes there; Precious and Requires also got a minor tweak to the manpage entry (mainly to clarify allowable argument types and list return value). Signed-off-by: Mats Wichmann <mats@linux.com>
| * | | | Be more careful about file readingMats Wichmann2024-02-087-43/+64
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If SCons reads a file to interpret the contents, codecs are a concern. The File node class has a get_text_contents() method which makes a best effort at decoding bytes data, but there are other places that don't get their file contents via that method, and so should do their own careful decoding - but don't, they just read as text and hope it's okay. Move the decode-bytes portion out of File.get_text_contents() to SCons.Util.to_Text() so that everyone that needs this can call it. Add a couple of additional known BOM codes (after consulting Python's codecs module). Note that while get_text_contents acts on nodes, the new (moved) routine to_Text acts on passed bytes, so it can be used in a non-Node context as well - for example the Java tool initializer reads a file and tries to decode it, and can get it wrong (see #3569), this change provides it some help. Fixes #3569 FIxes #4462 Signed-off-by: Mats Wichmann <mats@linux.com>
| * | | Merge branch 'master' into maint/action-typingWilliam Deegan2024-02-073-24/+3
| |\ \ \
| | * \ \ Merge branch 'master' into maint/sconsignWilliam Deegan2024-02-078-511/+505
| | |\ \ \
| | | * \ \ Merge pull request #4475 from mwichmann/bug/PseudoWilliam Deegan2024-02-071-0/+1
| | | |\ \ \ | | | | | | | | | | | | | | Add Pseudo() to global functions, had been omitted.
| | | | * | | Add Pseudo() to global functions, had been omitted.Mats Wichmann2024-02-071-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When Pseudo was added in SCons 2.3.1, it was not added to the GlobalDefaultEnvironmentFunctions table which makes environment methods available in the default environment. Reworked the test so it does not rewrite the test SConstruct, and added steps to test the global function version as well. Fixes #4474. Signed-off-by: Mats Wichmann <mats@linux.com>
| | | * | | | Partially revert "cache push on any thread"Andrew Morrow2024-02-053-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This partially reverts commit 8a6b5e4b12254afbba8cf4aadb78300a92a42de7 to restore `Node.cached` field.
| | | * | | | cache push on any threadAndrew Morrow2024-02-053-9/+2
| | | |/ / /
| | * | | | Maint: remove dead code from sconsignMats Wichmann2024-01-091-22/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The Utilities/sconsign.py code used to do its own importing of the suitable module to read the sconsign file; for a while now it leaves that to the sconsign module, but some remnants of the old code were still present, which caused checkers and IDEs to grumble about usage of the "imp" module, which is removed from Python as of 3.12. Dropping this (uncalled) code and associated comments quiets the grumbles. Also tweaked manpage just a bit. Signed-off-by: Mats Wichmann <mats@linux.com>
| * | | | | Restore presub_env behavior in ActionMats Wichmann2024-02-071-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Mats Wichmann <mats@linux.com>
| * | | | | Fix bad typing in Action.pyMats Wichmann2024-02-051-19/+16
| | |/ / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Two methods had added type hints for the new override parameter, but not got them right: it's a dict if defined, else None. Corrected this and made a few other minor tweaks. Signed-off-by: Mats Wichmann <mats@linux.com>
| * | | | Fix copy-paste errorMats Wichmann2024-01-281-1/+1
| | | | | | | | | | | | | | | The stderr block was copied from the stdout block during initia edits, but only one instance of "stdout" was changed to "stderr".
| * | | | Decode command output conservativelyMats Wichmann2024-01-281-4/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On win32, rather than reading the temporary file used for external command output as text, read it as bytes and convert to the codec of the stream it will be written to, with suitable error fallback defined so it doesn't fail. Affects Configure usags. Fixes #3529. Signed-off-by: Mats Wichmann <mats@linux.com>
| * | | | Disallow python without threading support on startupAndrew Morrow2024-01-261-0/+7
| | | | |
| * | | | Run legacy parallel test case in legacy sched modeAndrew Morrow2024-01-241-0/+2
| | | | |
| * | | | Partial Revert "Fix JobTests.py"Andrew Morrow2024-01-241-0/+44
| | | | | | | | | | | | | | | | | | | | This reverts commit d932ba3700305f82ffafba6137da99b3145b82d2.
| * | | | destructure rather than repeatedly accessingAndrew Morrow2024-01-231-2/+2
| | | | |
| * | | | review feedback: legacysched to legacy_schedAndrew Morrow2024-01-203-5/+5
| | | | |
| * | | | SConf failed should use cached exception infoAndrew Morrow2024-01-191-2/+1
| | | | |
| * | | | Fix JobTests.pyAndrew Morrow2024-01-191-44/+1
| | | | |
| * | | | Use main thread as worker if -j1 with NewParallelAndrew Morrow2024-01-191-9/+11
| | | | |
| * | | | wipAndrew Morrow2024-01-193-8/+12
| | | | |
| * | | | No locks needed for -j1 with NewParallelAndrew Morrow2024-01-191-3/+27
| | | | |
| * | | | fixupAndrew Morrow2024-01-191-1/+1
| | | | |
| * | | | Let the main thread participate in NewParallelAndrew Morrow2024-01-191-1/+2
| | | | |
| * | | | Always use NewParallel with tm_v2 flagAndrew Morrow2024-01-191-24/+14
| | | | |
| * | | | fixupAndrew Morrow2024-01-191-28/+0
| | | | |
| * | | | threading is always availableAndrew Morrow2024-01-191-460/+449
| |/ / /
* | | | Implement framework for hinting complex typesThaddeus Crews2024-01-1513-59/+113
|/ / / | | | | | | | | | • Showcase potential with `ExecutorType`
* | | Initial Python 3.13 supportMats Wichmann2024-01-071-5/+20
| | | | | | | | | | | | | | | No changes needed so far, except expected bytecode patterns in ActionTests.
* | | Merge branch 'master' into jbrill-msvs-sconshomeWilliam Deegan2024-01-033-6/+30
|\ \ \
| * | | Add additional CheckFunc test cases and update change notice for CheckFunc.Joseph Brill2023-12-121-1/+14
| | | | | | | | | | | | | | | | | | | | | | | | Changes: * add additional CheckFunc test cases to SCons/SConfTests.py * add paragraph tags around change notice for CheckFunc funcargs argument in doc/man/scons.xml
| * | | Merge branch 'jbrill-gh4320-fix' of github.com:jcbrill/scons into ↵William Deegan2023-12-112-7/+10
| |\ \ \ | | | | | | | | | | | | | | | jbrill-gh4320-fix
| | * \ \ Merge branch 'master' into jbrill-gh4320-fixWilliam Deegan2023-12-102-7/+10
| | |\ \ \
| * | | | | Address mwichmann's feedback. Annotate with changed version and remove now ↵William Deegan2023-12-101-0/+3
| |/ / / / | | | | | | | | | | | | | | | obsolete note about function prototype
| * | | | Fix 4320: add an optional argument list string to the configure CheckFunc ↵Joseph Brill2023-11-243-5/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | method. Add an optional argument list string so the generated function argument list matches the function's prototype when including a header file.
* | | | | MSVS/MSVC: msvs tool, msvs tests, and msvc detection fixesJoseph Brill2023-12-282-4/+14
| |/ / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | Updates: * Fix issue #2755: the msvs tool no longer writes the OS environment SCONS_HOME value into the SCons environment when the SCONS_HOME variable already exists in the SCons environment. * Update the windows registry keys for detection of Visual Studio 2015 Express ('14.0Exp'): the VS2015 registry key ('WDExpress') appears to be different than the registry key ('VCExpress') for earlier Visual Studio express versions. * Fix the vs-6.0-exec.py test script: the msvs generated project is 'foo.dsp' and the command-line invocation of the Visual Studio development environment program was attempting to build 'test.dsp'. * Update the msvs project generation test scripts: the msvs project execution tests could produce a "false positive" test result when the test executable is correctly built via the SConstruct env.Program() call and the command-line invocation of the Visual Studio development environment program fails.
* | | | Replaced `NotImplementedError` with `NotImplemented`fazledyn-or2023-12-051-6/+6
| | | | | | | | | | | | | | | | Signed-off-by: fazledyn-or <ataf@openrefactory.com>
* | | | Update SConscript.py: typoStenGruener2023-11-291-1/+4
| | | |
* | | | Fixing a bug with --debug=sconscript where no exit message was emitted on ↵StenGruener2023-11-291-1/+1
|/ / / | | | | | | | | | exception catch
* | | post release updatesWilliam Deegan2023-11-201-4/+4
| | |
* | | 4.6.0 final changes4.6.0William Deegan2023-11-201-3/+3
| | |
* | | Updates to RELEASE.txt including notice about switching default parallel ↵William Deegan2023-11-201-4/+4
| | | | | | | | | | | | scheduler in next major release
* | | Update documentation of PCH builderMats Wichmann2023-11-071-15/+52
| | | | | | | | | | | | | | | | | | | | | Notes added on inclusion of PCH source file and object file. Note that PCH is not just MSVC-only, but also C++-only. Signed-off-by: Mats Wichmann <mats@linux.com>
* | | Merge pull request #4429 from mwichmann/feature/libliteralWilliam Deegan2023-10-3015-86/+247
|\ \ \ | | | | | | | | Add LIBLITERALPREFIX to support gcc -l:filename
| * | | defined LIBLITERALPREFIX for gnulinkWilliam Deegan2023-10-291-0/+3
| | | |