Age | Commit message (Collapse) | Author |
|
Use the new data_smart dictionary
lib/bb/data_smart.py:
The old COW Implementation, made persistent and pass
the test suite.
I commit it because the persistent mode in data_dict.py seems
broken and I don't want to leave you with a broken bitbake.
Todo:
-do a deepcopy on the parent. When we pickle we use sharing
anyway and it is pretty obvious we will pickle as we're the
persistent implementation.
|
|
-Remove default arguments from the data methods. They
cast errors.
(we need to update the test case though)
lib/bb/parse/ConfHandler.py:
-Use the right dictionary
|
|
-Provide a special 'collection/dict' for the collected
bb-files. If we use a persistent storage (CACHE) we will
not hold any data instance in memory but load it from disk
on demand.
This reduces bitbakes memory usage to roughly 40MB. The initial
parsing currently takes roughly thirty seconds more.
lib/bb/make.py:
-Use the new data implementation for pkgdata.
-Do not access pkgdata[f] if we've the data already
in our hands
|
|
· -Add a method to get the modify time of named bb.data instance
· -Add a method to create a named bb.data instance. These instances
· inherit the global configuration.
lib/bb/data_dict.py:
· -Add persistents to the data_dict implementation, on the commit
method we will now pickle the internal dict
lib/bb/make.py:
-Use the new persistent/named bb.data methods.
|
|
Do not assume we hold a reference to the variable
we got with a bb.data.getVar*. Always set changes
back to the variable.
|
|
* Remove default params from the fetcher methods to avoid problems
with scoping. The meaning of 'd' is quite overloaded and we try
to undo it one by one. This change is a bit more invasive than
I had hoped for but it is needed.
-- Holger Hans Peter Freyther <freyther@handhelds.org>
|
|
-Move a createCopy method into data.py
-Make code creating deepcopies of the data instance
use this new createCopy
|
|
-bb.data is now a delegate to hookable Data implementation.
-bb.data.init() is the 'factory' method to create a instance
of a concrete implementation.
-Kill assumptions that bb.data.init() returns a {} (python dict)
-Add the old Dictionary Based Implementation as data_dict.py
|
|
to be more consistent with the other events.
|
|
mangling OVERRIDES in bb.data.exec_task().
|
|
|
|
patch courtesy Paul Eggleton
|
|
|
|
that builds of packages that attempt to read the kernel-version file (like kernel modules) fail as they should.
|
|
|
|
|
|
rather than load_oefile, since we need it done for 'include'd files as well as those directly loaded by the 'bitbake' commandline tool.
|
|
|
|
argument.
|
|
|