| Commit message (Collapse) | Author | Age | Files | Lines |
|\
| |
| | |
Tweak pseudo-builder in user guide
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Entity reference &Builder;s was turned to plain text in a few
places. Restored, this time using existing pluralized entity
name &Builders;.
Also twiddled a little wording in same User Guide chapter.
Signed-off-by: Mats Wichmann <mats@linux.com>
|
| |
| |
| |
| |
| |
| |
| | |
Put back the previous wording, now with glossary entry that also defines
the plural form Scanners (there is still no actual glossary)
Signed-off-by: Mats Wichmann <mats@linux.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
For add-method chapter, plus the following scanners chapter,
normalize usage a little: the first mention in any given section
uses the marked-up form &Builder; and &Scanner;, which contain
index references, subsequent ones do not. Only references to
Scanner as a concept are capitalized, things like "scanner function"
were left alone.
Signed-off-by: Mats Wichmann <mats@linux.com>
|
| |
| |
| |
| |
| |
| |
| |
| | |
The add-method chapter now has entity references to &Builder; back.
The markup for &Builder; is changed from <classname> to <indexterm>,
as used it's a concept, and there is no actual class named Builder anyway.
Signed-off-by: Mats Wichmann <mats@linux.com>
|
| |
| |
| |
| |
| |
| | |
Minor fiddling - example format, headers, wordings tweaks
Signed-off-by: Mats Wichmann <mats@linux.com>
|
|\ \
| | |
| | | |
Doc fiddling - Alias, Action, Decider [skip appveyor]
|
|/ /
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* Signature of Alias() now matches implementation to avoid problem if
kwargs used
* Case of Alias with no targets is mentioned in text (was already shown
in example)
* Now mention that Action([item]) does not return a ListAction - previously
implied that if arg was a list, a ListAction was *always* returned
* Mention default Decider and sort the names of available decider functions,
and add version marking.
* Minor fiddling with Alias.py docstrings.
Signed-off-by: Mats Wichmann <mats@linux.com>
|
|\ \
| | |
| | | |
Use pathlib in runtest
|
| | |
| | |
| | |
| | | |
Signed-off-by: Mats Wichmann <mats@linux.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Make sure test lists with "foreign" separator still cause the
correct discovery/usage.
Signed-off-by: Mats Wichmann <mats@linux.com>
|
|/ /
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
In the past, there have been some mismatches between how tests are
specified and how they are found. testlist files, excludelist files
and command-line specifications should be agnostic to operating system
conventions. For example, typing "runtest.py foo/bar" on windows
will produce paths like foo/bar\test.py, which is hard to match and
painful to read, it should obviously match discovered foo\bar\test.py.
Test information should be output using the native path separator for
consistency.
Using pathlib lets these be normalized - stored in a common format and
output in the expected format.
Adding this normalization of course broke some tests, which either
intentionally or through omission expected some portion of a path to
be UNIX-style. Specifically these five:
test\runtest\baseline\fail.py
test\runtest\baseline\no_result.py
test\runtest\simple\fail.py
test\runtest\simple\no_result.py
test\runtest\simple\pass.py
test\runtest\testargv.py
This was fixed and a general cleanup/reformat performed on the
runtest tests.
Signed-off-by: Mats Wichmann <mats@linux.com>
|
|\ \
| | |
| | | |
Fix Configure tests on win32/msys2
|
| |\ \
| |/ /
|/| | |
|
|\ \ \
| | | |
| | | | |
Minor cleanup ValidateOptions doc/code/test
|
| |\ \ \
| |/ / /
|/| | | |
|
|\ \ \ \
| | | | |
| | | | | |
Add some cheap return and parameter annotations
|
| |\ \ \ \
| |/ / / /
|/| | | | |
|
|\ \ \ \ \
| | | | | |
| | | | | | |
Change bas64 decodestring -> decodebytes
|
|/ / / / /
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
The former was an alias in Python 3, deprecated since 3.1.
Use the replacement.
Signed-off-by: Mats Wichmann <mats@linux.com>
|
|\ \ \ \ \
| | | | | |
| | | | | | |
Eliminate pylint warning on direct use of __call__
|
|/ / / / /
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
C2801: Unnecessarily calls dunder method __call__. Invoke instance directly.
These were all in the same file (docbook tool)
Signed-off-by: Mats Wichmann <mats@linux.com>
|
|/ / / /
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
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>
|
|\ \ \ \
| | | | |
| | | | | |
Drop coverage from CI for now
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
The test ran through the two mingw tests in the experimental ninja tests,
but hung up later - apparently on test/ninja\ninja_command_line.py.
Try putting the install step back in.
Signed-off-by: Mats Wichmann <mats@linux.com>
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Experiment: coverage build broke because "codecov" package removed
from PyPI on 12 Apr 2023. We'll need to re-craft a coverage build,
for now just don't set COVERAGE true for any appveyor build (leaving
the framework in place to copy to the new setup).
Experiment: the setup of mingw for the github action for experimental
features on Windows is failing for unknown reason ("error code 1"),
possibly sourceforge failure, possibly something else. But - we shouldn't
need to install mingw into an environment that is already provisioned
with mingw. Try that.
Apparently it's technically a syntax error for setup.cfg lines (that are
not continuation lines) to be indented - had one tool gripe about this,
which was made happy by dedenting one line. Including that in this PR,
just because...
Signed-off-by: Mats Wichmann <mats@linux.com>
|
|\ \ \ \ \
| |/ / / /
|/| | | | |
MSCommon: minor updates to README.rst [skip ci]
|
|/ / / /
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Changes:
* Fix typographical error (missing word).
* Add lines between literal block markers and indented text.
* Expand build tools lists in Visual Studio table.
|
|/ / /
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Some nearby things in Main.py as well:
- docstrings polished a bit, minor linting
- move the list of predefined SConstruct file names into a constant
defined at the top of the file, so it's a little less hidden,
in the unlikely case of future changes.
Manpage text and example revised a bit.
Signed-off-by: Mats Wichmann <mats@linux.com>
|
|\ \ \
| | | |
| | | | |
Fix dictifyCPPDEFINES handling of macro strings
|
| | | | |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
* Single-tuple CPPDEFINES was not handled.
* Add some more unit tests.
* Add some comments - that we need to keep in sync with processDefines,
but don't actually call it (the routine *could* be rewritten to process
the result of processDefines instead of the bare CPPDEFINES, but
currently doesn't do that).
Signed-off-by: Mats Wichmann <mats@linux.com>
|
|/ / /
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
CPPDEFINES can contain name=value strings, either a single one, or one or
more in a sequence type. After conversion (subsequent Append/Prepend to
CPPDEFINES), these will be stored as tuples, but it is possible to hit
cases where the type conversion has never been triggered. The C Scanner
has its own routine to process CPPDEFINES, and missed these cases,
which are now handled.
The testcases in issue 4193 which showed this problem are now included
in the C scanner unit tests, and the test for dictifyCPPDEFINES is
expanded to check these two forms.
Fixes #4193
Signed-off-by: Mats Wichmann <mats@linux.com>
|
| | | |
|
|\ \ \
| | | |
| | | | |
Release 4.5.2
|
| | | | |
|
| | | | |
|
| | | | |
|
|/ / / |
|
|\ \ \
| | | |
| | | | |
Update test framework tutorial
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
A few minor edits, then a section added at the end mith more hints
on things that are useful when writing both kinds of tests.
Added an initial .editorconfig - this was useful to keep a formatting
style for the test-framework.rst while tweaking it.
Signed-off-by: Mats Wichmann <mats@linux.com>
|
|\ \ \ \
| | | | |
| | | | | |
Fix problem when MergeFlags adds to existing CPPDEFINES
|
| | | | |
| | | | |
| | | | |
| | | | | |
Signed-off-by: Mats Wichmann <mats@linux.com>
|
|/ / / /
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
MergeFlags has a post-processing step if the *unique* flag evaluates True
which loops through and removes the duplicates. This step uses slicing
(for v in orig[::-1]), which fails if the item being cleaned is a deque -
which CPPDEFINES can now be. It would also cause the deque to be
replaced with a list. Detect this case and handle separately.
Note the same post-processing step assures each modified object will
be replaced - Override(parse_flags=xxx) silently counted on this so
it does not end up sharing variables with the overridden env. This
situation remains, and is accounted for by the patch.
Unit test and e2e tests are extended to check that MergeFlags can now
add correctly, and that Override leaves the variables independent,
not shared.
Fixes #4231
Signed-off-by: Mats Wichmann <mats@linux.com>
|
|\ \ \ \
| | | | |
| | | | | |
Remove redundant wheel dep from pyproject.toml
|
|/ / / /
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Remove the redundant `wheel` dependency, as it is added by the backend
automatically. Listing it explicitly in the documentation was
a historical mistake and has been fixed since, see:
https://github.com/pypa/setuptools/commit/f7d30a9529378cf69054b5176249e5457aaf640a
Signed-off-by: Michał Górny <mgorny@gentoo.org>
|
| | | | |
|
|\ \ \ \
| | | | |
| | | | | |
Rel 4.5.1
|
| | | | | |
|