Age | Commit message (Collapse) | Author |
|
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
At best it gave 1-2% improvement now, its 32 bit x86 only and isn't
supported after python 2.6.
PyPy is probably a better option now.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
a server API
Move the server implementation specific code into the server backend where
it belongs and replace this with a set of object method calls which
establish the server, detach it and then connect to it using appropriate
IPC.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
the server
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
|
|
|
|
These can occur in a particular ^C shutdown, so just break out of the event
queue empty loop if we encounter it.
Signed-off-by: Chris Larson <chris_larson@mentor.com>
|
|
Includes functionality to find out what changes between two different
signature data dumps.
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
Signed-off-by: Chris Larson <chris_larson@mentor.com>
|
|
This is a workaround to ensure the user always sees any queued up log
messages, even if the UI has shut down without showing them. This is far from
ideal. The correct fix is to alter the UIs to shut down more cleanly,
ensuring they display any remaining queued up events to the user before they
exit.
Signed-off-by: Chris Larson <chris_larson@mentor.com>
|
|
If we add the LogHandler object in the server.main, rather than earlier, any
log messages emitted during the construction of the server (and, therefore,
during the construction of the cooker) will not be seen. This includes the
error(s) which the cooker can emit when parsing the command line. With this,
we again see the error if you try to use -g without specifying a recipe to
operate against.
Signed-off-by: Chris Larson <chris_larson@mentor.com>
|
|
The various alternative UIs have been updated to once again be functional
with the latest bitbake internals. Each of the UIs still have much room for
functional improvement.
In particular, they have been updated to:
- interact with the new process based server
- handle the current set of events and notifications fired from the server
and its associated subsystems
Signed-off-by: Bob Foerster <robert@erafx.com>
|
|
Signed-off-by: Chris Larson <chris_larson@mentor.com>
|
|
SIGINT is now blocked within the server context, thus allowing the UI to fully
handle all user interaction. There is no longer a need to check for
KeyboardInterrupt Exceptions anywhere within the server context.
Signed-off-by: Bob Foerster <robert@erafx.com>
Signed-off-by: Chris Larson <chris_larson@mentor.com>
|
|
This uses the python multiprocessing module, both to spawn the server process
and for communication between the processes.
Signed-off-by: Bob Foerster <robert@erafx.com>
Signed-off-by: Chris Larson <chris_larson@mentor.com>
|
|
Signed-off-by: Chris Larson <chris_larson@mentor.com>
|
|
Signed-off-by: Chris Larson <chris_larson@mentor.com>
|
|
We now wrap the main() in a try/except, ensuring that both the main portion of
bin/bitbake and the UI raising an exception will be shown to the user. For
the server and workers, we can ensure in the server itself that exceptions are
handled correctly.
Signed-off-by: Chris Larson <chris_larson@mentor.com>
|
|
As these may run the UI in a blocking fashion and then return the exit code,
'init' was an inappropriate name, and 'main' is more appropriate.
Signed-off-by: Chris Larson <chris_larson@mentor.com>
|
|
Signed-off-by: Chris Larson <chris_larson@mentor.com>
|
|
Signed-off-by: Chris Larson <chris_larson@mentor.com>
|
|
Signed-off-by: Chris Larson <chris_larson@mentor.com>
|
|
Signed-off-by: Chris Larson <chris_larson@mentor.com>
|
|
We use a custom Logger subclass for our loggers
This logger provides:
- 'debug' method which accepts a debug level
- 'plain' method which bypasses log formatting
- 'verbose' method which is more detail than info, but less than debug
Signed-off-by: Chris Larson <chris_larson@mentor.com>
|
|
This kills firing of Msg* events in favor of just passing along LogRecord
objects. These objects hold more than just level and message, but can also
have exception information, so the UI can decide what to do with that.
As an aside, when using the 'none' server, this results in the log messages in
the server being displayed directly via the logging module and the UI's
handler, rather than going through the server's event queue. As a result of
doing it this way, we have to override the event handlers of the base logger
when spawning a worker process, to ensure they log via events rather than
directly.
Signed-off-by: Chris Larson <chris_larson@mentor.com>
|
|
Signed-off-by: Chris Larson <chris_larson@mentor.com>
|
|
Only shows warnings that come from bb, oe, or <string>
Signed-off-by: Chris Larson <chris_larson@mentor.com>
|
|
Signed-off-by: Chris Larson <chris_larson@mentor.com>
|
|
to make python3 happy
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
|
|
Previously, the cooker object was created before the environment was
cleaned, saving everything that was in the environment and dumping
into the run scripts.
The patch ensures that the cooker gets a cleaned environment when it's
created.
(From Poky rev: 6418d0492a60ed37d13e1060c2e8c09cd127c450)
Signed-off-by: Jeff Dike <jdike@linux.intel.com>
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
|
|
In order to move the environment cleaning, which wants to log a
message, before cooker creation, the logging facility initialization
needs to happen earlier. So, it is now in init_logger in utils.py and
called from bitbake before the creation of the data object.
It also seems more correct to initialize a global facility like this
from a more global context than the creation of an object, of which
there could theoretically be many.
(From Poky rev: f9d7e9e3be89ac9141fb0eb7c71eef5a9a82add9)
Signed-off-by: Jeff Dike <jdike@linux.intel.com>
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
|
|
|
|
avoid confusion
Signed-off-by: Chris Larson <chris_larson@mentor.com>
|
|
Signed-off-by: Chris Larson <chris_larson@mentor.com>
|
|
Signed-off-by: Chris Larson <chris_larson@mentor.com>
|
|
Signed-off-by: Chris Larson <chris_larson@mentor.com>
|
|
causes exceptions to not be handled after the finally statement
Signed-off-by: Cliff Brake <cbrake@bec-systems.com>
Signed-off-by: Chris Larson <clarson@kergoth.com>
|
|
harm than good
Signed-off-by: Chris Larson <chris_larson@mentor.com>
|
|
the ui isn't misinterpreted
Signed-off-by: Chris Larson <chris_larson@mentor.com>
|
|
Rather than printing the exception ourselves, might as well re-raise and let
the default exception handler do it for us.
Signed-off-by: Chris Larson <chris_larson@mentor.com>
|
|
Signed-off-by: Chris Larson <chris_larson@mentor.com>
|
|
This ensures the check is run for anyone using the package, including
setup.py, though it's sad that it's necessary, since all it really wants is
__version__.
Ideally, we'd avoid the version check entirely in favor of checking for
functionality, but that's rather difficult with language constructs like
context managers, so this'll do for now.
Signed-off-by: Chris Larson <chris_larson@mentor.com>
|
|
sys.version_info
Signed-off-by: Chris Larson <chris_larson@mentor.com>
|
|
Signed-off-by: Chris Larson <chris_larson@mentor.com>
|
|
utilize the newer python features
Signed-off-by: Chris Larson <chris_larson@mentor.com>
|
|
Signed-off-by: Chris Larson <chris_larson@mentor.com>
|
|
Signed-off-by: Chris Larson <chris_larson@mentor.com>
|
|
Signed-off-by: Chris Larson <chris_larson@mentor.com>
|
|
Signed-off-by: Chris Larson <chris_larson@mentor.com>
|
|
Signed-off-by: Chris Larson <chris_larson@mentor.com>
|
|
Signed-off-by: Chris Larson <chris_larson@mentor.com>
|