<feed xmlns='http://www.w3.org/2005/Atom'>
<title>Kconfiglib.git, branch v10.27.0</title>
<subtitle>Fork of https://github.com/zephyrproject-rtos/Kconfiglib.git</subtitle>
<id>https://git.mcdonnell.dev/Kconfiglib.git/atom?h=v10.27.0</id>
<link rel='self' href='https://git.mcdonnell.dev/Kconfiglib.git/atom?h=v10.27.0'/>
<link rel='alternate' type='text/html' href='https://git.mcdonnell.dev/Kconfiglib.git/'/>
<updated>2018-11-26T04:45:25Z</updated>
<entry>
<title>Make 10.27.0 release</title>
<updated>2018-11-26T04:45:25Z</updated>
<author>
<name>Ulf Magnusson</name>
<email>ulfalizer@gmail.com</email>
</author>
<published>2018-11-26T04:04:09Z</published>
<link rel='alternate' type='text/html' href='https://git.mcdonnell.dev/Kconfiglib.git/commit/?id=e47d7eff1012e7fe2a1dd75f3367a2eaa1b61539'/>
<id>urn:sha1:e47d7eff1012e7fe2a1dd75f3367a2eaa1b61539</id>
<content type='text'>
Adds some small performance optimizations:

 - Commit 120f551 ("Speed up more token membership tests")

 - Commit bb7044c ("Reorder some tuples to put y first")
</content>
</entry>
<entry>
<title>Recommend Python 3</title>
<updated>2018-11-26T04:44:52Z</updated>
<author>
<name>Ulf Magnusson</name>
<email>ulfalizer@gmail.com</email>
</author>
<published>2018-11-26T03:44:48Z</published>
<link rel='alternate' type='text/html' href='https://git.mcdonnell.dev/Kconfiglib.git/commit/?id=e11dc00e9f97a105bf5dfd3cdaebbc7186ab9156'/>
<id>urn:sha1:e11dc00e9f97a105bf5dfd3cdaebbc7186ab9156</id>
<content type='text'>
Python 3.7 has finally caught up with Python 2.7 performance-wise.
</content>
</entry>
<entry>
<title>Reorder some tuples to put y first</title>
<updated>2018-11-26T04:44:52Z</updated>
<author>
<name>Ulf Magnusson</name>
<email>ulfalizer@gmail.com</email>
</author>
<published>2018-11-26T02:43:31Z</published>
<link rel='alternate' type='text/html' href='https://git.mcdonnell.dev/Kconfiglib.git/commit/?id=bb7044cb39af5659c082bd74b45734dca64824c5'/>
<id>urn:sha1:bb7044cb39af5659c082bd74b45734dca64824c5</id>
<content type='text'>
CONFIG_FOO=y and 'default y' and the like are more common than the n
versions, so test for them first.

Turning the tuples into sets would be even better on Python 3, as it
optimizes sets with constant keys into a LOAD_CONST, but it has a
performance penalty on Python 2.
</content>
</entry>
<entry>
<title>Speed up more token membership tests</title>
<updated>2018-11-26T04:42:13Z</updated>
<author>
<name>Ulf Magnusson</name>
<email>ulfalizer@gmail.com</email>
</author>
<published>2018-11-25T15:07:13Z</published>
<link rel='alternate' type='text/html' href='https://git.mcdonnell.dev/Kconfiglib.git/commit/?id=120f551b8bf9a6c35a9a97d5c7551bff66dc78bb'/>
<id>urn:sha1:120f551b8bf9a6c35a9a97d5c7551bff66dc78bb</id>
<content type='text'>
Similar change to commit 4b23936 ("Speed up some token tests"), just for
more tests.

This especially helps for the "not a property line" case in
_parse_properties(), which checks against all the cases.

Saves 2-3% of parsing time together with the earlier change.
</content>
</entry>
<entry>
<title>Whitespace nit</title>
<updated>2018-11-25T01:52:19Z</updated>
<author>
<name>Ulf Magnusson</name>
<email>ulfalizer@gmail.com</email>
</author>
<published>2018-11-25T01:52:19Z</published>
<link rel='alternate' type='text/html' href='https://git.mcdonnell.dev/Kconfiglib.git/commit/?id=010425856a3e56ece63aea7e7824e63e24a33d96'/>
<id>urn:sha1:010425856a3e56ece63aea7e7824e63e24a33d96</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Speed up some token tests</title>
<updated>2018-11-25T01:39:21Z</updated>
<author>
<name>Ulf Magnusson</name>
<email>ulfalizer@gmail.com</email>
</author>
<published>2018-11-25T00:25:16Z</published>
<link rel='alternate' type='text/html' href='https://git.mcdonnell.dev/Kconfiglib.git/commit/?id=4b2393627c5c75807d559ef706f0d966ce131f60'/>
<id>urn:sha1:4b2393627c5c75807d559ef706f0d966ce131f60</id>
<content type='text'>
Turn some of the hotter membership test tuples into global sets, like
was already done for _TYPE_TOKENS. That saves some global lookups for
the tuple members and avoids repeatedly recreating tuples. It's 30%-50%
faster in a microbenchmark, even for two-element tuples (with global
lookups for the members).
</content>
</entry>
<entry>
<title>Move _TOKEN_TO_TYPE conversion into _set_type()</title>
<updated>2018-11-25T01:00:09Z</updated>
<author>
<name>Ulf Magnusson</name>
<email>ulfalizer@gmail.com</email>
</author>
<published>2018-11-24T23:42:40Z</published>
<link rel='alternate' type='text/html' href='https://git.mcdonnell.dev/Kconfiglib.git/commit/?id=e02c01e0628507d46ab7e25e4fa1b84183a86712'/>
<id>urn:sha1:e02c01e0628507d46ab7e25e4fa1b84183a86712</id>
<content type='text'>
Factors out some code.

Also use a quick 'is not UNKNOWN' test first inside it, which will
usually fail, since single-def symbols are more common. That avoids
building a tuple too.
</content>
</entry>
<entry>
<title>Make 10.26.0 release</title>
<updated>2018-11-24T04:50:24Z</updated>
<author>
<name>Ulf Magnusson</name>
<email>ulfalizer@gmail.com</email>
</author>
<published>2018-11-24T04:50:24Z</published>
<link rel='alternate' type='text/html' href='https://git.mcdonnell.dev/Kconfiglib.git/commit/?id=29d4489c80f7d63cb34208fc4bd526f56fadd299'/>
<id>urn:sha1:29d4489c80f7d63cb34208fc4bd526f56fadd299</id>
<content type='text'>
Adds commit 67ce4eb ("Use constants when _tokens_i is known"), which
adds more optimizations made possible by switching to more manual token
handling.
</content>
</entry>
<entry>
<title>Use constants when _tokens_i is known</title>
<updated>2018-11-24T04:48:57Z</updated>
<author>
<name>Ulf Magnusson</name>
<email>ulfalizer@gmail.com</email>
</author>
<published>2018-11-24T03:50:30Z</published>
<link rel='alternate' type='text/html' href='https://git.mcdonnell.dev/Kconfiglib.git/commit/?id=67ce4ebb0f5c74e9bb414fecb4bc08af73dff7b2'/>
<id>urn:sha1:67ce4ebb0f5c74e9bb414fecb4bc08af73dff7b2</id>
<content type='text'>
Same deal as for the initial token, except we sometimes know that we're
dealing with the second token as well.

Inline _expect_nonconst_sym_and_eol() and _expect_str(), which are
single-use. That allows more specific error messages to be used as well.

Also tweak an outdated comment in _tokenize() re. None-termination.
Token fetching is more manual now.
</content>
</entry>
<entry>
<title>Make 10.25.0 release</title>
<updated>2018-11-24T01:50:12Z</updated>
<author>
<name>Ulf Magnusson</name>
<email>ulfalizer@gmail.com</email>
</author>
<published>2018-11-24T01:15:05Z</published>
<link rel='alternate' type='text/html' href='https://git.mcdonnell.dev/Kconfiglib.git/commit/?id=15ccb5536908202da1a672089e155cfdfa6d4722'/>
<id>urn:sha1:15ccb5536908202da1a672089e155cfdfa6d4722</id>
<content type='text'>
Adds a small missed optimization opportunity, in commit 74ce9d3
("Optimize fetching of initial token on line").
</content>
</entry>
</feed>
