summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* WIPjjardon/license_complianceJavier Jardón2019-11-231-0/+1
|
* .gitlab-ci.yml: USe gitlab's builtin License Compliance analyzerJavier Jardón2019-11-231-0/+1
| | | | See https://docs.gitlab.com/ee/user/application_security/license_compliance/
* Merge branch 'aevri/casdprocessmanager' into 'master'bst-marge-bot2019-11-225-197/+289
|\ | | | | | | | | cascache: refactor, extract CASDProcessManager and CASDConnection See merge request BuildStream/buildstream!1638
| * CASDChannel: don't need to call GetCapabilitiesAngelos Evripiotis2019-11-221-5/+1
| | | | | | | | | | It doesn't seem like we need to call GetCapabilities here, as we're not querying anything. Remove the call to save some time.
| * CASCache: comment on need for __getstate__Angelos Evripiotis2019-11-221-0/+5
| |
| * cascache: _CASCacheUsageMonitor has channelAngelos Evripiotis2019-11-222-14/+6
| | | | | | | | | | | | Change _CASCacheUsageMonitor to hold a CASDChannel instead of it's parent CASCache. This means that when in spawn mode, we don't need to pickle the CASCache, only the CASDChannel.
| * Extract casd_channel logic to CASDChannelAngelos Evripiotis2019-11-223-71/+113
| | | | | | | | | | | | | | | | | | | | | | | | Encapsulate the management of a connection to CASD, so we can hide the details of how it happens. This will make it easier to port to Windows, as we will have to take a different approach there. Remove the _LimitedCASDProcessManagerProxy, as CASDChannel does everything the child jobs will need. Also make get_local_cas() public, since it is already used outside of the CASCache class. Make get_cas() public to match.
| * CASDProcessManager: 'release_resources' conventionAngelos Evripiotis2019-11-222-16/+12
| | | | | | | | | | | | | | Elsewhere in cascache, cleaning up is called 'release_resources', so follow that convention for consistency. Also fix a case where self.process was not set to None in terminate().
| * cascache: extract CASDProcess in new moduleAngelos Evripiotis2019-11-224-141/+202
|/ | | | | | | | | | Make it easier to specialize handling of the buildbox-casd process on Windows, by splitting it into it's own class. This allows us to encapsulate some decisions, and decreases the complexity of the CASCache class. Take some of the complexity out of this file by splitting the responsibility of managing the process out to another file.
* Merge branch 'jjardon/debian-10' into 'master'bst-marge-bot2019-11-221-1/+6
|\ | | | | | | | | .gitlab-ci.yml: Use Debian10 instead Debian9 See merge request BuildStream/buildstream!1727
| * .gitlab-ci.yml: Use Debian9 instead Debian10Javier Jardón2019-11-231-1/+6
|/ | | | Debian 10 is the current stable version
* Merge branch 'jjardon/fedora-31' into 'master'bst-marge-bot2019-11-221-13/+13
|\ | | | | | | | | Use fedora31 instead older versions See merge request BuildStream/buildstream!1728
| * WIP: Use fedora31 instead older versionsJavier Jardón2019-11-221-13/+13
|/ | | | Fedora 31 is the current release and Fedora 29 is EOL
* Merge branch 'tlater/track-cleanup' into 'master'bst-marge-bot2019-11-2211-354/+198
|\ | | | | | | | | | | | | Simplify the codebase using post-tracking removal simplicity of the pipeline Closes #1199, #1195, #1194, and #1193 See merge request BuildStream/buildstream!1718
| * _stream.py: Refactor `Stream._load()` a littleTristan Maat2019-11-221-32/+72
| | | | | | | | | | | | There was some duplicated functionality between `Stream._load()` and `Stream._load_tracking()`, this is factored out and hopefully makes the cognitive complexity a bit lower.
| * Remove `Element._schedule_tracking()`Tristan Maat2019-11-223-42/+8
| |
| * Fix stacktraces during element loadingTristan Maat2019-11-222-11/+16
| | | | | | | | | | | | | | | | | | | | These were caused by unhandled errors from plugins when calling `Source.get_consistency()`. This doesn't really solve the problem, since that interface is still used un-wrapped elsewhere, but it enables removing `Element.__schedule_tracking()` and fixes a bug. Ultimately we'd like to remove `Source.get_consistency()`, so this isn't too long-term of a problem.
| * Remove early skipping of already-fetched sourcesTristan Maat2019-11-221-5/+1
| |
| * Simplify queue managementTristan Maat2019-11-222-15/+4
| |
| * Schedule elements instead of "requiring" themTristan Maat2019-11-224-70/+11
| |
| * Remove all `--track` optionsTristan Maat2019-11-225-194/+101
|/
* Merge branch 'jjardon/fix-overnight' into 'master'bst-marge-bot2019-11-191-1/+1
|\ | | | | | | | | | | | | .gitlab-ci.yml: Track new version of freedesktop-sdk to fix overnigth test Closes #1207 See merge request BuildStream/buildstream!1720
| * .gitlab-ci.yml: Track new version of freedesktop-sdk to fix overnigth testJavier Jardón2019-11-201-1/+1
|/ | | | | | This version tracks correct mesa-aco repo Fixes #1207
* Merge branch 'abderrahim/no-sdk-gnome-org-2' into 'master'Javier Jardón2019-11-195-8/+8
|\ | | | | | | | | | | | | doc/examples/flatpak-autotools: remove references to sdk.gnome.org Closes #690 See merge request BuildStream/buildstream!1719
| * doc/examples/flatpak-autotools: remove references to sdk.gnome.orgAbderrahim Kitouni2019-11-195-8/+8
|/ | | | download from flathub instead, and update to 1.6 as flathub doesn't include 1.4
* Merge branch 'traveltissues/1170' into 'master'bst-marge-bot2019-11-192-2/+6
|\ | | | | | | | | | | | | Improve help message for workspace soft-reset Closes #1170 See merge request BuildStream/buildstream!1710
| * Improve help message for workspace soft-resetDarius Makovsky2019-11-192-2/+6
|/
* Merge branch 'tlater/annihilate_update_state' into 'master'bst-marge-bot2019-11-186-136/+254
|\ | | | | | | | | | | | | Remove update_state Closes #1054 See merge request BuildStream/buildstream!1660
| * element.py: Refactor __update_ready_for_runtime()Tristan Maat2019-11-181-19/+30
| | | | | | | | | | | | Just as with the previous commit, inspired by our code quality linter. Poor practice from the previous function probably snuck in here too.
| * element.py: Refactor __update_strict_cache_key_of_rdeps()Tristan Maat2019-11-181-14/+26
| | | | | | | | | | This is on suggestion of our code quality linter - it should make understanding the pre-requisites of the function simpler.
| * element.py: Reduce calls to __update_cache_key_non_strictTristan Maat2019-11-182-3/+24
| |
| * element.py: Make ex-_update_state() components privateTristan Maat2019-11-181-17/+19
| |
| * element.py: Remove `_update_state()`Tristan Maat2019-11-181-16/+3
| |
| * element.py: Only run `_schedule_assemble()` when necessaryTristan Maat2019-11-181-29/+27
| |
| * element.py: Only `element.__update_artifact_state` when necessaryTristan Maat2019-11-181-7/+9
| |
| * element.py: Only run `element.__update_cache_keys` when necessaryTristan Maat2019-11-181-13/+29
| |
| * Create _initialize_state() to capture an _update_state() use caseTristan Maat2019-11-185-20/+73
| |
| * Only run `element.__update_source_state` when necessaryTristan Maat2019-11-185-7/+24
| |
| * element.py: Remove workspace-specific codeTristan Maat2019-11-182-36/+13
| | | | | | | | | | This was previously used to handle unstable cache keys, but has been obsoleted by @traveltissues' recent improvements.
| * element.py: Refactor `_schedule_assemble`Tristan Maat2019-11-181-10/+32
|/ | | | | | Move the logic that decides whether we can schedule an element for assembly *into* this function. This makes it a fair bit easier to grok, and reduces the complexity of `_update_state()`.
* Merge branch 'chandan/re-enable-import-check' into 'master'bst-marge-bot2019-11-181-1/+1
|\ | | | | | | | | plugins/sources/deb: Re-enable import check for arpy See merge request BuildStream/buildstream!1714
| * plugins/sources/deb: Re-enable import check for arpyChandan Singh2019-11-151-1/+1
|/ | | | | | | | | In the olden days on linting BuildStream, we did not had plugin dependencies installed in the environment. Now that we run these things via tox, we have all the dependencies (including plugin dependencies) in the virtual environment that tox uses to run the commands. So remove the disabling of import errors for `arpy` module.
* Merge branch 'tlater/fix-test-env' into 'master'bst-marge-bot2019-11-151-4/+4
|\ | | | | | | | | cascache.py: Use a shebang that won't fail on /bin/bash-less systems See merge request BuildStream/buildstream!1712
| * cascache.py: Use a shebang that won't fail on /bin/bash-less systemsTristan Maat2019-11-151-4/+4
|/ | | | | | `#!/usr/bin/env bash` should generally be used instead to avoid breaking on systems that do not *have* a `/bin/bash`. This is just a test, but rather annoying on my machine.
* Merge branch 'traveltissues/1171' into 'master'bst-marge-bot2019-11-151-1/+1
|\ | | | | | | | | _stream: Force workspace removal See merge request BuildStream/buildstream!1709
| * _stream: Force workspace removalDarius Makovsky2019-11-151-1/+1
|/
* Merge branch 'chandan/black' into 'master'Chandan Singh2019-11-15285-14002/+12216
|\ | | | | | | | | Use Black to format code See merge request BuildStream/buildstream!1703
| * Start linting doc/source/conf.pyChandan Singh2019-11-142-45/+40
| | | | | | | | | | | | | | | | | | | | | | Add `doc/source/conf.py` to the filelist for Black and Pylint. Previously this file was not covered by any of the linters, so this patch includes one-off sweeping changes for the formatting. To make pylint happy, we had to disable a warning about defining a variable called `copyright` since that's a built-in. It's unlikely that we will ever need the built-in `copyright()` in this module, so it seems safe to disable it.
| * doc/source/hacking: Remove pycodestyle, add BlackChandan Singh2019-11-142-16/+26
| | | | | | | | | | | | | | | | | | | | | | Now that code formatting is managed by Black, and we don't need to run `pycodestyle` separately, remove corresponding mentions from hacking documentation. Add documentation on how to run Black. Move out linting and formatting into a separate section for better readability.
| * Reformat code using BlackChandan Singh2019-11-14275-13933/+12097
| | | | | | | | | | | | | | As discussed over the mailing list, reformat code using Black. This is a one-off change to reformat all our codebase. Moving forward, we shouldn't expect such blanket reformats. Rather, we expect each change to already comply with the Black formatting style.