| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
| |
In the test_cache_key_fatal_warnings() test, use the same project name
in both generated project directories in order to pass the tests in
the case that elements are guaranteed to have differing cache keys
for differeing element/project names (which is the case when we consider
the "build-root" in the cache key unconditionally).
|
| |
|
|\
| |
| |
| |
| | |
NEWS: Prepare for next development snapshot - 1.93.5
See merge request BuildStream/buildstream!2029
|
|/
|
|
|
| |
Among other things, this will allow BuildStream plugins that rely on our
`testing` module to update to more recent pytest versions.
|
|\
| |
| |
| |
| |
| |
| | |
Bump minimum version requirement for ruamel.yaml
Closes #1265
See merge request BuildStream/buildstream!2028
|
|/
|
|
|
|
|
|
|
|
|
|
| |
ruamel.yaml <= 0.16.6 suffers from a bug where ruamel's yaml dumper
crashes when used on a sequence that has comments before it. In
BuildStream, this manifests in form of issues like #1265.
See upstream issue at https://sourceforge.net/p/ruamel-yaml/tickets/335.
Also, add a regression test for it.
Fixes #1265.
|
|\
| |
| |
| |
| | |
Minor documentation fixes
See merge request BuildStream/buildstream!2034
|
| | |
|
|/
|
|
|
|
| |
The loader has supported dependencies explicitly being ``all`` for the
dependency type (instead of only "build", "runtime" and unspecified) for
a long time, but this was not properly documented.
|
|\
| |
| |
| |
| | |
_frontend/cli: Add --deps `build` & `run` values for `source track --deps`
See merge request BuildStream/buildstream!2027
|
| | |
|
| | |
|
|/
|
|
|
|
|
| |
This is part of #1349. This patch will conclude the first part of that
issue, i.e. ensuring that the possible options for `--deps` are
consistent across all commands (with the exception of `--deps plan` that
we will handle separately).
|
|\
| |
| |
| |
| | |
regression-test for ".bst" artifact checkout bug
See merge request BuildStream/buildstream!2014
|
|/ |
|
|\
| |
| |
| |
| |
| |
| | |
Use Remote Asset API for artifact and source caches
Closes #1273 and #1272
See merge request BuildStream/buildstream!1978
|
| | |
|
| | |
|
| |
| |
| |
| | |
GetInstanceNameForRemote() has been deprecated.
|
| | |
|
| |
| |
| |
| | |
Replaced by Remote Asset API Fetch and Push services.
|
| |
| |
| |
| | |
Replaced by Remote Asset API Fetch and Push services.
|
| |
| |
| |
| | |
They no longer differ among subclasses.
|
| |
| |
| |
| |
| | |
This migrates the source cache from the BuildStream Source protocol to
the Remote Asset API.
|
| |
| |
| |
| |
| |
| |
| | |
This migrates the artifact cache from the BuildStream Artifact protocol
to the Remote Asset API.
Co-authored-by: Sander Striker <s.striker@striker.nl>
|
| | |
|
| |
| |
| |
| | |
Co-authored-by: Sander Striker <s.striker@striker.nl>
|
| |
| |
| |
| |
| |
| |
| |
| | |
Use a separate Cli instance with a separate local cache for the second
pull in `test_recently_pulled_artifact_does_not_expire()` to ensure the
complete artifact is pulled. If only a part of the artifact is pulled,
there is no guarantee that the other blobs of that artifact won't
expire.
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
|/
|
|
| |
Use grpcio-tools 1.28.1, matching grpcio from requirements.txt
|
|\
| |
| |
| |
| | |
Kill MetaElement
See merge request BuildStream/buildstream!2021
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This dramatically affects the load process and removes one
hoop we had to jump through, which is the creation of the extra
intermediate MetaElement objects.
This allows us to more easily carry state discovered by the Loader
over to the Element constructor, as we need not add additional state
to the intermediate MetaElement for this. Instead we have the Element
initializer understand the LoadElement directly.
Summary of changes:
* _loader/metaelement.py: Removed
* _loader/loadelement.py: Added some attributes previously required on
MetaElement
* _loader/loader.py: Removed _collect_element() and collect_element_no_deps(),
removing the process of Loader.load() which translates LoadElements into
MetaElements completely.
* _loader/init.py: Export LoadElement, Dependency and Symbol types, stop
exporting MetaElement
* _loader/metasource.py: Now take the 'first_pass' parameter as an argument
* _artifactelement.py: Use a virtual LoadElement instead of a virtual
MetaElement to instantiate the ArtifactElement objects.
* _pluginfactory/elementfactory.py: Adjust to now take a LoadElement
* _project.py: Adjust Project.create_element() to now take a LoadElement,
and call the new Element._new_from_load_element() instead of the
old Element._new_from_meta() function
* element.py:
- Now export Element._new_from_load_element() instead of Element._new_from_meta()
- Adjust the constructor to do the LoadElement toplevel node parsing instead
of expecting members on the MetaElement object
- Added __load_sources() which parses out and creates MetaSource objects
for the sake of instantiating the element's Source objects. Consequently
this simplifies the scenario where workspaces are involved.
* source.py: Adjusted to use the new `first_pass` parameter to MetaSource when
creating a duplicate clone.
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Instead of having an assertion here, lets just have an early return
and make the __resolved_initial_state variable internal private
(with two leading underscores).
We also stop checking for it in _pipeline.py before resolving state.
Some background:
* We only defer _initialize_state() to a later stage because
it can be a resource intensive task which interrogates the
disk or the local CAS, thus we have the Pipeline iterate
over the instantiated elements and resolve them separately
for better user feedback.
* Some "first pass" elements must have their state initialized
earlier, i.e. the "link" and "junction" elements need to be
usable during the load sequence.
|
|\
| |
| |
| |
| | |
CI: Update BuildBox to 0.0.14, add Fedora 32
See merge request BuildStream/buildstream!2025
|
| |
| |
| |
| |
| | |
Python 3.8 is now covered by Fedora 32. There is no longer a need to use
a special Debian image for Python 3.8.
|
| |
| |
| |
| | |
Test coverage is not available yet with Python 3.8 (#1173).
|
| | |
|
|/ |
|
|\
| |
| |
| |
| | |
CI fixes for Python 3.8 and Breezy
See merge request BuildStream/buildstream!2024
|
| |
| |
| |
| | |
Coverage is still broken with Python 3.8 (#1173).
|
| |
| |
| |
| |
| | |
Coverage is still broken with Python 3.8 (#1173). Don't enable it by
default.
|
|/
|
|
| |
Fedora 32 has replaced Bazaar with Breezy.
|
|\
| |
| |
| |
| | |
.gitlab-ci.yml: Drop tests-fedora-30 job
See merge request BuildStream/buildstream!2022
|