In config.setcpv(), use LazyItemsDict to implement lazy evaluation of
authorZac Medico <zmedico@gentoo.org>
Wed, 11 Mar 2009 06:05:37 +0000 (06:05 -0000)
committerZac Medico <zmedico@gentoo.org>
Wed, 11 Mar 2009 06:05:37 +0000 (06:05 -0000)
commitf0bc6277fc7608e8959130e6cde677550bceb7cb
tree4a80f894dce9c7534f8c0b0441502647b3c7877e
parentbb81413cd05d349c96f77b45871ce0361f7ad7e9
In config.setcpv(), use LazyItemsDict to implement lazy evaluation of
PORTAGE_IUSE. The PORTAGE_IUSE value is lazily evaluated since re.escape()
is slow and the value is only used when an ebuild phase needs to be executed
(it's used only to generate QA notices). Thanks to Marat Radchenko
<slonopotamusorama@gmail.com> for identifying this performance issue and
submitting the initial patch which used a memoization approach instead of
lazy evaluation. (trunk r12673)

svn path=/main/branches/2.1.6/; revision=12933
pym/portage/__init__.py
pym/portage/util.py