<feed xmlns='http://www.w3.org/2005/Atom'>
<title>Kconfiglib.git/testsuite.py, branch v13.1.0</title>
<subtitle>Fork of https://github.com/zephyrproject-rtos/Kconfiglib.git</subtitle>
<id>https://git.mcdonnell.dev/Kconfiglib.git/atom?h=v13.1.0</id>
<link rel='self' href='https://git.mcdonnell.dev/Kconfiglib.git/atom?h=v13.1.0'/>
<link rel='alternate' type='text/html' href='https://git.mcdonnell.dev/Kconfiglib.git/'/>
<updated>2019-10-10T09:02:20Z</updated>
<entry>
<title>testsuite: Remove unused imports</title>
<updated>2019-10-10T09:02:20Z</updated>
<author>
<name>Ulf Magnusson</name>
<email>ulfalizer@gmail.com</email>
</author>
<published>2019-10-10T09:01:54Z</published>
<link rel='alternate' type='text/html' href='https://git.mcdonnell.dev/Kconfiglib.git/commit/?id=2a6ade98bc73623d945fa7cef816dcfc60960883'/>
<id>urn:sha1:2a6ade98bc73623d945fa7cef816dcfc60960883</id>
<content type='text'>
Reported by pylint.
</content>
</entry>
<entry>
<title>Make preprocessor nested parens test slightly trickier</title>
<updated>2019-09-26T10:11:23Z</updated>
<author>
<name>Ulf Magnusson</name>
<email>ulfalizer@gmail.com</email>
</author>
<published>2019-09-26T10:11:23Z</published>
<link rel='alternate' type='text/html' href='https://git.mcdonnell.dev/Kconfiglib.git/commit/?id=4185b0b3193345f793ca7a5268fb67ab65e57655'/>
<id>urn:sha1:4185b0b3193345f793ca7a5268fb67ab65e57655</id>
<content type='text'>
Macros should still be expanded within nested parentheses. Test it.
</content>
</entry>
<entry>
<title>Fix handling of parentheses in macro argument values</title>
<updated>2019-09-26T09:52:22Z</updated>
<author>
<name>Ulf Magnusson</name>
<email>ulfalizer@gmail.com</email>
</author>
<published>2019-09-25T18:25:06Z</published>
<link rel='alternate' type='text/html' href='https://git.mcdonnell.dev/Kconfiglib.git/commit/?id=720ce88a839cc9966d4b5dfbcdbe868c33cb5965'/>
<id>urn:sha1:720ce88a839cc9966d4b5dfbcdbe868c33cb5965</id>
<content type='text'>
As an oversight, there was no check for nested parentheses in macro
arguments, making the preprocessor think the call ended after 'void)' in

    def_bool $(success,echo 'void foo(void) { asm inline (""); }' | $(CC) -x c - -c -o /dev/null)

This broke the latest linux-next kernels, starting with commit
eb111869301e1 ("compiler-types.h: add asm_inline definition").

I remember seeing this when going through the C code, but somehow forgot
to put it in. Fix it, and clean up _expand_macro() a bit at the same
time.

Fixes: #76
</content>
</entry>
<entry>
<title>Allow preprocessor user functions to access the parsing location</title>
<updated>2019-09-04T19:14:12Z</updated>
<author>
<name>Ulf Magnusson</name>
<email>ulfalizer@gmail.com</email>
</author>
<published>2019-09-04T18:44:24Z</published>
<link rel='alternate' type='text/html' href='https://git.mcdonnell.dev/Kconfiglib.git/commit/?id=26e1db651e18fd65fe7374b404a30e20f601969f'/>
<id>urn:sha1:26e1db651e18fd65fe7374b404a30e20f601969f</id>
<content type='text'>
Just requires making Kconfig.filename/linenr public.

'lineno' would be a more standard name, but be consistent with
MenuNode.linenr.
</content>
</entry>
<entry>
<title>'if' removal test code nit</title>
<updated>2019-07-10T22:29:37Z</updated>
<author>
<name>Ulf Magnusson</name>
<email>ulfalizer@gmail.com</email>
</author>
<published>2019-07-09T07:37:10Z</published>
<link rel='alternate' type='text/html' href='https://git.mcdonnell.dev/Kconfiglib.git/commit/?id=a8c72fa9f0d51f1692c189f9b88097f3babfc6da'/>
<id>urn:sha1:a8c72fa9f0d51f1692c189f9b88097f3babfc6da</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Catch EnvironmentError instead of OSError/IOError</title>
<updated>2019-07-01T22:03:02Z</updated>
<author>
<name>Ulf Magnusson</name>
<email>ulfalizer@gmail.com</email>
</author>
<published>2019-07-01T20:52:17Z</published>
<link rel='alternate' type='text/html' href='https://git.mcdonnell.dev/Kconfiglib.git/commit/?id=e5e2fe5a6f084fb98c2c9b4adec0383fec4a5256'/>
<id>urn:sha1:e5e2fe5a6f084fb98c2c9b4adec0383fec4a5256</id>
<content type='text'>
menuconfig.py tended to crash on I/O errors on Python 2, due to
forgetting to update some 'except OSError's. Catch EnvironmentError
instead.

EnvironmentError is a common base class of IOError and OSError on Python
2, and an alias for OSError on Python 3. Use it elsewhere too, as it
might help catch obscure I/O errors on Python 2.
</content>
</entry>
<entry>
<title>Add {Symbol,Choice}.orig_*, corresponding to the MenuNode fields</title>
<updated>2019-06-24T06:57:38Z</updated>
<author>
<name>Ulf Magnusson</name>
<email>ulfalizer@gmail.com</email>
</author>
<published>2019-06-24T06:18:06Z</published>
<link rel='alternate' type='text/html' href='https://git.mcdonnell.dev/Kconfiglib.git/commit/?id=0ca8e78ebaed9ded586162753e8224f8ce7ef4a2'/>
<id>urn:sha1:0ca8e78ebaed9ded586162753e8224f8ce7ef4a2</id>
<content type='text'>
Getting defaults, select, implies, and ranges without dependencies
propagated to conditions can be useful for symbols and choices as well,
e.g. when generating standalone documentation for properties.
</content>
</entry>
<entry>
<title>Shorten __repr__() functions a bit</title>
<updated>2019-06-23T00:52:26Z</updated>
<author>
<name>Ulf Magnusson</name>
<email>ulfalizer@gmail.com</email>
</author>
<published>2019-06-23T00:29:14Z</published>
<link rel='alternate' type='text/html' href='https://git.mcdonnell.dev/Kconfiglib.git/commit/?id=7b97da6821a45ce34e731df68980dea0983cf18c'/>
<id>urn:sha1:7b97da6821a45ce34e731df68980dea0983cf18c</id>
<content type='text'>
Do 'add = fields.append'. Pointless as an optimization, but shaves some
lines, and obvious in context.

Also add test coverage for __repr__() for string symbols with user
values.
</content>
</entry>
<entry>
<title>Improve warning control API (with backwards compatibility)</title>
<updated>2019-06-03T04:50:06Z</updated>
<author>
<name>Ulf Magnusson</name>
<email>ulfalizer@gmail.com</email>
</author>
<published>2019-06-02T23:55:50Z</published>
<link rel='alternate' type='text/html' href='https://git.mcdonnell.dev/Kconfiglib.git/commit/?id=bf36f5de0f49d56975b1a844e25484ec385dc971'/>
<id>urn:sha1:bf36f5de0f49d56975b1a844e25484ec385dc971</id>
<content type='text'>
A wart of the warning control API (enable/disable_*_warnings()) is that
the current warning settings can't be queried. Querying warning settings
is useful in functions that want to temporarily enable/disable some
warning and then put things back to how they were.
kconfiglib.load_allconfig() ran into this, for example.

Make the internal warning control variables public (improve the naming
at the same time), and encourage just setting them directly. Keep the
old API for backwards compatibility.

Also remove _warn_redun_assign() and _warn_override(). They're trivial
and were called in a single place.
</content>
</entry>
<entry>
<title>Fix obscure crash with rsource and $srctree pointing to a symlink</title>
<updated>2019-06-01T04:21:54Z</updated>
<author>
<name>Ulf Magnusson</name>
<email>ulfalizer@gmail.com</email>
</author>
<published>2019-06-01T02:15:04Z</published>
<link rel='alternate' type='text/html' href='https://git.mcdonnell.dev/Kconfiglib.git/commit/?id=92791a3fe15bb2d5c14039fbd531be73255f0c6d'/>
<id>urn:sha1:92791a3fe15bb2d5c14039fbd531be73255f0c6d</id>
<content type='text'>
Sourcing a file with an absolute path and using rsource in it triggered
a relpath() between the absolute path and $srctree. Since e.g.
symlink/../bar/ = bar/ is not guaranteed for symlinks, this could lead
to the rsource'd file not being found if $srctree pointed to a symlink.

Switch to a simpler, more textual method for stripping $srctree from
glob results, which should be robust against symlink shenanigans. This
also makes the code a bit easier to follow.

Discovered by Marc Herbert.

Piggyback some minor cleanup.
</content>
</entry>
</feed>
