<feed xmlns='http://www.w3.org/2005/Atom'>
<title>Kconfiglib.git/testsuite.py, branch v12.1.0</title>
<subtitle>Fork of https://github.com/zephyrproject-rtos/Kconfiglib.git</subtitle>
<id>https://git.mcdonnell.dev/Kconfiglib.git/atom?h=v12.1.0</id>
<link rel='self' href='https://git.mcdonnell.dev/Kconfiglib.git/atom?h=v12.1.0'/>
<link rel='alternate' type='text/html' href='https://git.mcdonnell.dev/Kconfiglib.git/'/>
<updated>2019-06-03T04:50:06Z</updated>
<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>
<entry>
<title>Convert docstrings to comments in testsuite.py</title>
<updated>2019-05-29T00:47:44Z</updated>
<author>
<name>Ulf Magnusson</name>
<email>ulfalizer@gmail.com</email>
</author>
<published>2019-05-29T00:45:35Z</published>
<link rel='alternate' type='text/html' href='https://git.mcdonnell.dev/Kconfiglib.git/commit/?id=15de4c0c9924cfeef1553fde21cb9b9e288f6238'/>
<id>urn:sha1:15de4c0c9924cfeef1553fde21cb9b9e288f6238</id>
<content type='text'>
Like was done a long time ago in kconfiglib.py. These functions are not
part of a standalone API.

Keep the docstrings for the compatibility tests, because those get
printed as the tests run.
</content>
</entry>
<entry>
<title>Use the '&lt;type&gt; "prompt"' shorthand in __str__()</title>
<updated>2019-05-25T16:04:15Z</updated>
<author>
<name>Ulf Magnusson</name>
<email>ulfalizer@gmail.com</email>
</author>
<published>2019-05-25T15:04:09Z</published>
<link rel='alternate' type='text/html' href='https://git.mcdonnell.dev/Kconfiglib.git/commit/?id=9f57bf933508901f07d22c75fca42e62145f5512'/>
<id>urn:sha1:9f57bf933508901f07d22c75fca42e62145f5512</id>
<content type='text'>
Pro: Looks cleaner and matches how definitions are usually written.

Con: Makes it harder to discover that 'bool "foo"' is just shorthand for
'bool' + 'prompt "foo"' (though it's documented).

The pros probably win.
</content>
</entry>
<entry>
<title>Display n/m/y without quotes</title>
<updated>2019-05-25T14:50:07Z</updated>
<author>
<name>Ulf Magnusson</name>
<email>ulfalizer@gmail.com</email>
</author>
<published>2019-05-25T14:49:35Z</published>
<link rel='alternate' type='text/html' href='https://git.mcdonnell.dev/Kconfiglib.git/commit/?id=e1da7aa4d041d25e4fd5fd1f603f4c28d32b1392'/>
<id>urn:sha1:e1da7aa4d041d25e4fd5fd1f603f4c28d32b1392</id>
<content type='text'>
These are constant symbols, which is why the quotes showed up.
Special-case them to remove the quotes, to match what people expect.

Internally, n/m/y without quotes is taken as a shorthand for
"n"/"m"/"y".
</content>
</entry>
<entry>
<title>Strip direct deps. from property conditions in Symbol/Choice/MenuNode.__str__()</title>
<updated>2019-05-25T14:18:29Z</updated>
<author>
<name>Ulf Magnusson</name>
<email>ulfalizer@gmail.com</email>
</author>
<published>2019-05-25T11:52:09Z</published>
<link rel='alternate' type='text/html' href='https://git.mcdonnell.dev/Kconfiglib.git/commit/?id=bb33eed5cc6bdce2b65aa570ecd9a400bcd9c180'/>
<id>urn:sha1:bb33eed5cc6bdce2b65aa570ecd9a400bcd9c180</id>
<content type='text'>
Commit e81a77b ("Consistently put direct deps. last when propagating")
makes the position of the direct deps. in property conditions
predictable after dependency propagation, making it easy to strip them
as needed.

Use this to implement MenuNode.orig_{prompt,defaults,selects,implies,ranges},
which work like the non-orig_* versions but omit the direct deps. Use
those in turn to omit the direct deps in Symbol/Choice.__str__().

The direct deps. (with propagated parent deps.) can still be seen after
'depends on ...', so there is no loss of information.

This unclutters Kconfig definitions shown in menuconfig/guiconfig and in
any generated documentation. The old output also had duplicated
dependencies, though it doesn't matter for evaluation.

Before:

  config A
  	bool
  	prompt "A" if DEP
  	default y if FOO &amp;&amp; DEP
  	depends on DEP

After:

  config A
  	bool
  	prompt "A"
  	default y if FOO
  	depends on DEP
</content>
</entry>
<entry>
<title>Consistently put direct deps. last when propagating</title>
<updated>2019-05-24T11:08:12Z</updated>
<author>
<name>Ulf Magnusson</name>
<email>ulfalizer@gmail.com</email>
</author>
<published>2019-05-24T10:14:31Z</published>
<link rel='alternate' type='text/html' href='https://git.mcdonnell.dev/Kconfiglib.git/commit/?id=e81a77bdb0687b62f91d7dc4d5b84b443808c0a7'/>
<id>urn:sha1:e81a77bdb0687b62f91d7dc4d5b84b443808c0a7</id>
<content type='text'>
Preparation for some later additions. Previously, the 'visible if' deps
appeared to the right of the 'depends on' deps. Now, the direct deps
always appear last.

With this change, the prompt tuple is only updated once for any given
menu node too, which should be a tiny bit faster.
</content>
</entry>
<entry>
<title>Touch up style a bit in test suite</title>
<updated>2019-05-24T10:21:54Z</updated>
<author>
<name>Ulf Magnusson</name>
<email>ulfalizer@gmail.com</email>
</author>
<published>2019-05-24T10:20:18Z</published>
<link rel='alternate' type='text/html' href='https://git.mcdonnell.dev/Kconfiglib.git/commit/?id=e806f26a075ba52eca01567c7be7f0b4eba91df5'/>
<id>urn:sha1:e806f26a075ba52eca01567c7be7f0b4eba91df5</id>
<content type='text'>
Ye olde code.
</content>
</entry>
<entry>
<title>Give more helpful error messages when files are missing</title>
<updated>2019-03-06T02:51:04Z</updated>
<author>
<name>Ulf Magnusson</name>
<email>ulfalizer@gmail.com</email>
</author>
<published>2019-03-06T02:21:08Z</published>
<link rel='alternate' type='text/html' href='https://git.mcdonnell.dev/Kconfiglib.git/commit/?id=132e579cb8e4bdd49eb057ea81f5f8528ff80cf9'/>
<id>urn:sha1:132e579cb8e4bdd49eb057ea81f5f8528ff80cf9</id>
<content type='text'>
The current error message talks a lot about $srctree, but $srctree is
seldom the culprit in practice. More common is
'source "$(SOME_ENV_VAR)/foo"`, where SOME_ENV_VAR hasn't been set.

Include the complete 'source ...' line for missing Kconfig files, and
mention unset environment variables as a hint. Only mention $srctree
briefly.

Also shorten the message when a .config can't be a found a bit. This
message would usually only be seen when working directly with the
library.
</content>
</entry>
<entry>
<title>Update copyright years for 2019</title>
<updated>2019-01-15T22:12:10Z</updated>
<author>
<name>Ulf Magnusson</name>
<email>ulfalizer@gmail.com</email>
</author>
<published>2019-01-15T22:11:34Z</published>
<link rel='alternate' type='text/html' href='https://git.mcdonnell.dev/Kconfiglib.git/commit/?id=770abd61a5c90837d9336afd972090eebbc26b0b'/>
<id>urn:sha1:770abd61a5c90837d9336afd972090eebbc26b0b</id>
<content type='text'>
</content>
</entry>
</feed>
