summaryrefslogtreecommitdiffstats
path: root/bitbake/lib/bb/ui
Commit message (Collapse)AuthorAgeFilesLines
* ui/crumbs/tasklistmodel: fix saving recipes1.1_M2.rc31.1_M2.final1.1_M2Joshua Lock2011-07-211-2/+1
| | | | | | | | | | | | | After switching to dynamically finding the relative path for the recipe file it's no longer to append .bb when inserting the require line into the saved recipe. Fixes [YOCTO #1247] (Bitbake rev: 2d05ce4f527daa905ed64485029ebeb2b349daa6) Signed-off-by: Joshua Lock <josh@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* ui/crumbs/tasklistmodel: fix automatic removal of orphaned itemsJoshua Lock2011-07-131-15/+19
| | | | | | | | | | | | | | | | | The sweep_up() method intends to remove all packages with an empty brought in by column, this patch changes the implementation to be more reliable. Each time a removal is triggered we begin interating the contents model again at the beginning, only once the contents model has been iterated from start to finish without any removals can we be certain that there will be no more orphaned items. Fixes [YOCTO #1218] (Bitbake rev: 4803c6d3d1db31105d98a7f71596875333db0dc5) Signed-off-by: Joshua Lock <josh@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* ui/crumbs/tasklistmodel: update brought in by column when possibleJoshua Lock2011-07-131-4/+10
| | | | | | | | | | | | | | When a package is orphaned we were not correctly updating the brought-in-by column if a later package additon would have brought that package in as a dependency. This patch ensures that orphan packages are correctly re-parented when appropriate. Partially addresses [YOCTO #1218] (Bitbake rev: 570405f2f5a3976b308ef825ef477fb5cb6ee804) Signed-off-by: Joshua Lock <josh@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake cooker/ui: handle cmd line parsing result by individual UI.Lianhao Lu2011-07-084-5/+20
| | | | | | | | | | | Changed the return result of "getCmdLineAction" to a dictionary {'action', 'msg'} to allow the individual UI decide how to handle the cmd line parsing result. (Bitbake rev: 521909d1350a415d19516aa1710041e30950c7cc) Signed-off-by: Lianhao Lu <lianhao.lu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* lib/bb/ui/hob: don't error when dismissing save as dialogJoshua Lock2011-07-081-6/+14
| | | | | | | | | | | | If the user decides to cancel the save as dialog we should not try and save regardless. Fixes [YOCTO #1220] (Bitbake rev: 3412fbd6a16980e0fba7742c32675eea9d77d6c0) Signed-off-by: Joshua Lock <josh@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* lib/bb/hob: fix changing base imageJoshua Lock2011-07-081-5/+5
| | | | | | | | | | | | | The path is not guaranteed to always point to the same value so do not rely on it to change the image contents. Further, when changing the base image we should maintain user selections. Addresses [YOCTO #1225] and fixes [YOCTO #1226] (Bitbake rev: 737d1bc819b192b4c2caa0482bddb6921b5aac93) Signed-off-by: Joshua Lock <josh@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* ui/crumbs/tasklistmodel: fix reset methodJoshua Lock2011-07-081-4/+16
| | | | | | | | | | | | | The reset() method only touched the contents sub-model, which does not include the selected image(s). This patch ensures that reset correctly unsets any image selection when called. Further we re-initialise the COL_IMG column when resetting packages. (Bitbake rev: f3fbc97471961042e5eb8224dc07dcc04293efcf) Signed-off-by: Joshua Lock <josh@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* ui/depexp: If we're parsing zero files we need to ensure the cache progress ↵Richard Purdie2011-07-051-3/+1
| | | | | | | | bar gets hidden (Bitbake rev: c8f46dfcc2f660a9cd52c64515624fad8d66461a) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* hob: re-designed interaction and implementationJoshua Lock2011-07-058-424/+1824
| | | | | | | | | | | | | | | | | | | | | Highlights include: * Atempted GNOME HIG compliance * Simplified UI and interaction model * Sorting and type to find in tree views * Preferences dialog to modify local settings * Dialog to add and remove layers * Search in packages list * Save/Load image recipes The build model has been changed, hob will attempt to build all dependent packages of an image and then use the buildFile server method to build the created image. (Bitbake rev: 48e64acaae4a741b9f5630f426fb4e6142755c2c) Signed-off-by: Joshua Lock <josh@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* ui/hob: Fixed the "build again" hang.Lianhao Lu2011-07-011-2/+1
| | | | | | | | | | | | Using gobject.threads_init() instead of gtk.gdk.threads_init(). These two modes are conflict to each other. Using gobject.threads_init() allows only the main thread to touch GUI(gtk) part. (Bitbake rev: b9698d0e8d681f1fd6ab8d28530136b85411386f) Signed-off-by: Lianhao Lu <lianhao.lu@intel.com> Signed-off-by: Joshua Lock <josh@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake/event/ast: Add RecipePreFinalise eventRichard Purdie2011-06-091-0/+1
| | | | | | | | | | One of the implications is we need to register the event handlers before executing the anonymous python functions. I can't find any issue with making that change in any existing metadata use cases. (Bitbake rev: a981df3cc9bf410d24f39919959952bdc6c76d03) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake none/xmlrpc servers: Only send pickled events to the xmlrpc serverRichard Purdie2011-06-081-1/+1
| | | | | | | Only the xmlrpc server needs pickled events. Use the function names to signify this requirement. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* Introduce new param caches_array into Cache impl.Liping Ke2011-06-071-0/+2
| | | | | | | | | | | | | | When using hob ui interface, we need extra cache fields. We will save ui required extra cache fields into a separate cache file. This patch introduce this caches_array parameter. It will be used in the extra cache implementation (following patch). Caches_array at least contains CoreRecipeInfo. If users need extra cache fields support, such as 'hob', caches_array will contain more relevant elements such as HobRecipeInfo. (Bitbake rev: d50389ae692377c957afec7c846fc2ce2c070a09) Signed-off-by: Liping Ke <liping.ke@intel.com>
* bitbake/ui: Fix Gtk+ GUI's after recent cache changesJoshua Lock2011-05-163-1/+7
| | | | | | | (Bitbake rev: 2bc8f405ec552ae0f1a79790569b2d044a35d3ba) Signed-off-by: Joshua Lock <josh@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake/cache.py: Ensure skipped recipes make it into the cache to avoid ↵Richard Purdie2011-05-051-0/+5
| | | | | | reparsing Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* goggle: exit quietly on ^CChris Larson2011-03-311-0/+2
| | | | | | | (Bitbake rev: bdd10e9b357417774f30cc52e89e3fa83bbbbfc0) Signed-off-by: Chris Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake/hob: fix cancel buttonJoshua Lock2011-03-141-1/+1
| | | | | | | | An accidental logic inversion (aka thinko) had the cancel button only cancel a build when the user didn't confirm the cancellation (i.e. clicked no)... Signed-off-by: Joshua Lock <josh@linux.intel.com>
* bitbake/hob: only show one progress dialog when changing machineJoshua Lock2011-02-251-1/+0
| | | | | | | Remove a spurious signal emission which resulted in two progress dialogs being shown after changing the machine. Signed-off-by: Joshua Lock <josh@linux.intel.com>
* bitbake/progress: make progress dialog modal for parent windowJoshua Lock2011-02-241-2/+1
| | | | Signed-off-by: Joshua Lock <josh@linux.intel.com>
* bitbake: Add new UI hob, a prototype Gtk+ GUI for creating imagesJoshua Lock2011-02-242-0/+734
| | | | | | Hob is a first stab at implementing an interactive GUI for BitBake. Signed-off-by: Joshua Lock <josh@linux.intel.com>
* bitbake/progress: add method to pulse the progress barJoshua Lock2011-02-241-0/+4
| | | | | | | | When we're running a long operation with indeterminate duration it's useful to use the gtk.ProgressBar's pulse method to show that something is happening but we don't know how long it will take. Signed-off-by: Joshua Lock <josh@linux.intel.com>
* bitbake/crumbs: update documentation headerJoshua Lock2011-02-241-1/+1
| | | | Signed-off-by: Joshua Lock <josh@linux.intel.com>
* bitbake: introduce crumbs.TaskListModel a gtk.ListStore subclassJoshua Lock2011-02-241-0/+346
| | | | | | | | | | | Provide a gtk.ListStore subclass which includes a function, populate(), which takes as input the data emitted by bb.event.TargetsTreeGenerated and fills the ListStore model appropriately. Furthermore convenience functions are provided by which the caller can get gtk.TreeModel subclasses which provide filtered views of the data. Signed-off-by: Joshua Lock <josh@linux.intel.com>
* uihelper: import bb.build, kill commented linesChris Larson2011-02-211-10/+2
| | | | | | | (Bitbake rev: 718448e96d714adf8aaecedac5cb77c7f36b9cdb) Signed-off-by: Chris Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake/knotty.py: Ensure task note messages are only surpressed at default ↵Richard Purdie2011-01-121-2/+6
| | | | | | log levels Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake/goggle: don't drop eventsJoshua Lock2011-01-121-1/+1
| | | | | | | We had a logic inversion that meant we where dropping quite a significant number of events on the floor.... Fixed! Signed-off-by: Joshua Lock <josh@linux.intel.com>
* bitbake/depexp: closing progress dialog kills guiJoshua Lock2011-01-121-0/+1
| | | | | | | It seems safe to assume a user hitting the close button on the dialog wants to kill the whole UI. Signed-off-by: Joshua Lock <josh@linux.intel.com>
* bitbake/goggle: closing the progress dialog kills the UIJoshua Lock2011-01-121-0/+1
| | | | | | | | It's unlikely that someone wants to close the progress dialog yet leave the UI (and BitBake process) running, so hook up the progress dialogs delete-event to exit gtk. Signed-off-by: Joshua Lock <josh@linux.intel.com>
* bitbake/uievent: fix queueing of events for xmlrpc before UI has loadedJoshua Lock2011-01-121-2/+5
| | | | | | | | | | | | | | | The recent change to Queue up events before the UI is spawned (in 26eda933379801ef1c8b4b09e67d14f498cd3813) broke the xmlrpc server because the uievent implementation of BBUIEventQueue expects pickled strings for its queue_event() method. This is because the RPC exposed event.send() method must accept pickled strings, but for xmlrpc event.send() is just mapped to queue_event(). Work around this by adding a send_event method which unpickles strings and hands them off to queue_event() which can then be used for the remapping. Signed-off-by: Joshua Lock <josh@linux.intel.com>
* bitbake/knotty.py: Don't show log messages of NOTE and below for task processesRichard Purdie2011-01-081-3/+3
| | | | | | | This cleans up the knotty console messages to be a lot quieter and cleaning, in keeping with the expectations of most users. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: Misc syncups with bitbake upstream, mostly whitespace and a missed ↵Richard Purdie2011-01-052-5/+0
| | | | | | line from the last UI commit Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* Resurrect alternative UIsBob Foerster2011-01-056-89/+298
| | | | | | | | | | | | | | | | 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 (Bitbake rev: b947e7aa405966262c0614cae02e7978ec637095) Signed-off-by: Bob Foerster <robert@erafx.com> Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* depexp: add sorting of all package listsBob Foerster2011-01-041-0/+2
| | | | | | | | | | | Without sorting, it's very difficult to find the information you're looking for. Now, the lists are all sorted alphabetically for easy viewing. (Bitbake rev: 80e3d3a130b9dee72c11c6946bb5ff7705111d7c) Signed-off-by: Bob Foerster <robert@erafx.com> Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* logger usage cleanupChris Larson2011-01-041-1/+1
| | | | | | | (Bitbake rev: 976e4f84a8147ad762442df7ff4820611a21d227) Signed-off-by: Chris Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* Fix logging level names for post-server-ui-splitChris Larson2011-01-041-10/+0
| | | | | | | (Bitbake rev: dc5a5c39291ec223cd761dce59d29eee7316cb70) Signed-off-by: Chris Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* Show the user progress when loading the cacheBob Foerster2011-01-041-8/+24
| | | | | | | | (Bitbake rev: bdd7813d8eecf7b6b636322e748ca6bf69118513) Signed-off-by: Bob Foerster <robert@erafx.com> Signed-off-by: Chris Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* knotty: exit with 1 if we see a critical log messageChris Larson2011-01-041-2/+3
| | | | | | | (Bitbake rev: d527ca441539618c990291fb8340f552ac760bce) Signed-off-by: Chris Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* bitbake: Transfer noexec runqueue messages to the UIRichard Purdie2011-01-041-2/+9
| | | | Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* Move the runq task start/failed messages to the UIChris Larson2011-01-041-0/+11
| | | | | | | (Bitbake rev: ab831e867f09b47001cb8da2f8f060e04febf237) Signed-off-by: Chris Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* Rename command events, adjust compareRevisionsChris Larson2011-01-043-10/+16
| | | | | | | | | | | | - Moved the logic for comparing revisions from cooker into command - Removed 'Cooker' from the event names - Renamed the 'ExitCode' event into CommandExit, and changed CommandFailed to be a subclass of CommandExit (Bitbake rev: c51ed5d7a9971fad6019dac6c35a71b8a54ab16a) Signed-off-by: Chris Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* build: send logging messages to the log file for python functionsChris Larson2011-01-041-10/+2
| | | | | | | (Bitbake rev: ee1cce6ab21ddda60a7a070d03e98ff8485a5e71) Signed-off-by: Chris Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* Rename the ui 'init' method to 'main'Chris Larson2011-01-045-5/+5
| | | | | | | | | | 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. (Bitbake rev: 4d081a0ed759bd526ab01849d650bd9e8d80ddd1) Signed-off-by: Chris Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* knotty: use enumerate for task waitingChris Larson2011-01-041-3/+1
| | | | | | | (Bitbake rev: 89ce8df075ac8c9a5478c86405e6e6b60346a51c) Signed-off-by: Chris Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* knotty: shift non-interactive progress into a classChris Larson2011-01-041-15/+33
| | | | | | | (Bitbake rev: c3d005cbbae3d56da9926666cfb1501c2bf96ea7) Signed-off-by: Chris Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* cooker: no cached in progressbar and add ETAChris Larson2011-01-041-2/+2
| | | | | | | | | | | | Rather than updating the progress bar based on the recipe being processed (whether cached or parsed), consider only parsed recipes. This reduces the instability in progress rate introduced by the cached entries, and allows the ETA to be resurrected and be a bit more useful. (Bitbake rev: 618480f7739f6ae846f67a57bee5a78efb37839d) Signed-off-by: Chris Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* knotty: drop the ETA from the progressbar for nowChris Larson2011-01-041-1/+1
| | | | | | | | | | | | | | Currently, the progress bar is an indication of the processing of our recipes, which includes loading the cache file, then for each recipe, either adding the existing cached information to the CacheData or parsing the recipe from disk. These tasks clearly take different amounts of time, so the ETA is unreliable today. We'll resurrect this functionality after we revamp the progress handling, fully incorporating the load of the cache file. (Bitbake rev: 80867372dcbef91ebaf7d77a77ca871741dd3f74) Signed-off-by: Chris Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* cache: sync the cache file to disk in the backgroundChris Larson2011-01-042-24/+28
| | | | | | | | | | | | | | | | This version uses a thread rather than a process, to avoid problems with waitpid handling. This gives slightly less overall build time reduction than the separate process for it did (this reduces a -c compile coreutils-native by about 3 seconds, while the process reduced it by 7 seconds), however this time is quite insignificant relative to a typical build. The biggest issue with non-backgrounded syncing is the perceived delay before work begins, and this resolves that without breaking anything, or so it seems. (Bitbake rev: 5ab6c5c7b007b8c77c751582141afc07c183d672) Signed-off-by: Chris Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* Experimental usage of the 'progressbar' moduleChris Larson2011-01-041-8/+12
| | | | | | | (Bitbake rev: 64feb03bc2accecb49033df65e0a939ef5ab5986) Signed-off-by: Chris Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* Use logging in the knotty ui, and pass the log record across directlyChris Larson2011-01-041-31/+41
| | | | | | | | | | | | | | | | | | 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. (Bitbake rev: c23c015cf8af1868faf293b19b80a5faf7e736a5) Signed-off-by: Chris Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* Use the python logging module under the hood for bb.msgChris Larson2011-01-041-6/+6
| | | | | | | (Bitbake rev: 47ca82397bc395b598c6b68b24cdee9e0d8a76d8) Signed-off-by: Chris Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>