As reported on the mailing list[1] when changing IMAGE_FSTYPES through the
hob preferences a reparse is required before the changes will be picked up
by the system. This patch sets the reload_required property of the class to
true when the image types have been modified to ensure the reparse is
triggered.
1. https://lists.yoctoproject.org/pipermail/yocto/2011-December/006002.html
(Bitbake rev: 6c0babf08909307ab69a66ed06e77e8818b2a8c5)
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The knotty UI just ignores these and so should RunningBuild, if these events
aren't handled the UI appears to hang.
Fixes [YOCTO #1665]
(Bitbake rev: 540ba78075bd525776aa23bf38bee66350c66534)
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Instead of calling getVariable commands each time the BBPATH and BBFILES
entries need testing cache the results as a member variable at object
instantiation.
Fixes [YOCTO #1521]
(Bitbake rev: 109e1597671dfb7222672e268190aabc727960ca)
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Firstly, rather than polling the DEPLOY_DIR_IMAGE directory each time an
image is built store the variable as a member of the hobeventhandler.
Secondly emit the generic "build-complete" signal *after* the specialised
"build-failed" or "build-succeeded" signals such that the appropriate
state variables are set before we try and use them.
(Bitbake rev: 043914a8b478fd4a7799acd1b44bdb3b0af2165a)
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Pass the correct callback name to the connect method.
(Bitbake rev: d2b9167a7b0eb3fcb31d64f915beef41aac659a5)
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The different code paths for package vs image builds have lead to some bit
rot in the package only build and an incompatability between package only
builds and the build again mechanism.
This patch unifies the code paths and fixes build again for package only
builds.
Fixes [YOCTO #1480]
(Bitbake rev: ab6c63f35739c30df0e8a9d0f1ae982b96e538ed)
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
When disabling the toolchain w/ headers checkbox in an early commit I
accidentally disabled too much code. This re-enables adding the custom
response handler to the Preferences dialog which triggeres a reparse of
the metadata when appropriate preference changes are made.
Fixes [YOCTO #1479]
(Bitbake rev: bdbd724e806c9ca69cc1508bac7ec0a2dce95543)
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
There's no need to check the BBPATH and BBFILES are set correctly each
build when running multiple builds for one launch of the UI.
Partially addresses [YOCTO #1468]
(Bitbake rev: 39ed18e70e9f3a13b522b4ea02bf6f4bdb7de89c)
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
It seems we have a race whereby the image_dir variable may not be set
before it's tested for, since the variable is always the same set it in the
initialiser.
Partially addresses [YOCTO #1468]
(Bitbake rev: 09f5aed2edb0b8f4a6570e1041b5db66cf2d17cc)
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Some internal lists were not being cleared, resulting in incorrect
program flow on the second build, causing a structure to be accessed
incorrectly which resulted in a segfault.
Fixes [YOCTO #1332]
(Bitbake rev: 71ac7fda51ed80e9ef6d1a3bca653683893e4770)
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The buildstats handler causes an exception with: "'NoneType' object has no
attribute 'startswith'" early a build via hob, leaving a glaring red row
which means nothing to the user.
Mask this error until such a time as we have opportunity to correctly
diagnose and fix the root problem.
Workaround fix for [YOCTO #1433]
(Bitbake rev: b0cce5b52a20c0dad5ec0c4053f437cae89b6137)
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The generic meta-toolchain-sdk we are currently building when this option
is enabled is likely unsuitable for the majority of images built with hob.
Remove this option from the Preferences UI until such a time as we can
correctly implement this feature to include the library headers for the
selected packages.
Addresses [YOCTO #1302]
(Bitbake rev: 3157967d08266b8d1ac563ba609ac3027b60d040)
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
We need to set various variables *before* parse begins, the simplest way
to ensure this is to use a pre configuration file for the relevant
configuration entries.
This series adapts hob to use both pre and post files to store its
configuration. Any variables which affect initial parse are set in the pre
file and all others in the post file.
Unfortunately this requires hob related code to have even more hard-coded
data as to what is relevant but this is the simplest way to solve issues
with variables and parse order at this time.
Addresses [YOCTO #1281]
(Bitbake rev: 02ab0e11d8dd42f5ca440b3d8d2073e23f55113a)
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Rather than trying to iterate the model to find whether the item is already
included and then iterate the model again to find the items path attempt to
find the path first and if the path is found test whether the COL_INC of
the row is set.
(Bitbake rev: 82845569c37591f6b097b9db071484f8171a39ea)
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Cheaper to set COL_INC to True regardless of whether it's already set.
(Bitbake rev: 12c6f98ba7a68baeeaee00594d910e1be8d55d87)
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Rather than calling get_path() for each iterated value use the get_value()
method to lookup the COL_NAME value and only call get_path() for a match.
This should save some time by potentially removing N-1 calls to get_path()
from the loop.
(Bitbake rev: d2450536269996147a22d6eafbdf72aa62afa4f6)
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Don't add y to x's COL_BINB if x is in y's COL_BINB - prevent circular
dependencies.
Further this patch improves the variable naming to make this code easier to
follow.
Fixes [YOCTO #1423]
(Bitbake rev: 01ef2ab0d201f3cb3666462558c9cf485592e04f)
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
In the same vein as a similar, earlier, patch where I missed the second
loop which modifies the binb column.
Fixes [YOCTO #1420]
(Bitbake rev: 6ad1103b5fd592afa9ea03ef5a0d706604cc0e0f)
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Add another item to the right-click menu enabled for log messages to copy
the message to the clipboard.
(Bitbake rev: 419b52e832f506504778d4d5957d1e77477bb513)
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This fixes an embarassing typo which meant the method actually returned a
list of packages which didn't depend on the passed pn.
(Bitbake rev: a17334e85869bf78d63df1b2336d68980a0b359f)
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This was actually broken with recent changes as the values were never
persisted to a file (meaning they were unset on the server at reparse
despite the UI indicating they were set).
However, I've chosen to remove the 'feature' as pegging a users CPU without
them asking to use high thread counts seems a little offensive.
(Bitbake rev: 27dcf245abf3805be47894773406392fdf055e48)
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
We were setting the value as a list when a string is expected
(Bitbake rev: fc3bb3a4f04f64c6d47c7bf040b7522e9204a458)
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
These methods are expected to return lists.
(Bitbake rev: 4e101de9034c20dfda0bb851e84f4315335620f6)
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Now that we've switched to packages in the model, rather than PN, it makes
sense to add an extra field to store the PN of the package.
This patch includes a convenience method to retrieve a list of selected PN's.
(Bitbake rev: cf79424592a81378de5edad11cf6c4f427c94bcc)
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This makes it easier for the user to determine what the effects of a
removal may be, further it means we no longer need the find_alt_dependency
method which could be a fairly time-consuming method depending on the size
of the contents table.
Partially addresses [YOCTO #1365]
(Bitbake rev: 91d1f5f5a44c80e6702221509e2e9aadbe05bcc0)
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Ensure the dependency list is uniquified, doesn't include self references
and further doesn't include -dev references.
(Bitbake rev: 70aebebc3867d52e460355667e711c7c6dcd50ce)
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Relying on the count() method of Str to determine whether the string
contains a substring is error prone purely because the return value doesn't
strictly convert to a Boolean value.
To that end take the more pythonic approach of using the in operator (foo
in bar) to check for the substring.
Further, add a helper method for the common case of testing whether a pn
is -native, -cross or virtual/
(Bitbake rev: d7768cefcddd59a5102d7e9b67e4416bf8603f55)
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
When we receive the CacheLoadComplete command we need to ensure the
progress bar is hidden as we can't expect the ParseComplete event, where
this would usually be done.
This patch makes the Goggle UI usable again.
(Bitbake rev: 64dfc574c12d882761e4958c8b1881cd47a87e0d)
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The recent change to the message module to remove custom logging domains
resulted in an increased number of messages being displayed in the
running build view, ignore all messages lower than log level INFO.
(Bitbake rev: a12da000a8e4138fbdfd77f9c49b11fc69a315e1)
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
No need to check if the name ends with -native or -cross as path will be
None in this instance.
(Bitbake rev: bca739cdf55ba2a1c5e372e512d4f088345f245f)
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Ignore names that include '-cross', rather than just 'cross'
(Bitbake rev: 06abfc9caf7f237a6bb762fb3ae9f3dec99688ca)
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
If the item_name contains virtual/, -native or -cross it won't be present
in the model. Return None early in this circumstance rather than iterating
the entire model and still returning None.
(Bitbake rev: aeef5a4b3999bd924e89e7738efe24f80ae94fd0)
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Until now the hob UI has only contained recipe (pn) level targets in the
data store, this patch switches to including package level information.
This is slightly slower in all model related cases (more entries) but gives
much more flexibility for image customisation.
(Bitbake rev: 049927e99c8d1db7273fbd179b2614bd2ea9403b)
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
We need to unset the reload_required variable once we've triggered a reload
so that we don't cause a reload each time the preferences dialog is shown and
dismissed, regardless of whether anything has changed.
(Bitbake rev: b3ad7acebfad3063c3364f4492f53b25bf53cf81)
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Configuration files are written in several places, this refactors the code
to use a common method.
(Bitbake rev: 2843645755abb736220d7404dc6e853929093ff9)
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The API has changed from just a reparse call to a reset call followed by
a reparse call.
(Bitbake rev: c828ba571c3cf27d1bbd65184e287c45ef64de89)
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Fix thinko - the squish method returns a uniquified list, it doesn't modify
the list in place. Therefore the call to squish() was useless as its return
value was never assigned.
(Bitbake rev: 93bae8f223cdeb7b7e31c309b5d785b97ae1c2ac)
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Two similarly named variables in the mark() method resulted in the wrong
variable being used in a couple of places. This patch adresses this in
several ways:
1) Renames the variables to be less similar
2) Uses the correct variables
3) Adds some coments to document the methods intent
Partially addresses [YOCTO #1355]
(Bitbake rev: ba9f2fe496eec0a221b563ffc9bb76eca592192f)
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
It's possible to trigger an infinite recursion when removing a package
where many of the dependencies share their dependencies. Prevent this by
keeping a list of removed item names and only removing the item when it's
not in the list.
Addresses [YOCTO #1319]
(Bitbake rev: 0ed58f28e869cceeefa930a3f1f46c5f3e9ffe21)
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Emit the generic build-complete signal when a command fails with an exit
signal enabling the UI to update itself accordingly.
Addresses [YOCTO #1265]
(Bitbake rev: 25ec13075855f7e321a9763682a8cd4ca09203cd)
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
In b947e7aa405966262c0614cae02e7978ec637095 Bob started to introduce code
for a right-click menu, whilst most of the code is non-invasive it does
enable the editable property of the gtk.TreeView which can be confusing.
This change adds a readonly parameter, defaulting to False, to the
RunningBuildTreeView which if True will prevent the editable property from
being set.
CC: Bob Foerster <robert@erafx.com>
(Bitbake rev: d1d6bfab1789d8c0a4faa109bcc06b3cefe62620)
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
In b947e7aa405966262c0614cae02e7978ec637095 Bob changed the behaviour of
the RunningBuildModel such that the items are added to the model in a
non-sequential order.
The messages in the view being listed out of order from how they are
received is undesirable for users of the hob UI, therefore this patch adds
an optional sequential parameter to the RunningBuild initialiser which,
when set to True, will always append new messages so that the order shown
in the view is that the messages are received in. The parameter defaults to
to False such that the behaviour added by Bob is preserved.
Partially addresses [YOCTO #1311]
CC: Bob Foerster <robert@erafx.com>
(Bitbake rev: b16663e1919fddbf63d0ca7f9ad3ffdc7d1121fd)
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>