summaryrefslogtreecommitdiffstats
path: root/SCons/Taskmaster
Commit message (Collapse)AuthorAgeFilesLines
* Get rid of raising exceptions entirelyRaymond Li2024-03-281-1/+1
| | | | In favor of just returning status for uniform behavior
* Updates on Value nodesMats Wichmann2024-03-121-3/+2
| | | | | | | | | | | | | | Some doc changes. E2E tests cleaned up a bit. Before merge: TODO: second half of manpage example doesn't work. Also: should test give SCons.Node.Value.Value as factory, or just Value? (remove new import if the latter). SCons.Node.Value.Value and SCons.Environment.Value are not the same thing. Signed-off-by: Mats Wichmann <mats@linux.com>
* 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
|
* Partially revert "cache push on any thread"Andrew Morrow2024-02-051-0/+3
| | | | | This partially reverts commit 8a6b5e4b12254afbba8cf4aadb78300a92a42de7 to restore `Node.cached` field.
* cache push on any threadAndrew Morrow2024-02-051-5/+2
|
* 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.
* review feedback: legacysched to legacy_schedAndrew Morrow2024-01-202-4/+4
|
* 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-192-7/+11
|
* 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
|
* "Modernize" to Python 3.6 via toolMats Wichmann2023-08-041-2/+2
| | | | | | | | | | | | | | | | | | | | | $ pyupgrade --py36-plus $(<filelist) Here's mostly what it's done: - No more 'stringliteral'.encode('utf-8'): now b'stringliteral' - No more unicode literals - the default open mode is 'r', leaves out if default - some f-string conversions (if shorter) - catch OSError instead of subclasses - no more mention of "object" - generator expression instead of list comp. when safe - a few tests had a shebang but actually began with blank line - remove coding: utf-8 comment, per pep 3120 this is the default now Manually - if a file in test/ was modified, then did the copyright header conversion. Signed-off-by: Mats Wichmann <mats@linux.com>
* Followon to PR #4348: more bool fixesMats Wichmann2023-06-161-11/+11
| | | | | | | | | | | | | | Manually fixed up some things related to bool, e.g. simple functions which just did "return 1" were interpreted by the tool as returning int, when bool was really the intent. Functions/methods named like "is*", "has*", "exists", "rexists" (and others) are now pretty consistently marked as returning bool. A couple of minor alignments of branched definitions, and a couple of docstring adjustments made. If Tools which had old heading style were touched, they got the new style. Signed-off-by: Mats Wichmann <mats@linux.com>
* Drop dead code from unit testsMats Wichmann2023-05-221-9/+0
| | | | | | | | | | Remove dead code: some mocked classes in unit tests had methods which have been removed from the Node class they're mocking, there's no need to shadow those any more as there are no callers. The methods are depends_on (base functionality removed in 2005 ) and is_pseudeo_derived (base functionality removed in 2006). Signed-off-by: Mats Wichmann <mats@linux.com>
* Add some cheap return and parameter annotationsMats Wichmann2023-05-014-127/+127
| | | | | | | | | | | | | | | | | Use: https://github.com/JelleZijlstra/autotyping to add "safe" return annotations. Where a parameter has a default value that is an obvious scalar type (bool, int, str, etc.) add those annotations as well. Also fixed two small bugs that popped up when sanity-checking with mypy. One in FortranCommon, where a return had been previously annotated to be a tuple of Action, which should be ActionBase - Action is the factory function, not the base class. The other was a typo in the error raised in _add_cppdefines - the message was formatted with the value of "define" which should have been "defines". Signed-off-by: Mats Wichmann <mats@linux.com>
* [ci skip] Add pylint annotation and comment regarding importing GetOption in ↵William Deegan2022-12-051-0/+4
| | | | a method instead of at top of file. (Thanks mwichmann for providing feedback and pylint syntax)
* [ci skip] Fix formatting for which versions introduced which experimental ↵William Deegan2022-12-041-0/+1
| | | | features
* modernize JobTests to just use unittest.main(), fix JobTests to have a ↵William Deegan2022-12-042-28/+34
| | | | reasonable value for OptionsParser.values.experimental, so Jobs doesn't crash when referencing it and getting a None instead of an iterable
* Added --experimental=tm_v2 which switches to use Andrew Morrow's new ↵William Deegan2022-12-041-3/+4
| | | | ParallelJob implementation. WHich should scale much better for highly parallel builds
* Merge branch 'master' of github.com:SCons/scons into ↵William Deegan2022-12-042-51/+119
|\ | | | | | | add_logging_to_new_parallel_job
| * Added test for failing to unlink cached target filesWilliam Deegan2022-12-031-3/+56
| |
| * remove unused display and change text on warning per PR reviewWilliam Deegan2022-12-011-4/+1
| |
| * improve changes notes and use SCons warningDaniel Moody2022-12-011-1/+2
| |
| * Added error message when failure to delete partial cache retrieval occurs.Daniel Moody2022-12-011-2/+4
| |
| * Merge pull request #4251 from bdbaddog/taskmaster_trace_to_python_loggingWilliam Deegan2022-10-261-46/+61
| |\ | | | | | | Fixed taskmaster trace tests.
| | * Fixed taskmaster trace tests. Previously there was an extra line at the end ↵William Deegan2022-10-261-46/+61
| | | | | | | | | | | | of the file. It's no longer there. Added TestCommon.detailed_diff() function which can be used to diff large text blobs expected vs actual
* | | Added TestCommon.must_match_file() function. Updated test for ↵William Deegan2022-12-041-14/+15
| | | | | | | | | | | | --taskmastertracefor (NewParallel/LegacyParallel Jobs). Now uses golden files to compare expected output and output files
* | | Fix SCons/Taskmaster/JobTests.py testWilliam Deegan2022-11-171-3/+3
| | |
* | | Remove extraneous XXX from NewParallel logging. Added SCONS_NEW_PARALLEL ↵William Deegan2022-11-171-14/+18
| | | | | | | | | | | | shell environment variable to turn on NewParallel. This is a temporary mechanism to enable NewParallel
* | | logging working in NewParallel, but changed to be default. Need to figure ↵William Deegan2022-11-161-20/+17
| | | | | | | | | | | | out how to switch from one to the other
* | | Initial logic to add logging to ExperimentalParallel job class. Not quite ↵William Deegan2022-10-272-13/+51
|/ / | | | | | | working
* | Merge pull request #4222 from acmorrow/new-parallelWilliam Deegan2022-10-241-7/+271
|\ \ | |/ |/| Implement new parallel scheduler
| * [ci skip] Resolve outstanding pep8 errors (fix sider complaints and more)William Deegan2022-10-211-12/+13
| |
| * Restore original Parallel as the default and rename new parallel as experimentalAndrew Morrow2022-10-131-15/+14
| |
| * Implement new parallel schedulerAndrew Morrow2022-10-131-1/+265
| |
* | [ci skip] Fix TypoWilliam Deegan2022-10-231-1/+1
| |
* | [ci skip] address sider complain on call to DispatchingFormatter()William Deegan2022-10-231-3/+3
| |
* | Address style comment on cal to DispatchingFormatter() from mwichmann. Good callWilliam Deegan2022-10-231-2/+3
| |
* | [ci skip] Fix sider/PEP8 complaintsWilliam Deegan2022-10-232-25/+42
| |
* | Migrate Taskmaster tracing to use python loggingWilliam Deegan2022-10-222-52/+115
|/
* move Taskmaster and Jobs to SCons.TaskmasterWilliam Deegan2022-10-124-0/+3329