summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Merge branch 'bwh/fix-git-remote-name-check-1.4' into 'bst-1.4'bst-1.4Tristan Van Berkom2020-08-201-1/+1
|\ | | | | | | | | git source plugin: Fix check for remote existence See merge request BuildStream/buildstream!2031
| * git source plugin: Fix check for remote existenceBen Hutchings2020-08-201-1/+1
|/ | | | | | | | | | | | | | | When checking whether a remote exists in the cached git repository, we currently perform a substring match on the output of 'git remote'. This fails when there is an existing remote name that contains the name we're looking for. This was fixed by the rewrite of git fetching in !1808, but that change seems unsuitable for the stable 1.4 branch. Instead, split the command output into a list and check that the remote name is in the list. Closes #1372.
* Adding CODEOWNERSTristan van Berkom2020-07-241-0/+4
| | | | | | | | | As per this announcement regarding formalizing committers: https://mail.gnome.org/archives/buildstream-list/2020-May/msg00023.html We are now using a CODEOWNERS file to ensure only maintainers can greenlight patches for protected branches in gitlab.
* NEWS: Update news for 1.4.3 release1.4.3Tristan Van Berkom2020-05-131-0/+18
|
* Merge branch 'tristan/bst-1.4/fix-ostree-api' into 'bst-1.4'Tristan Van Berkom2020-05-1210-8/+120
|\ | | | | | | | | Fix and test OSTree repo.remote_gpg_import() calls See merge request BuildStream/buildstream!1922
| * tests/sources/ostree.py: Add test of fetching a signed repo.Tristan Van Berkom2020-05-128-0/+86
| | | | | | | | | | | | | | | | This consequently adds: * A gpg home directory with a gpg key * An exported public gpg key for the test
| * tests/testutils/repo/ostree.py: Add ability to create signed reposTristan Van Berkom2020-05-121-7/+19
| |
| * _ostree.py: Fix call to remote_gpg_import() againTristan Van Berkom2020-05-121-1/+15
|/ | | | | | | | | Last time we fixed this, we actually only adjusted it to work with the new API but stopped supporting the old API, which is still widely in use (debian 9, debian 10 and ubuntu 18 all still use ostree v2019.1). This time, lets add an except block here and fallback to the older API if the new API raises a TypeError.
* Merge branch 'willsalmon/backport1897' into bst-1bst-1.4-branchpointJürg Billeter2020-05-071-0/+1
|\ | | | | | | | | | | _downloadablefilesource.py: Set user agent See merge request BuildStream/buildstream!1898
| * _downloadablefilesource.py: Set user agentwillsalmon/backport1897William Salmon2020-05-051-0/+1
|/ | | | Backporting https://gitlab.com/BuildStream/buildstream/-/merge_requests/1897
* Merge branch 'valentindavid/bst-1/retry-cas-calls' into 'bst-1'bst-marge-bot2020-04-171-11/+73
|\ | | | | | | | | Handle grpc errors of type UNAVAILABLE and ABORTED See merge request BuildStream/buildstream!1867
| * Handle grpc errors of type UNAVAILABLE and ABORTEDvalentindavid/bst-1/retry-cas-callsValentin David2020-04-161-11/+73
|/ | | | | | | | | | | Requests with error UNAVAILABLE are retried directly. They are typically issue with setting connection which can happen when the server is slow at accepting new connections. Requests with errors ABORTED are converted to temporary exceptions so that the scheduler can retry the task. Fixes #815
* Merge branch 'jjardon/fdsdk_1908' into 'bst-1'bst-marge-bot2020-04-091-2/+2
|\ | | | | | | | | bst-1: .gitlab-ci.yml: Use latest fdsdk 19.09.9 for overnigth tests See merge request BuildStream/buildstream!1862
| * .gitlab-ci.yml: Use latest fdsdk 19.09.9 for overnigth testsJavier Jardón2020-04-091-2/+2
|/
* Merge branch 'abderrahim/options-1' into 'bst-1'bst-marge-bot2020-04-083-13/+43
|\ | | | | | | | | [bst-1] _project.py: resolve options before running the final assertions See merge request BuildStream/buildstream!1857
| * _project.py: resolve options before running the final assertionsabderrahim/options-1Abderrahim Kitouni2020-04-053-13/+43
|/ | | | | | otherwise, having an optional list append in the configuration wouldn't work This also avoids special casing for element and source overrides
* Merge branch 'jjardon/bst-1-fedora-31' into 'bst-1'bst-marge-bot2020-04-052-7/+7
|\ | | | | | | | | bst-1: Add current stable fedora 31 for tests See merge request BuildStream/buildstream!1853
| * Use current stable fedora 31 for testsJavier Jardón2020-04-051-6/+6
| |
| * buildstream/_ostree.py: call remote_gpg_import() correctlyJavier Jardón2020-04-051-1/+1
|/ | | | | The C code didn't change but the annotation was fixed in v2019.2-10-gaa5df899
* Merge branch 'jjardon/bst-1-debian-10' into 'bst-1'bst-marge-bot2020-04-041-1/+8
|\ | | | | | | | | bst-1: Run test in Debian 10 as well See merge request BuildStream/buildstream!1855
| * Add Debian 10 testsjjardon/bst-1-debian-10Javier Jardón2020-04-041-1/+8
|/
* Merge branch 'jjardon/bst-1-collections' into 'bst-1'bst-marge-bot2020-04-042-14/+14
|\ | | | | | | | | Use collections.abc for Mapping, Iterable See merge request BuildStream/buildstream!1854
| * Use collections.abc for Mapping, IterableThomas Coldrick2020-04-042-14/+14
|/ | | | | | | In _yaml.py and _frontend/complete.py we were getting pylint warnings for using collections.Mapping and collections.Iterable, which are abstract classes now provided from collections.abc. This patch just uses the classes from the right place.
* Merge branch 'tristan/bst-1/news-update-1.4.2' into 'bst-1'1.4.2Tristan Van Berkom2020-04-011-0/+16
|\ | | | | | | | | NEWS: Updated for 1.4.2 release See merge request BuildStream/buildstream!1849
| * NEWS: Updated for 1.4.2 releaseTristan Van Berkom2020-04-011-0/+16
|/
* Merge branch 'abderrahim/fuse3-1' into 'bst-1'Tristan Van Berkom2020-04-011-1/+1
|\ | | | | | | | | mount: don't pass nonempty option See merge request BuildStream/buildstream!1842
| * mount: don't pass nonempty optionabderrahim/fuse3-1Abderrahim Kitouni2020-04-011-1/+1
|/ | | | | fusermount3 doesn't support it, and this prevents buildstream from working in systems that have fuse 3
* Merge branch 'tristan/bst-1/testsuite-py38' into 'bst-1'Tristan Van Berkom2020-04-012-0/+14
|\ | | | | | | | | Pass CI with python3.8 See merge request BuildStream/buildstream!1846
| * .gitlab-ci.yml: Enable CI with python 3.8tristan/bst-1/testsuite-py38Tristan Van Berkom2020-03-311-0/+13
| |
| * pip source plugin: Add support for python3.8 host interpretorTristan Van Berkom2020-03-311-0/+1
|/ | | | | | | In order to run host pip, this plugin tries to use the correct interpretor. The test suite does not pass on python3.8 without this change.
* Merge branch 'abderrahim/absolute-whitelist' into 'bst-1'bst-marge-bot2020-03-306-6/+57
|\ | | | | | | | | Accept absolute paths in overlap whitelist See merge request BuildStream/buildstream!1841
| * element.py: Accept absolute paths in overlap whitelistsabderrahim/absolute-whitelistAbderrahim Kitouni2020-03-306-6/+57
|/ | | | | | | | | | | This allows use of variables such as %{prefix} and matches the documentation. To avoid breaking compatibility with older bst 1.x versions, it still accepts paths without the leading slash. based on 1ae1796854055f4b9e3202d9629e059b327f3a8d Fixes #721
* Merge branch 'abderrahim/etag-1' into 'bst-1'Javier Jardón2020-03-291-1/+5
|\ | | | | | | | | _downloadablefilesource.py: don't download the file if etag matches See merge request BuildStream/buildstream!1838
| * _downloadablefilesource.py: don't download the file if etag matchesabderrahim/etag-1Abderrahim Kitouni2020-03-241-1/+5
|/ | | | | Some servers don't honor the 'If-None-Match' header and send the file even with matching etag
* Merge branch 'valentindavid/bst-1/python3.8-with-backports' into 'bst-1'Valentin David2020-03-107-72/+124
|\ | | | | | | | | [BuildStream 1.4] Backport changes to enable Python 3.8 See merge request BuildStream/buildstream!1830
| * scheduler.py: Prevent the asyncio loop from leaking into subprocessesBenjamin Schubert2020-03-102-10/+81
| | | | | | | | | | | | | | | | | | | | | | Having a running asyncio loop while forking a program is not supported in python and doesn't work as expected. This leads to file descriptors leaking and the subprocesses sharing the same loop as the parents. This also leads to the parent receiving all signals the children receive. This ensures we don't leek our asyncio loop in the workers we fork.
| * Enable testing on Python 3.8 (not in CI though).Valentin David2020-03-104-14/+16
| |
| * _scheduler/scheduler.py: Enforce SafeChildWatcherChandan Singh2020-03-101-0/+6
| | | | | | | | | | In Python 3.8, `ThreadedChildWatcher` is the default watcher that causes issues with our scheduler. Enforce use of `SafeChildWatcher`.
| * scheduler.py: Only run thread-safe code in callbacks from watchersBenjamin Schubert2020-03-101-1/+7
| | | | | | | | | | | | | | | | Per https://docs.python.org/3/library/asyncio-policy.html#asyncio.AbstractChildWatcher.add_child_handler, the callback from a child handler must be thread safe. Not all our callbacks were. This changes all our callbacks to schedule a call for the next loop iteration instead of executing it directly.
| * job.py: Only start new jobs in a `with watcher:` blockBenjamin Schubert2020-03-101-26/+5
| | | | | | | | | | | | | | | | The documentation (https://docs.python.org/3/library/asyncio-policy.html#asyncio.AbstractChildWatcher) is apparently missing this part, but the code mentions that new processes should only ever be called inside a with block: https://github.com/python/cpython/blob/99eb70a9eb9493602ff6ad8bb92df4318cf05a3e/Lib/asyncio/unix_events.py#L808
| * job.py: Don't use 'terminate_wait', as it uses waitpid()Benjamin Schubert2020-03-102-23/+11
|/ | | | | | | | | | | Using `join()` on the subprocess calls `waitpid()` under the hood which breaks our child watcher. Instead, schedule a task for 20 seconds later that will effectively kill the tasks. Note that the task will only be called if we still have active jobs. Otherwise, it will just be skipped and we won't wait as long.
* Merge branch 'bschubert/backport-1690' into 'bst-1'Benjamin Schubert2020-01-161-2/+8
|\ | | | | | | | | app.py: Also catch SystemError with click.Abort See merge request BuildStream/buildstream!1701
| * app.py: Also catch SystemError with click.Abortbschubert/backport-1690Benjamin Schubert2020-01-161-2/+8
|/ | | | | | | | | This is to catch an error when sometimes the readline buffer of stdin gets corrupted during the second CTRL-C we send, and leads to having BuildStream hand and throw a SystemError. Catching the SystemError and treating as a click.Abort doesn't seem to have adverse effects.
* Merge branch 'abderrahim/backport-947' into 'bst-1'Darius Makovsky2019-11-272-3/+3
|\ | | | | | | | | plugins/elements/cmake.yaml: always specify variable types See merge request BuildStream/buildstream!1549
| * plugins/elements/cmake.yaml: always specify variable typesAbderrahim Kitouni2019-11-262-3/+3
|/ | | | | | | cmake sometimes misinterprets relative paths as relative to the current directory if this is not specified. See freedesktop-sdk/freedesktop-sdk#431 adjust tests/format/variables.py accordingly.
* Merge branch 'abderrahim/no-sdk-gnome-org' into 'bst-1'Javier Jardón2019-11-195-8/+8
|\ | | | | | | | | remove references to sdk.gnome.org See merge request BuildStream/buildstream!1715
| * 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 'jjardon/doc_install_update' into 'bst-1'Javier Jardón2019-09-041-23/+38
|\ | | | | | | | | doc/source/install_linux_distro.rst: Update info See merge request BuildStream/buildstream!1585
| * doc/source/install_linux_distro.rst: Update infoJavier Jardón2019-09-041-23/+38
|/
* .gitlab-ci.yml: Use new way to define code_quality jobJavier Jardón2019-09-041-22/+3
| | | | | | See https://docs.gitlab.com/ee/ci/examples/code_quality.html Backported from 66664ddf14a40a0b29b7fb4f7f90ac10ef62f052