summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Test that sandbox variables are expandedwillsalmon/expandsandboxWilliam Salmon2020-05-081-0/+6
|
* Expand sandbox values from environmentWilliam Salmon2020-05-081-6/+4
| | | | | If sandbox: target_arch was a variable it was not being expanded, this fixes this.
* Merge branch 'bschubert/fix-template-scanning' into 'master'bst-marge-bot2020-05-081-1/+1
|\ | | | | | | | | .gitlab-ci.yml: Move from license-management to license-scanning See merge request BuildStream/buildstream!1910
| * .gitlab-ci.yml: Move from license-management to license-scanningbschubert/fix-template-scanningBenjamin Schubert2020-05-081-1/+1
|/ | | | | | The former is removed in gitlab 13.0. Effective now. More info at https://docs.gitlab.com/ee/user/compliance/license_compliance/#migration-from-license_management-to-license_scanning
* Merge branch 'bschubert/pylint-setup-py' into 'master'bst-marge-bot2020-05-082-124/+117
|\ | | | | | | | | setup.py: Also run pylint on this file See merge request BuildStream/buildstream!1902
| * setup.py: Also run blackbschubert/pylint-setup-pyBenjamin Schubert2020-05-072-116/+111
| |
| * setup.py: Also run pylint on this fileBenjamin Schubert2020-05-072-8/+6
|/ | | | Also fix the various errors in the file
* Merge branch 'tristan/validate-junction-config' into 'master'bst-marge-bot2020-05-061-0/+3
|\ | | | | | | | | junction.py: Call node.validate_keys() in Plugin.configure() See merge request BuildStream/buildstream!1899
| * junction.py: Call node.validate_keys() in Plugin.configure()Tristan Van Berkom2020-05-061-0/+3
|/
* Merge branch 'willsalmon/useragnet' into 'master'William Salmon2020-05-051-0/+1
|\ | | | | | | | | | | | | _downloadablefilesource.py: Set user agent Closes #1285 See merge request BuildStream/buildstream!1897
| * _downloadablefilesource.py: Set user agentWilliam Salmon2020-05-051-0/+1
|/ | | | | | | The default user-agnet for urllib is widely used for many bots and so is blocked by many servers. Buy using our own then we we are not blocked by gitlab.com etc and are also able to identify buildstream request to servers.
* Merge branch 'ctolentino/casd-timeout' into 'master'bst-marge-bot2020-05-051-4/+15
|\ | | | | | | | | | | | | Relax buildbox-casd timeout Closes #1222 See merge request BuildStream/buildstream!1889
| * casdprocessmanager.py: Check if buildbox-casd process is alive while waiting ↵ctolentino/casd-timeoutctolentino82020-05-051-2/+12
| | | | | | | | for connection
| * casdprocessmanager.py: Relax timeout for establishing buildbox-casd connectionctolentino82020-05-051-2/+3
|/
* Merge branch 'chandan/venv-install-link' into 'master'Tristan Van Berkom2020-05-051-3/+7
|\ | | | | | | | | doc/format_project: Add links related to virtual environments See merge request BuildStream/buildstream!1896
| * doc/format_project: Add links related to virtual environmentschandan/venv-install-linkChandan Singh2020-05-041-3/+7
|/ | | | | Add links to Python's official virtual environment tutorial and our BuildStream virtual environment instructions.
* Merge branch 'tristan/pip-plugin-versioning' into 'master'bst-marge-bot2020-05-0413-13/+366
|\ | | | | | | | | pip plugin origin versioning See merge request BuildStream/buildstream!1894
| * docs/source/format_project.rst: Enhance documentation on plugin origins.Tristan Van Berkom2020-05-041-10/+116
| | | | | | | | | | | | | | | | | | | | | | | | | | This patch: * Corrects some out of date documentation about the `local` origin, as this origin no longer has any form of versioning. * Documents the possibility of using version constraints in the `pip` plugin origin. * Adds some documentation about what to be careful of if one uses API unstable plugins via the `pip` plugin origin.
| * tests/plugins/loading.py: Test failure modes when loading pip pluginsTristan Van Berkom2020-05-041-0/+79
| |
| * _pluginfactory/pluginfactory.py: Implement error reporting for pip originsTristan Van Berkom2020-05-041-2/+27
| | | | | | | | | | | | | | | | | | For plugins loaded from the pip origin, we now support specifying constraints. This is a non-breaking change and only involves specifying a package with constraints when specifying the 'package-name', however there are a few errors errors which can occur as a result, this patch tries to handle them all cleanly and provide the user with useful error messages.
| * _pluginfactory/pluginorigin.py: Store provenance of origins for error reportingTristan Van Berkom2020-05-041-0/+2
| |
| * tests/plugins/loading.py: Added test for loading pip pluingsTristan Van Berkom2020-05-041-0/+46
| | | | | | | | | | | | | | This test is automatically skipped when the required package is not installed, which can happen when running pytest directly, which is supported in order to help distribution maintainers test whether BuildStream works properly on their distribution.
| * tox.ini: Install the sample pip plugin package when running testsTristan Van Berkom2020-05-041-0/+3
| |
| * tests/plugins/pip-samples/sample-plugins: Adding a sample pip plugins packageTristan Van Berkom2020-05-048-1/+93
|/ | | | | | | | | | This commit: * Adds a bare bones BuildStream pip plugin package structure at tests/plugins/pip-samples/sample-plugins * setup.cfg: Adds tests/plugins/pip-samples to the norecursedirs so that we don't consider the dummy plugins as test code
* Merge branch 'tristan/deprecation-warnings-refactor' into 'master'Tristan Van Berkom2020-05-0430-193/+376
|\ | | | | | | | | | | | | Refactor deprecation warning suppression Closes #1291 See merge request BuildStream/buildstream!1892
| * plugin.py: Rework how deprecation warnings are configured.Tristan Van Berkom2020-05-0417-140/+296
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is mostly a semantic change which defines how deprecation warnings are suppressed in a more consistent fashion, by declaring such suppressions in the plugin origin declarations rather than on the generic element/source configuration overrides section. Other side effects of this commit are that the warnings have been enhanced to include the provenance of whence the deprecated plugins have been used in the project, and that the custom deprecation message is optional and will appear in the message detail string rather than in the primary warning text, which now simply indicates that the plugin being used is deprecated. Documentation and test cases are updated. This fixes #1291
| * tests/plugins/loading.py: Migrate tests for found/not found pluginsTristan Van Berkom2020-05-0313-51/+67
| | | | | | | | This new test replaces the test in tests/format/project.py.
| * _pluginfactory/pluginfactory.py: Add provenance to missing plugin errorsTristan Van Berkom2020-05-036-9/+20
|/ | | | | | | | | So far we were only reporting "No Source plugin registered for kind 'foo'", without specifying what bst file with line and column information, this commit fixes it. Additionally, this patch stores the provenance on the MetaSource to allow this to happen for sources.
* Merge branch 'chandan/no-nosoftware' into 'master'bst-marge-bot2020-05-011-4/+0
|\ | | | | | | | | CONTRIBUTING: Remove link for obsolete issue policies See merge request BuildStream/buildstream!1875
| * CONTRIBUTING: Remove link for obsolete issue policieschandan/no-nosoftwareChandan Singh2020-05-011-4/+0
|/ | | | | | | | | | | | | | | | | | | | | As discussed in https://mail.gnome.org/archives/buildstream-list/2020-April/msg00009.html, we want to get rid of the nosoftware subgroup. These issue policies are the only remaining link from here to the nosoftware subgroup. I propose to remove this link because the linked are obsolete and overly process-oriented. Our current practices don't reflect those policies either. For example, I don't think any of us are religiously using labels like backlog/todo/doing etc. In my opinion, the description at https://gitlab.com/BuildStream/buildstream/-/labels is sufficient for documenting what labels mean, and we don't need to force everything to have one label of each category. We can obviously improve the label descriptions if they are lacking.
* Merge branch 'chandan/build-shell-fetch' into 'master'Chandan Singh2020-05-013-10/+47
|\ | | | | | | | | _stream.py: Fetch sources while launching build shells See merge request BuildStream/buildstream!1890
| * _stream.py: Fetch sources while launching build shellschandan/build-shell-fetchChandan Singh2020-04-303-10/+47
|/ | | | | | | Part of https://gitlab.com/BuildStream/buildstream/-/issues/1068. Make behavior of `shell` command similar to other commands that need sources like `build`, `workspace open`, `source checkout` etc.
* Merge branch 'tristan/update-news' into 'master'1.93.3bst-marge-bot2020-04-291-0/+13
|\ | | | | | | | | NEWS: Updating news for 1.93.3 snapshot. See merge request BuildStream/buildstream!1891
| * NEWS: Updating news for 1.93.3 snapshot.Tristan Van Berkom2020-04-291-0/+13
|/
* Merge branch 'tristan/plugin-versions-refactor' into 'master'bst-marge-bot2020-04-29114-692/+729
|\ | | | | | | | | Plugin loading refactor, implement BST_MIN_VERSION See merge request BuildStream/buildstream!1885
| * tox.ini: Update reference to updated plugins with BST_MIN_VERSOIN setTristan Van Berkom2020-04-291-1/+1
| |
| * tests/plugins/loading.py: Added tests for plugin BST_MIN_VERSION guardsTristan Van Berkom2020-04-2910-1/+175
| |
| * plugin.py/pluginfactory.py: Implementing BST_MIN_VERSIONTristan Van Berkom2020-04-2940-3/+170
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The BST_MIN_VERSION guards assert that the BuildStream core which loaded the plugin is compatible with the plugin itself. This commit adds BST_MIN_VERSION to the base plugin.py with documentation informing Plugin authors how to set the minimum version, and also adds the assertions at plugin loading time in pluginfactory.py. This commit also: * Adds the BST_MIN_VERSION specification to all current core plugins * Adds the BST_MIN_VERSION specification to plugins used in test cases
| * tests/plugins/loading.py: New test replaces removed internal testTristan Van Berkom2020-04-297-4/+163
| | | | | | | | | | | | | | | | | | This test tests some of the basic failure modes of plugin loading, which used to be written as internal tests but is not implemented as a proper end-to-end test. This commit also adds some machine readable reason codes to pluginfactory.py so that we can assert the errors more specifically.
| * tests/plugins/deprecationwarnings.py: Moved from it's subdirectoryTristan Van Berkom2020-04-296-1/+1
| | | | | | | | | | Before adding more tests to this directory, just making the directory match more the structure of other test directories.
| * Plugin loading refactor, removing all versioningTristan Van Berkom2020-04-2957-707/+244
|/ | | | | | | | | | | | | | | | Plugin format versioning was decided to be removed for local plugins and any plugins for which we do not load an explicitly provided plugin. For pip, this will be handled with a standard distutils/setuptools approach, allowing users to specify pip style version boundaries in the plugin origins. This patch refactors plugin loading so that all related code goes into the private _pluginfactory module, a new small PluginOrigin type was added to better manipulate loaded origins. Test cases have been removed and will be readded in a following commit, adjusted to new expectations.
* Merge branch 'juerg/sandbox' into 'master'bst-marge-bot2020-04-297-128/+20
|\ | | | | | | | | | | | | Switch preferred sandbox from bwrap to buildbox-run Closes #719 See merge request BuildStream/buildstream!1888
| * .gitlab-ci.yml: Add bwrap jobjuerg/sandboxJürg Billeter2020-04-281-0/+7
| | | | | | | | | | bwrap is no longer the default. This job makes sure that the bwrap code keeps working.
| * .gitlab-ci.yml: Drop buildbox-run jobJürg Billeter2020-04-281-8/+0
| | | | | | | | buildbox-run is now the default.
| * Switch preferred sandbox from bwrap to buildbox-runJürg Billeter2020-04-286-122/+13
| | | | | | | | | | This also enables local builds on non-Linux platforms, if a buildbox-run implementation is available.
| * testing/_utils/site.py: Check that buildbox-run has all dependenciesJürg Billeter2020-04-281-1/+2
| |
| * _platform.py: Reset Sandbox._dummy_reasons in _check_sandbox()Jürg Billeter2020-04-281-0/+1
| | | | | | | | This fixes an isolation issue in the test suite.
| * .gitlab-ci.yml: Update Docker imagesJürg Billeter2020-04-281-1/+1
|/ | | | The fuse3 package is required for buildbox-fuse on Debian.
* Merge branch 'juerg/vdirectory' into 'master'bst-marge-bot2020-04-2813-83/+4
|\ | | | | | | | | Require virtual directory support for element plugins See merge request BuildStream/buildstream!1887
| * element.py: Drop BST_VIRTUAL_DIRECTORYJürg Billeter2020-04-2811-47/+0
| | | | | | | | `Sandbox.get_directory()` no longer exists.