<feed xmlns='http://www.w3.org/2005/Atom'>
<title>Kconfiglib.git, branch v4.0.0</title>
<subtitle>Fork of https://github.com/zephyrproject-rtos/Kconfiglib.git</subtitle>
<id>https://git.mcdonnell.dev/Kconfiglib.git/atom?h=v4.0.0</id>
<link rel='self' href='https://git.mcdonnell.dev/Kconfiglib.git/atom?h=v4.0.0'/>
<link rel='alternate' type='text/html' href='https://git.mcdonnell.dev/Kconfiglib.git/'/>
<updated>2018-03-11T07:11:56Z</updated>
<entry>
<title>Make 4.0.0 release</title>
<updated>2018-03-11T07:11:56Z</updated>
<author>
<name>Ulf Magnusson</name>
<email>ulfalizer@gmail.com</email>
</author>
<published>2018-03-11T07:11:56Z</published>
<link rel='alternate' type='text/html' href='https://git.mcdonnell.dev/Kconfiglib.git/commit/?id=44f782723b71e4eb4661e61cc6f887aefe00898e'/>
<id>urn:sha1:44f782723b71e4eb4661e61cc6f887aefe00898e</id>
<content type='text'>
Includes a small API behavior change, hence the major version bump:

 - db63301 ("Return "" for unwritten symbols in Symbol.config_string")

New features:

 - Support for incremental builds using the same scheme as the
   include/config/ directory in the C tools. See the new
   Kconfig.sync_deps() function and commit 378dedc ("Add support for
   incremental builds").

 - Minimal configuration (defconfig) writing, generating identical files
   to the C implementation. See commit 652f11b ("Add minimal
   configuration file generation support").

   The C 'make savedefconfig' implementation is currently broken in
   obscure cases involving tristate choices (due to broken invalidation
   code), so the tests are disabled for now. I have a patch for the C
   implementation that I will submit.

Fixes:

 - user_value wasn't set for choice symbols set to y via load_config()
   with replace=True. Fixed by commit 0bd841d ("Properly remember y user
   values for choice symbols"). Didn't affect correctness, only the API.

Other changes:

 - 778ec47 ("Only write '# CONFIG_FOO is not set' for visible symbols")
   mirrors a change I made to the C tools.

 - bbe3ae9 ("Do not write the defconfig_list symbol to .config") mirrors
   another change made to the C tools.

 - Misc. refactoring and cleanup.
</content>
</entry>
<entry>
<title>Add minimal configuration file generation support</title>
<updated>2018-03-11T06:29:19Z</updated>
<author>
<name>Ulf Magnusson</name>
<email>ulfalizer@gmail.com</email>
</author>
<published>2018-03-05T19:10:01Z</published>
<link rel='alternate' type='text/html' href='https://git.mcdonnell.dev/Kconfiglib.git/commit/?id=652f11b60f7b738440fe0e919d4de0c188e80395'/>
<id>urn:sha1:652f11b60f7b738440fe0e919d4de0c188e80395</id>
<content type='text'>
Works like 'make savedefconfig' in the C tools. Call it
write_min_config() rather than write_defconfig() to be a bit more
explicit.

Add a test similar to test_defconfig that compares Kconfiglib minimal
configuration output against the C implementation, for all defconfig
files.

Disable the tests for now. The C tools have a bug that causes an
incorrect configuration to be generated for tristate choices in some
cases. They will be re-enabled once those are fixed.
</content>
</entry>
<entry>
<title>Properly remember y user values for choice symbols</title>
<updated>2018-03-11T02:01:50Z</updated>
<author>
<name>Ulf Magnusson</name>
<email>ulfalizer@gmail.com</email>
</author>
<published>2018-03-11T01:45:14Z</published>
<link rel='alternate' type='text/html' href='https://git.mcdonnell.dev/Kconfiglib.git/commit/?id=0bd841def7f3911771afa2346acae4938033ace9'/>
<id>urn:sha1:0bd841def7f3911771afa2346acae4938033ace9</id>
<content type='text'>
Commit e8b4ecb ("Don't special-case user_value for choice symbols set to
y") was meant to make user_value reflect an y value assigned to a choice
symbol, but didn't get it right for load_config() with replace=True: The
user value was set at first, but was then unset again due to a misplaced
'_was_set = True' assignment.

This commit makes y choice symbol user values always be remembered. The
correctness of generated files was not affected, since the user
selection of a choice is actually remembered as Choice.user_selection.
The previous commit just turned into a no-op for load_config() with
replace=True.
</content>
</entry>
<entry>
<title>testsuite.py: Break out a defconfig_files() helper</title>
<updated>2018-03-09T23:01:09Z</updated>
<author>
<name>Ulf Magnusson</name>
<email>ulfalizer@gmail.com</email>
</author>
<published>2018-03-09T22:58:58Z</published>
<link rel='alternate' type='text/html' href='https://git.mcdonnell.dev/Kconfiglib.git/commit/?id=02d1131cf6ee76ce89e63121aa90512e153e15bf'/>
<id>urn:sha1:02d1131cf6ee76ce89e63121aa90512e153e15bf</id>
<content type='text'>
defconfig_files() yields all the defconfig files for a particular arch/
subdirectory. This will allow reuse when savedefconfig is tested.

Also simplify the code a bit.
</content>
</entry>
<entry>
<title>testsuite.py: Don't count defconfig files</title>
<updated>2018-03-09T22:17:15Z</updated>
<author>
<name>Ulf Magnusson</name>
<email>ulfalizer@gmail.com</email>
</author>
<published>2018-03-09T22:17:15Z</published>
<link rel='alternate' type='text/html' href='https://git.mcdonnell.dev/Kconfiglib.git/commit/?id=63306858cf439b6de608b9129e602cf7ea6ddcf0'/>
<id>urn:sha1:63306858cf439b6de608b9129e602cf7ea6ddcf0</id>
<content type='text'>
Not that important of a stat, plus there might be more tests that
process defconfig files soon, making it kinda meaningless.
</content>
</entry>
<entry>
<title>Simplify test suite logging</title>
<updated>2018-03-06T03:15:44Z</updated>
<author>
<name>Ulf Magnusson</name>
<email>ulfalizer@gmail.com</email>
</author>
<published>2018-03-06T03:14:22Z</published>
<link rel='alternate' type='text/html' href='https://git.mcdonnell.dev/Kconfiglib.git/commit/?id=77d1cc9302f2b18cec6763967e53ad8cbcce36c5'/>
<id>urn:sha1:77d1cc9302f2b18cec6763967e53ad8cbcce36c5</id>
<content type='text'>
No great need to log timestamps anymore.
</content>
</entry>
<entry>
<title>Avoid shadowing test_defconfig() 'srcarch' parameter</title>
<updated>2018-03-06T00:41:17Z</updated>
<author>
<name>Ulf Magnusson</name>
<email>ulfalizer@gmail.com</email>
</author>
<published>2018-03-06T00:41:17Z</published>
<link rel='alternate' type='text/html' href='https://git.mcdonnell.dev/Kconfiglib.git/commit/?id=00d4f53298ccd1a6e0b5f8b9f60df82bc746f29f'/>
<id>urn:sha1:00d4f53298ccd1a6e0b5f8b9f60df82bc746f29f</id>
<content type='text'>
The 'for' overrode 'srcarch', which is currently harmless, but ugly.
</content>
</entry>
<entry>
<title>testsuite.py: Use 'srcarch' instead of '_arch' in test_defconfig()</title>
<updated>2018-03-06T00:23:29Z</updated>
<author>
<name>Ulf Magnusson</name>
<email>ulfalizer@gmail.com</email>
</author>
<published>2018-03-06T00:22:20Z</published>
<link rel='alternate' type='text/html' href='https://git.mcdonnell.dev/Kconfiglib.git/commit/?id=6817b67efeea40288f1ad840141a1c41e03ded9a'/>
<id>urn:sha1:6817b67efeea40288f1ad840141a1c41e03ded9a</id>
<content type='text'>
Makes sense as SRCARCH holds the arch/ subdirectory and _arch might be
confused for ARCH.
</content>
</entry>
<entry>
<title>testsuite.py: Refactor run_compatibility_tests()</title>
<updated>2018-03-05T23:25:56Z</updated>
<author>
<name>Ulf Magnusson</name>
<email>ulfalizer@gmail.com</email>
</author>
<published>2018-03-05T23:24:32Z</published>
<link rel='alternate' type='text/html' href='https://git.mcdonnell.dev/Kconfiglib.git/commit/?id=4070b29473d74ae586f39b984d211ac11a3a164b'/>
<id>urn:sha1:4070b29473d74ae586f39b984d211ac11a3a164b</id>
<content type='text'>
Get rid of the compare_configs flag and just do the comparison from the
test functions themselves with a helper.

Also get rid of the test_load() test. That's indirectly tested through
the other tests, and test_alldefconfig() runs first and is speedy.
</content>
</entry>
<entry>
<title>Use comments instead of docstrings for internal functions</title>
<updated>2018-03-05T22:44:48Z</updated>
<author>
<name>Ulf Magnusson</name>
<email>ulfalizer@gmail.com</email>
</author>
<published>2018-03-05T21:56:53Z</published>
<link rel='alternate' type='text/html' href='https://git.mcdonnell.dev/Kconfiglib.git/commit/?id=b499d06a8513ba599ca72d4d7bb6ae7fb6f1a9f9'/>
<id>urn:sha1:b499d06a8513ba599ca72d4d7bb6ae7fb6f1a9f9</id>
<content type='text'>
The original idea was that it might be handy to look up docstrings for
internal functions from the Python prompt (or an IDE) while figuring out
the code.

Not sure it's that useful in practice though. Comments shorten the code
a bit, and might make it clearer at a glance that the function is
internal.
</content>
</entry>
</feed>
