summaryrefslogtreecommitdiffstats
path: root/bitbake
Commit message (Collapse)AuthorAgeFilesLines
* bitbake: parse/ast, event: Ensure we reset registered handlers during parsingRichard Purdie2016-06-152-1/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | When parsing, we should reset the event handlers we registered when done. If we don't do this, parse order may change the build, depending on what the parse handlers do to the metadata. This issue showed up as a basehash change: ERROR: Bitbake's cached basehash does not match the one we just generated ( /media/build1/poky/meta/recipes-core/meta/nativesdk-buildtools-perl-dummy.bb.do_unpack)! This is due to the eventhandler in nativesdk.bbclass being run, despite this .bb file not inheriting nativesdk.bbclass. The parse order was different between the signature generation and the main multithreaded parse. Diffsigs showed: bitbake-diffsigs 1.0-r2.do_unpack.sigbasedata.* basehash changed from 887d1c25962156cae859c1542e69a8d7 to cb84fcfafe15fc92fb7ab8c6d97014ca Variable PN value changed from 'nativesdk-buildtools-perl-dummy' to '${@bb.parse.BBHandler.vars_from_file(d.getVar('FILE', False),d)[0] or 'defaultpkgname'}' with PN being set by the event handler. (Bitbake rev: 0219271d4130c1f4cf071c7577a4101c54c04921) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: Remove mismerged filesRichard Purdie2016-06-152-123/+0
| | | | | | | | | Another patch added migrations in the correct location (different date) so these in the wrong directory can be removed. (Bitbake rev: 8aa84abc952835792db1614b6fe2305ab9dca9e1) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: taskdata/runqueue: Rewrite without use of ID indirectionRichard Purdie2016-06-153-803/+639
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I'm not sure what possesed me when I wrote this code originally but its indirection of everyting to use numeric IDs and position dependent lists is horrific. Given the way python internals work, its completely and utterly pointless from performance perspective. It also makes the code hard to understand and debug since any numeric ID has to be translated into something human readable. The hard part is that the IDs are infectous and spread from taskdata into runqueue and even partly into cooker for the dependency graph processing. The only real way to deal with this is to convert everything to use a more sane data structure. This patch: * Uses "<fn>:<taskname>" as the ID for tasks rather than a number * Changes to dict() based structures rather than position dependent lists * Drops the build name, runtime name and filename ID indexes On the most part there shouldn't be user visible changes. Sadly we did leak datastructures to the setscene verify function which has to be rewritten. To handle this, the variable name used to specifiy the version changes from BB_SETSCENE_VERIFY_FUNCTION to BB_SETSCENE_VERIFY_FUNCTION2 allowing multiple versions of bitbake to work with suitably written metadata. Anyone with custom schedulers may also need to change them. I believe the benefits in code readability and easier debugging far outweigh those issues though. It also means we have a saner codebase to add multiconfig support on top of. During development, I did have some of the original code coexisting with the new data stores to allow comparision of the data and check it was working correcty, particuarly for taskdata. I have also compared task-depends.dot files before and after the change. There should be no functionality changes in this patch, its purely a data structure change and that is visible in the patch. (Bitbake rev: 2c88afb60da54e58f555411a7bd7b006b0c29306) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: runqueue: Change buildable/running lists to setsRichard Purdie2016-06-151-36/+27
| | | | | | | | | | | | | | Using positions in lists for flags is an odd choice and makes the code hard to maintain. Maintaining a list is slow since list searches are slow (watch bitbake -n slow massively with it) but we can use a set() instead. This patch uses python sets to maintain the lists of tasks in each state and this prepares for changing the task IDs from being integers. (Bitbake rev: 8c1ed57f6ea475b714eca6673b48e8e5f5f0f9c3) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: tests browser Fix selenium tests after bootstrap3 breakageMichael Wood2016-06-153-24/+27
| | | | | | | | | | | | Fix a number of selectors which have changed after the port to bootstrap3. Also fix the modal wait_until_visible and returning of the text for the radio buttons in the modals for edit custom image and new custom image on the build dashboard. (Bitbake rev: 5f80dac65f419825bd81a734273a2465d5a01bab) Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: tests Rename test settings to python compliant name and ↵Michael Wood2016-06-152-2/+2
| | | | | | | | | | | | fix import Use underscore instead of dash in the file name for the test settings. Also fix the import of the settings module. (Bitbake rev: 0bdfcafdd1e2ebc10dc0cd343c8bb77f09a71c90) Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: selenium tests Fix all_projects page and sample testsMichael Wood2016-06-152-6/+9
| | | | | | | | | | Fix the selectors after changes made for bootstrap3 and table links being removed. (Bitbake rev: fccc8869dc465b49f236c15a9aa14b7d06694b8e) Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: selenium tests Update unique custom image string and fix ↵Michael Wood2016-06-152-2/+3
| | | | | | | | | | | | import - Update the string for recognising a duplicate image recipe - Fix an incorrect relative import (Bitbake rev: 830743b1aa29a5ac220141e9c24b2592d6cebb29) Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: js tests Twitter typeahead library object is now ttTypeaheadMichael Wood2016-06-151-4/+4
| | | | | | | | | | Get the ttTypeahead object on the input to see if it's been initialised correctly. (Bitbake rev: d382b2afb2939ae1b69a80ad083fb4c47303f8d0) Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: fix wrong usage of print_exc and format_excEd Bartosh2016-06-155-7/+7
| | | | | | | | | | | | | | | | | | | | First parameter of traceback.print_exc and traceback.format_exc APIs is a 'limit' - a number of stracktraces to print. Passing exception object to print_exc or format_exc is incorrect, but it works in Python 2 and causes printing only one line of traceback. In Python 3 comparison of integer and exception object throws exception: TypeError: unorderable types: int() < <Exception type>() As these APIs are usually used in except block of handling another exception this can cause hard to find and debug bugs. (Bitbake rev: c5a48931ac8db9e56f978c50861c19d0d0c808e3) Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com> Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: changed python version in shebangEd Bartosh2016-06-151-1/+1
| | | | | | | | | | | Changed python to python3 in shebang to ensure that manage.py is always run by python3. (Bitbake rev: 3638b8e5390c36076e14c181e955505750031571) Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com> Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: toastergui tests Use new BeautifulSoup syntaxMichael Wood2016-06-151-1/+1
| | | | | | | | | | Fix deprecation warning specify the parser used for creating the BeautifulSoup object. (Bitbake rev: d34546e88881e89588206877ebaea506cda4f6c2) Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: open image files in binary mode when sending in responseElliot Smith2016-06-151-1/+1
| | | | | | | | | | | | | | | | | | | The view code for downloading image files used the "r" flag to read the file, then used the open file object to form the HTTP response. While this worked in Python 2, Python 3 appears to be more strict about this sort of thing, and Django throws a UnicodeDecodeError when a file opened this way is used in a response. Open the file with the "b" flag (binary mode) so that Django can correctly convert the binary file handle to an HTTP response. (Bitbake rev: c4d67968d0ec1d5ff53cdc0dccf6a7869c89597b) Signed-off-by: Elliot Smith <elliot.smith@intel.com> Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster-tests: fix tests for latest Selenium versionElliot Smith2016-06-153-15/+8
| | | | | | | | | | | | | | | | | | | Previously, we didn't specify a specific version of Selenium. When upgrading to Python 3 and installing Selenium to work with it, the JS unit test broke, as the report format produced by Selenium had changed. Modify the test so that it works with the latest Selenium report format. Add a note to the README that the given Selenium version should be used to prevent unexpected test failures. (Bitbake rev: 571c2b70d3c123614618672ce7532bb5f4c36630) Signed-off-by: Elliot Smith <elliot.smith@intel.com> Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: fix broken reference to urllibElliot Smith2016-06-151-1/+1
| | | | | | | | | | | | | | | | The code previously imported urllib to make use of querystring quoting, but was modified to support Python 3. During this process, the reference to urllib was not fixed, which resulted in table filters breaking. Remove the reference to urllib (which is no longer imported) and instead reference the imported unquote_plus() function. (Bitbake rev: f66ee686d4e3002a4a38a7424bcc605a6df9db0b) Signed-off-by: Elliot Smith <elliot.smith@intel.com> Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: fix test_toaster_tablesEd Bartosh2016-06-151-6/+0
| | | | | | | | | | Removed unneeded code as it causes the following error in Python 3: TypeError: expected bytes, bytearray or buffer compatible object (Bitbake rev: 1626e986820da626c19aa8c664155a2cb1db8fd9) Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: fix incorrect file modeEd Bartosh2016-06-151-1/+1
| | | | | | | | | | | | | | Python 3 complains about 'wa' mode this way: ValueError: must have exactly one of create/read/write/append mode Fixed by using 'a' mode. [YOCTO #9584] (Bitbake rev: eb23a84e079125a08d0c8e910f7035ad9584c432) Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: decode response contentEd Bartosh2016-06-151-19/+19
| | | | | | | | | | | | | Decoded response content to str to pass it to json.load as it breaks in Python 3 with this error: TypeError: expected bytes, bytearray or buffer compatible object [YOCTO #9584] (Bitbake rev: 3566ecc3ae682358d1fc58bdc0bed5cbed5e9608) Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: fix migrationsEd Bartosh2016-06-152-0/+123
| | | | | | | (Bitbake rev: bfb44886c3bec8320e4f845c9ff24ae2a795aa9f) Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: replace viewkeys() -> keys()Ed Bartosh2016-06-151-1/+1
| | | | | | | | | | | | Python 3 doesn't have dict.viewkeys method, renaming to keys(). [YOCTO #9584] (Bitbake rev: 8ae2fc26fc7c4f42817dece62b9a59fbda27c0b0) Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: bin Use python 3 for our django modules checkMichael Wood2016-06-151-1/+1
| | | | | | | | | Explicitly use python3 so that the modules for python3 are checked. (Bitbake rev: e7951541c34c5561187110ba0ec69b9c45022747) Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: BuildTasksTable filters remove outcome NA optionBelen Barros Pena2016-06-151-0/+2
| | | | | | | | | | | In the 'outcome' filter for tasks, remove the 'not applicable' option, since it should not be exposed to users. (Bitbake rev: 4e21817b0d7a91e634bdb2069850627c38fde053) Signed-off-by: Belen Barros Pena <belen.barros.pena@linux.intel.com> Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: BuiltPackagesTable format empty state in packages tableBelen Barros Pena2016-06-151-5/+5
| | | | | | | | | | | The explanatory message in the empty state of the packages built table was missing some spaces. (Bitbake rev: 70f600f86ec4d536004d968919e86d2afa58d585) Signed-off-by: Belen Barros Pena <belen.barros.pena@linux.intel.com> Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: build data Fix left navigationBelen Barros Pena2016-06-154-15/+22
| | | | | | | | | | Make sure the current page is always highlighted in the left navigation. (Bitbake rev: 3d7f5d6ae843bcc3b5af1a9414ab5cb2759d0853) Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: Belen Barros Pena <belen.barros.pena@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: port all build analysis pages to bootstrap 3Belen Barros Pena2016-06-1537-1136/+753
| | | | | | | | | | Port all the pages in the build analysis area to bootstrap version 3. (Bitbake rev: f963b73f0bf32db2df39dd79d8d85184c280cda0) Signed-off-by: Belen Barros Pena <belen.barros.pena@linux.intel.com> Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: buildtables Remove links from non name fieldsBelen Barros Pena2016-06-152-50/+42
| | | | | | | | | | | | | | | | Design change to have no links for non-named fields in BuiltPackagesTable. BuiltRecipesTables and BuildTasksTable. Additionally: - Fix class and elements for Bootstrap3 in help text. - Change title of InstalledPackages table to Packages Included. - Change which columns are default shown/hidden columns. (Bitbake rev: 7c377e161a90184a4786e33951d8c0e30688ba3b) Signed-off-by: Belen Barros Pena <belen.barros.pena@linux.intel.com> Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: fix typo which prevents filters from workingElliot Smith2016-06-151-1/+1
| | | | | | | | | | | | | 'k' was replaced by 'key' at some point but not fixed in the body of the loop. This caused a failure when the the query was constructed for a filtered queryset, due to the variable not being defined. (Bitbake rev: 37fb9a364e645baadda30cc74a18baa565f39857) Signed-off-by: Elliot Smith <elliot.smith@intel.com> Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster-tests: maximize browser window when running UI testsElliot Smith2016-06-151-0/+1
| | | | | | | | | | | | | | | | | | | In some pages of the UI, the UI tests failed because parts of the UI which should be visible were being reported as not visible by the Selenium PhantomJS driver. On investigation, it turns out that PhantomJS uses a very narrow default window. This meant that some parts of the UI were being clipped and were thus not "visible" to the driver, causing test failures (specifically, on the new custom image page). Ensure that the window is maximized before running tests to prevent this happening. (Bitbake rev: 3f61bef9359926211be7a3177a2071963726ead5) Signed-off-by: Elliot Smith <elliot.smith@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: Rework displaying package dependencies across ToasterMichael Wood2016-06-157-36/+157
| | | | | | | | | | | | | | | | | | | | | | | | | | | | After porting the build table to a unified mechanism for showing dependencies in tables it highlighted that the dependencies selected to be shown were un-filtered. i.e. all dependencies from all contexts were shown. The context for a package's dependencies is based on the target that they were installed onto, or if not installed then a "None" target. Depending on where the template for the dependencies are show we need to switch this target which is why a filter and utility function on the model is added. Additionally to use the same templates in the build analysis we also need to optionally add links to the build data for the packages being displayed as dependencies. Customising a Custom image recipes may or may not have a target depending on whether they have been built or not, if not we do a best effort at getting the dependencies by using the last known target on that package to get the dependency information. [YOCTO #9676] (Bitbake rev: 31e7c26cc31a7c8c78c1464fa01581683bfd2965) Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: widgets ToasterTable Catch template rendering exceptionsMichael Wood2016-06-151-4/+16
| | | | | | | | | | | | If a cell template rendering causes an exception catch it and carry on, this at least allows the table to show the rest of the data if nothing else. Also improve the error logging so that it's possible what the offending template snippet was. (Bitbake rev: 566b4fbe9cfe4c6c0605c4f6444083ee4cf8b958) Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: tests Add new build tables to testsMichael Wood2016-06-152-37/+94
| | | | | | | | | | | | - Add new build tables to be tested - Add required data into the fixture and clean up a few empty fields - Fix the SoftwareRecipesTable specific test so as not to rely on two particular defined recipes (Bitbake rev: 7cf23671659666b27b5629fecd5f947f9bdb94e0) Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: table.js Add the ability to highlight a particular rowMichael Wood2016-06-151-0/+9
| | | | | | | | | | As in the old build tables it's useful to jump and highlight a particular row in the table using the #hash in the URL. (Bitbake rev: 927bfc26ffcb0eb6c0a5b3c0905b7efc2f19b9a2) Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: port Installed packages table to ToasterTableMichael Wood2016-06-155-288/+75
| | | | | | | (Bitbake rev: 2418c092abd9a503becf5e786125f8cdddd8652c) Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: port Task tables to ToasterTables widgetMichael Wood2016-06-157-433/+248
| | | | | | | | | | Port the Task based tables to ToasterTable. This is the Task, Time, CPU usage and Disk I/O tables. (Bitbake rev: bebcef7a4bf08b10e472475435ddc7a524364adb) Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: port Built recipes table to toastertablesMichael Wood2016-06-154-223/+135
| | | | | | | (Bitbake rev: 9434d3925bb7768876aae8d649ea00b8d849c6e9) Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: port table for Built packages to ToasterTableMichael Wood2016-06-158-219/+203
| | | | | | | | | | This is the table that displays all the packages built in the build. Build -> Packages. Adds a template snippet for the git revision popover. (Bitbake rev: df62f38ff4e634544c9b1e97c5f6ca45e84a4f1e) Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: ToasterTable widget add an 'a' to Name in Exception classMichael Wood2016-06-151-5/+6
| | | | | | | (Bitbake rev: 4c0e07b8379381cfe887a4c65d2f61af05914082) Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: toaster tables Enable complex empty statesBelen Barros Pena2016-06-152-1/+10
| | | | | | | | | | | | Make sure we can create empty states for toaster tables that include actions for users to get out of the empty state. Allows a template to be used as an empty state. (Bitbake rev: 9f21a1781345a2d2757616a9ab6f34ec48e9e93d) Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: Belen Barros Pena <belen.barros.pena@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: Migrate project configuration from bootstrap 2 to bootstrap 3Belen Barros Pena2016-06-1586-3096/+13204
| | | | | | | | | | | Convert all the HTML templates, JS and CSS in the project parts of toaster to use bootstrap 3. (Bitbake rev: 69527a731eada699d3f604ff8f3ae9410981ba9b) Signed-off-by: Belen Barros Pena <belen.barros.pena@linux.intel.com> Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: work-around our lack of a synchronous fetch for typeaheadsElliot Smith2016-06-154-9/+1553
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The Twitter typeahead.js library expects the developer to use a source which does a local search for matching suggestions, then falls back to a remote search if that doesn't return enough results. However, in Toaster, we don't do any caching of the suggestions for a typeahead, so our source only works in asynchronous mode. Consequently, we see fewer than the expected number of suggestions if the typeahead has already shown suggestions matching a query. For example, searching for "meta-n" in the layers typeahead will show the results for this query; but when the query changes to "meta-ne", a new set of results is fetched, which mostly overlaps with the results for "meta-n". The typeahead assumes that the overlapping items are locally cached and have been delivered synchronously, and just appends the new results which don't overlap with the previous query. But because we don't provide any results synchronously, we just end up with the single non-overlapping result in the drop-down. This can be fixed by hacking typeahead.js so that instead of appending asynchronous results, we always overwrite and redraw the whole typeahead menu. This is a temporary fix, and should be properly fixed (when we have time), perhaps by using typeahead.js's associated Bloodhound library. Added a note about the hack to the license file as an explanation of why the unminified JS file is included in Toaster. (Bitbake rev: afbaf326e1123c92952fa71e0e820a4ff83488ca) Signed-off-by: Elliot Smith <elliot.smith@intel.com> Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: migrate typeahead libraryElliot Smith2016-06-155-69/+85
| | | | | | | | | | | | | | Migrate from Bootstrap 2's built-in typeahead to Twitter's typeahead library. This is to facilitate moving to Bootstrap 3, which doesn't have a typeahead. (Bitbake rev: 0748177b40188a6fb735fe1ba1c17294afa4a3d0) Signed-off-by: Elliot Smith <elliot.smith@intel.com> Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: tests Add a BuildTest helper classMichael Wood2016-06-151-1/+1
| | | | | | | | | | | | Add a helper class for running build tests. Subclass this and call the build method to get setup for running tests on the resulting data from a build. (Bitbake rev: 2cafb16033b2f38156e6e0a74c02120f87a4fa92) Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: Elliot Smith <elliot.smith@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: tweaks to recipe file downloadsBelen Barros Pena2016-06-152-9/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | * In the custom images table, show the recipe file and download icon only when the recipe file exists and can be downloaded. * Also in the custom images table, make sure the download icon tooltip shows on hover. * In the custom image details page, show the correct icon (download) next to the recipe file in the right hand column. * In the custom image details page, show the recipe file and download icon in the right hand column only when the recipe file exists and can be downloaded * Also in the custom image details page, simplify the help text we show when the 'download' button is disabled: it gave so much information about what's actually happening under the hood that it was a bit hard to follow. (Bitbake rev: 5d4172bc005efe209de595f6a151ae9ed062d051) Signed-off-by: Belen Barros Pena <belen.barros.pena@linux.intel.com> Signed-off-by: Elliot Smith <elliot.smith@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: testsjs Add call back to append elements on completion of ↵Michael Wood2016-06-151-0/+7
| | | | | | | | | | | | | tests When the tests are complete add some marker elements to the test page DOM which can then looked at for a selenium browser test. (Bitbake rev: 81798ab046b0717614e28e0a339172f3803e451b) Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: Elliot Smith <elliot.smith@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: cooker.py: fix warn() -> warning()Robert Yang2016-06-131-3/+3
| | | | | | | | | | Fixed: DeprecationWarning: The 'warn' method is deprecated, use 'warning' instead (Bitbake rev: a3f464d202dafef4538e66c008cdecb7b8709ed1) Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: data_smart/utils: Add 'd' to the context used for better_eval in ↵Richard Purdie2016-06-132-3/+9
| | | | | | | | | | | | | | | | | | | | | | python expansion If a line like: foo=${@' '.join([d.getVar('D', True) + x for x in (' '.join([d.getVar('FILES_bash-' + p, True) or '' for p in ['lib', 'dev', 'staticdev', 'doc', 'locale', 'ptest']])).split()])} is added to a function like do_install, it fails with Exception name 'd' is not defined. This is due to a change of behaviour in python 3 compared to python 2. Generator expressions, dict comprehensions and set comprehensions are executed in a new scope but list comprehensions in python 2.x are not. In python 3 they all use a new scope. To allow these kinds of expressions to work, the easiest approach is to add 'd' to the global context. To do this, an extra optional parameter is added to better_eval and we use that to add 'd'. (Bitbake rev: 8f74881037bb01013d3d439dc0c269909a198c1c) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: lib/bb/main.py: Fix use of BBPOSTCONF and BBPRECONFMariano Lopez2016-06-091-2/+2
| | | | | | | | | | | | | | The functionality of BBPOSTCONF and BBPRECONF was added in commit 21b314d4d1e5b8fbeb4cc57006f0a110f0b3aa8f but there was a typo in the variable name that raises an exception in bitbake. [YOCTO #9235] (Bitbake rev: 6d1379c8818400e5cdc442e6142f08a110fd5b95) Signed-off-by: Mariano Lopez <mariano.lopez@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: codeparser: Use hashlib for hashing, not hash()Richard Purdie2016-06-031-2/+6
| | | | | | | | | | | | | | | "hash() is randomised by default each time you start a new instance of recent versions (Python3.3+) to prevent dictionary insertion DOS attacks" which means we need to use hashlib.md5 to get consistent values for the codeparser cache under python 3. Prior to this, the codeparser cache was effectively useless under python3 as shown by performance regressions. (Bitbake rev: 12d43cf45ba48e3587392f15315d92a1a53482ef) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: codeparser: Small optimisation to stop repeated hash() callsRichard Purdie2016-06-031-3/+4
| | | | | | | | | No functionality change, just avoids function call overhead in a function which loops heavily. (Bitbake rev: 633c0c19f87a92497a7e9771811cdc953e1b7047) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: fetch2: fix unpacking of deb packagesPaul Eggleton2016-06-031-1/+12
| | | | | | | | | | | | | | | deb packages in modern Debian versions have the data tarball compressed with xz rather than gzip, and thus explicitly extracting data.tar.gz fails. Unfortunately ar doesn't support wildcards matching items to extract, so we have to find out what the name of the file is first and then extract it, relying on tar to figure out how to unpack it based on the filename rather than doing it with pipes and making that determination ourselves. (Bitbake rev: 17ff08d225a8fa7faffd683c028369574954fba9) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>