summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* _sandboxremote.py: Use the standard SandboxError.jmac/remote-sandbox-errorsJim MacArthur2018-11-061-4/+1
| | | | | Replaces the custom one which was erroneously added during development. Fixes #746.
* Merge branch 'Qinusty/unit-test-utils' into 'master'richardmaw-codethink2018-11-063-3/+78
|\ | | | | | | | | Fix issue with _pretty_size with large numbers of bytes See merge request BuildStream/buildstream!799
| * Add regression test for _pretty_sizeJosh Smith2018-11-062-0/+74
| |
| * utils: Fix _pretty_size() for sizes > 1024TJosh Smith2018-11-061-3/+4
|/
* Merge branch 'juerg/cas' into 'master'Jürg Billeter2018-11-0514-429/+572
|\ | | | | | | | | | | | | Split up artifact cache and CAS cache Closes #659 See merge request BuildStream/buildstream!922
| * Split up artifact cache and CAS cacheJürg Billeter2018-11-059-403/+550
| | | | | | | | | | | | | | | | This changes CASCache from a subclass to a delegate object of ArtifactCache. As the lower layer, CASCache no longer deals with elements or projects. Fixes #659.
| * element.py: Do not include type name of artifact cache in cache keyJürg Billeter2018-11-051-1/+1
| | | | | | | | | | | | | | The artifact cache backend does not affect build outputs and we anyway no longer have pluggable artifact cache backends. This hardcodes CASCache instead of removing the entry completely to avoid cache key changes.
| * _project.py: Remove unused artifacts parameter from load_elements()Jürg Billeter2018-11-054-9/+8
| |
| * element.py: Remove unused artifacts parameter from _new_from_meta()Jürg Billeter2018-11-053-6/+5
| |
| * _project.py: Remove unused artifacts parameter from create_element()Jürg Billeter2018-11-052-3/+2
| |
| * _elementfactory.py: Remove unused artifacts parameter from create()Jürg Billeter2018-11-052-4/+3
| |
| * element.py: Remove artifacts parameter from constructorJürg Billeter2018-11-052-3/+3
|/ | | | Get the artifact cache from the context instead.
* Merge branch 'richardmaw/pytest-dep-update' into 'master'richardmaw-codethink2018-11-051-1/+1
|\ | | | | | | | | dev-requirements: Update pytest dependency to 3.8 See merge request BuildStream/buildstream!930
| * dev-requirements: Update pytest dependency to 3.8Richard Maw2018-11-051-1/+1
|/ | | | | "_frontend/app.py: Set correct element-path in interactive bst-init" added a dependency on the tmp_path test fixture, which was added by 3.8.
* Merge branch 'valentindavid/limit_fetchers_in_overnight_build' into 'master'Javier Jardón2018-11-051-0/+6
|\ | | | | | | | | | | | | Use less fetchers in overnight build to work-around limitations from servers. Closes #742 See merge request BuildStream/buildstream!929
| * Use less fetchers in overnight build to work-around limitations from servers.Valentin David2018-11-051-0/+6
|/ | | | | | Issue happens with sourceware.org server. Fixes #742
* Merge branch 'juerg/remote-execution' into 'master'Jürg Billeter2018-11-051-0/+1
|\ | | | | | | | | element.py: Pass bare_directory also to SandboxRemote() See merge request BuildStream/buildstream!928
| * element.py: Pass bare_directory also to SandboxRemote()juerg/remote-executionJürg Billeter2018-11-031-0/+1
|/ | | | Fixes: 825963b5 ("element: Make "--sysroot" take a bare directory")
* Merge branch 'chiaratolentino/fix-pip-source-regex' into 'master'Chandan Singh2018-11-029-32/+203
|\ | | | | | | | | plugins/sources/pip.py: Accomodate characters '-','.','_' for packages See merge request BuildStream/buildstream!914
| * tests/integration/project/files: Remove pypi-repoctolentino82018-11-024-16/+0
| |
| * plugins/sources/pip.py: Accomodate characters '-','.','_' for packagesctolentino82018-11-025-16/+203
|/
* Merge branch 'danielsilverstone-ct/improve-chainmap-get' into 'master'Tristan Van Berkom2018-11-011-0/+6
|\ | | | | | | | | _yaml.py: Implement `get()` for `ChainMap` See merge request BuildStream/buildstream!919
| * _yaml.py: Implement `get()` for `ChainMap`Daniel Silverstone2018-11-011-0/+6
|/ | | | | | | | | | | | Since the core Python `ChainMap.get()` implements with: self[key] if key in self else default The double-chain-lookup is expensive. This simple change solves that for our ChainMap derived structure. As such it improves matters for #466 somewhat. Signed-off-by: Daniel Silverstone <daniel.silverstone@codethink.co.uk>
* Merge branch 'tristan/empty-manual-element' into 'master'Tristan Van Berkom2018-11-013-20/+7
|\ | | | | | | | | | | | | BREAK: manual.yaml: don't set any default env vars Closes #718 See merge request BuildStream/buildstream!916
| * BREAK: manual.yaml: don't set any default env varsAngelos Evripiotis2018-11-013-20/+7
|/ | | | | | | | | | | | | | | | Remove the 'MAKEFLAGS' and 'V' defaults. Now that there is a specialised 'make' element, these make-specific defaults don't make sense here. This element is meant to be a blank slate for folks to build on. Note that this is a breaking change, that will require some users to make changes to their .bst files if they are expecting these environment variable to be set. _versions.py: BST_FORMAT_VERSION bumped to 18. This fixes issue #718
* Merge branch 'bschubert/remove-pytest-runner' into 'master'Benjamin Schubert2018-11-011-1/+40
|\ | | | | | | | | Remove dependency on pytest-runner See merge request BuildStream/buildstream!886
| * Remove dependency on pytest-runnerBenjamin Schubert2018-11-011-1/+40
|/ | | | | | | | This includes a new command mimicking pytest-runner so that we can drop this dependency This was the only setup_requires dependency that we had and will make like easier for people behind proxies
* Merge branch 'chiaratolentino/bst-init-interactive-elementpath' into 'master'Tristan Van Berkom2018-11-012-1/+33
|\ | | | | | | | | _frontend/app.py: Set correct element-path in interactive bst-init See merge request BuildStream/buildstream!912
| * _frontend/app.py: Set correct element-path in interactive bst-initchiaratolentino/bst-init-interactive-elementpathctolentino82018-10-312-1/+33
|/
* Merge branch 'jonathan/debug-remote-failed-builds' into 'master'Jonathan Maw2018-10-3012-69/+174
|\ | | | | | | | | Jonathan/debug remote failed builds See merge request BuildStream/buildstream!869
| * tests: Add tests for 'bst shell --sysroot'Jonathan Maw2018-10-301-0/+29
| | | | | | | | This is related to #539
| * NEWS: Add item for bst shell --sysroot changesJonathan Maw2018-10-301-0/+4
| |
| * element: Make "--sysroot" take a bare directoryJonathan Maw2018-10-303-8/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | i.e. instead of taking a directory that must contain "root" and "scratch", and treating "root" as the root, use the directory directly. In element.py: * __sandbox takes the `bare_sandbox` arg, to pass into the sandbox's constructor In sandbox.py: * If bare_sandbox, `_root` is the passed-in directory, and `__scratch` is None. * Trying to use `__scratch` when bare_sandbox is True is a bug. In _mount.py: * Don't get the value of `__scratch` if it's not needed. This is part of #539
| * sandbox.py: Remove redundant Sandbox.__directoryJonathan Maw2018-10-301-2/+1
| |
| * tests: Add test that cached build trees are staged in build shellsJonathan Maw2018-10-303-0/+105
| | | | | | | | This is related to #539
| * NEWS: Add item for cached buildtree behaviourJonathan Maw2018-10-301-0/+5
| |
| * Element: Use cached buildtree in build shells and failure shellsJonathan Maw2018-10-305-21/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This includes changes in app.py: * Interactive failure shell no longer uses the failed build sysroot, defaulting to the cached build tree. Changes in element.py are: * Errors caused by building don't store the failed build sysroot, instead storing that a sandbox can be created to debug the error. * When staging sources, will stage the element's cached build tree if it exists. Changes in _exceptions.py: * BstError.sandbox is now a flag of whether a sandbox can be opened up to debug the error. Changes in widget.py: * Don't try to print any information about the sandbox. Changes in _message.py: * Fix documentation so Message.sandbox is not a directory any more. This is part of #539
| * element.py: Always clean up the rootdirJonathan Maw2018-10-302-44/+2
|/ | | | | | | | | | | | | We shouldn't need it to persist now that we cache failed build dirs. This change breaks the test `tests/integration/shell.py::test_sysroot_workspace_visible`. I can no longer see a use-case for this test. AIUI, it tested that the failed build sysroot stored in the builddir has the workspace's files in, despite the workspace being unmounted. I believe this behaviour is made redundant by cached buildtrees. This fixes part of #539
* Merge branch 'tristan/architecture-docs' into 'master'Tristan Van Berkom2018-10-2941-3/+8384
|\ | | | | | | | | Tristan/architecture docs See merge request BuildStream/buildstream!907
| * doc: Moved cachekey and sandboxing writings into the architecture sectionTristan Van Berkom2018-10-294-2/+2
| |
| * doc: Adding new architecture document about how the scheduler works.Tristan Van Berkom2018-10-2910-0/+2126
| |
| * doc: Adding new architecture document about highlevel program flowTristan Van Berkom2018-10-294-0/+1831
| |
| * doc: Adding new architecture document describing the dependency modelTristan Van Berkom2018-10-298-0/+904
| |
| * doc: Adding new architecture document describing the data modelTristan Van Berkom2018-10-2912-0/+1437
| |
| * doc: Adding new architecture document with initial "Overview of modules" sectionTristan Van Berkom2018-10-295-0/+2078
| |
| * MANIFEST.in: Include SVG and ODG files in source distributionsTristan Van Berkom2018-10-291-0/+2
| |
| * doc/source/format_intro.rst: Adding link anchor for include directivesTristan Van Berkom2018-10-291-0/+3
| |
| * doc/source/conf.py: Added `images` directory for statically included filesTristan Van Berkom2018-10-291-1/+1
|/
* Merge branch 'bschubert/fix-binary-output-capture' into 'master'Benjamin Schubert2018-10-293-11/+18
|\ | | | | | | | | | | | | Don't close stdout when running 'checkout' to stdout Closes #486 See merge request BuildStream/buildstream!905
| * tests/frontend/buildcheckout.py: Enable test_build_checkout_tarball_stdoutdanielsilverstone-ct/preserve-stdoutbschubert/fix-binary-output-captureDaniel Silverstone2018-10-261-2/+1
| | | | | | | | | | | | | | With the new support for saving the stdout FDs cleanly, and binary mode capture in runcli, enable the tarball-to-stdout test. Signed-off-by: Daniel Silverstone <daniel.silverstone@codethink.co.uk>