| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|\
| |
| |
| |
| | |
testing._sourcetests: Don't special case 'local' in parameter list
See merge request BuildStream/buildstream!1317
|
|/
|
|
|
|
|
|
|
|
|
|
| |
The 'local' kind is hard coded in the parameter list of on test in
testing._sourcetests as so will always run regardless of what plugins
have been registered.
Remove this special casing by duplicating the test in the local source
specific test.
Ideally, the local source should have a Repo implementation and be
registered with the templated tests.
|
|\
| |
| |
| |
| | |
Reduce the amount of times we call Element._update_state()
See merge request BuildStream/buildstream!1312
|
| |
| |
| |
| | |
Nothing can happen at this point
|
|/ |
|
|\
| |
| |
| |
| | |
tests/testutil/python_repo.py: fixed executable path when running pip
See merge request BuildStream/buildstream!1313
|
|/
|
|
|
| |
Using `sys.executable` is a safer option as that is the interpreter
that is currently being used
|
|\
| |
| |
| |
| | |
Make Integration cache fixture available in testing package
See merge request BuildStream/buildstream!1307
|
|/
|
|
|
|
| |
The cli_integration fixture provided in testing.runcli depends on the
integration cache fixture. This was missed when cli_integration was
originally exposed.
|
|\
| |
| |
| |
| | |
Simplify metadata within Artifact class
See merge request BuildStream/buildstream!1314
|
| |
| |
| |
| |
| |
| | |
The returned key was only being used to reference or create the
keyed dicts within the metadata methods. Keeping key as a default
optional parameter may later be found redundant.
|
| |
| |
| |
| |
| |
| | |
As with the metadata simplification, the key is internalised to the
element's Artifact member as such it is redudant to return the key
which was used.
|
|/
|
|
|
|
| |
As the Artifact instance within element represents a single artifact
with the keys internalised, this removes the need to have keyed dicts
for the extracted artifact metadata.
|
|\
| |
| |
| |
| | |
.gitlab-ci.yml: Updating overnight tests to test ported freedesktop-sdk
See merge request BuildStream/buildstream!1308
|
|/
|
|
|
|
|
|
|
| |
Now that BuildStream 2 APIs have diverged, we maintain a branch of
freedesktop-sdk which supports BuildStream 2 and uses bst-plugins-experimental
instead of bst-external.
This commit updates our overnight tests to check that we're not breaking
our builds against a ported freedesktop-sdk project.
|
|\
| |
| |
| |
| | |
Revert !1164 - Manage GC during pipeline load
See merge request BuildStream/buildstream!1310
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This change was initialy introduced as it provided a minor gain in the
load time of the elements, pre-scheduler.
For the base-files subset of the debian-stack, this gain was ~2 seconds.
However, with it, came a fairly significant cost to peak memory usage (~100M).
Additionally, the benchmarks have highlighted that this patch has introduced
some cost during build time, where the build of the base-files subset of the
debian-like project has increased by ~90 seconds and peak memory by ~100M
This reverts commit 746aa7a63c4d06b1caa012a35c970b43e0166faa and
commit d55039c33685d267fd8834ecc5d16030c1385325.
|
|\
| |
| |
| |
| |
| |
| | |
setup.py: Include buildstream.testing datafiles in package_data
Closes #1008
See merge request BuildStream/buildstream!1309
|
|/
|
|
|
|
|
| |
* Remove `include_package_data=True` from setup.py
* Collect datafiles for buildstream.testing by adding them to `package_data`
Fixes #1008
|
|\
| |
| |
| |
| |
| |
| | |
stack.py: Stop creating empty bst directory
Closes #998
See merge request BuildStream/buildstream!1301
|
|/
|
|
|
|
|
|
|
|
|
| |
It seems like this hack was added as a workaround for OSTree's
limitations to commit an empty directory, originally in
https://gitlab.com/BuildStream/buildstream/commit/91940a6cba193ac0e20c01008335617847be27a5.
Since we do not have this limitation anymore, stop creating this empty
directory.
Fixes #998.
|
|\
| |
| |
| |
| | |
Fix building the docs
See merge request BuildStream/buildstream!1303
|
| |
| |
| |
| | |
String starting with a "%" character need to be quoted.
|
|/
|
|
|
|
|
|
|
|
|
|
| |
Sphinx 1.7, released in February 2018 moved the sphinx.apidoc module to
sphinx.ext.apidoc, with an alias and a deprecation warning in place so
users know to port their code.
The compatibility alias was removed in Sphinx 2.0, so we need to move to
the new module name.
Fortunately, since the new module name is more than a year old, this
shouldn't break anything for anybody.
|
|\
| |
| |
| |
| | |
Add support for defining target for junction elements
See merge request BuildStream/buildstream!1293
|
| | |
|
| | |
|
|/
|
|
|
|
|
|
|
|
|
| |
Add support for specifying target of a junction element to be a
sub-sub-project as a configuration option. When such a target is
defined, the junction element is not allowed to have any sources.
This was discussed in the following mailing list thread:
https://mail.gnome.org/archives/buildstream-list/2019-April/msg00025.html
Since this adds new configuration, also bump `BST_FORMAT_VERSION`.
|
|\
| |
| |
| |
| |
| |
| | |
Ensure templated source tests aren't collected unconditionally
Closes #995
See merge request BuildStream/buildstream!1297
|
|/
|
|
|
|
|
|
| |
Ensure that when specifying either a subset of tests to run, the
templated source tests are not automatically collected, regardless of
whether or not they are desired.
Fixes #995
|
|\
| |
| |
| |
| |
| |
| | |
Follow-up from "Artifact 'abstraction' class"
Closes #955
See merge request BuildStream/buildstream!1271
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When we determine that current cache keys are to be discarded, we
should also discard the associated members for correctness. This
should act as a safeguard against accessing Artifact instances that
have discarded cache keys.
A side effect of this is the querying of element buildtree state
from cli methods on elements that don't have a cached artifact
would lead to the artifact member methods not being reachable.
Ensuring the element is cached before trying to call said accessor
methods resolves this.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
As the artifact object now stores keys, it allows for the simplification
of metadata methods. Transitioning the metadata members to Artifact
also means the private accessor methods can be removed from Element
which reduces the overhead of syncing private variables across the
two classes via parameters.
With the key and metadata handling now being internalised within
Artifact, a temporary Artifact for the last_successful incremental
build is created for correctness. This should help guarantee that an
Artifact object is never used to access different artifacts.
|
| |
| |
| |
| |
| |
| | |
This was being accessed via a local private method that wasn't
augmenting the output as such it can be moved to match
_cached_failure.
|
| |
| |
| |
| |
| | |
This was being accessed via a local private method that wasn't
augmenting the output as such it can be moved.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The Artifact instance within Element is now initialised when the
relevant keys are available, with the weak & strong keys being
in the constructor. It also introduces the notion of a strict_artifact,
which is used to make a distinction of the Artifact keys and cached
state dependant on the context defined strictness. The keys are updated
when a relevant key change occurs. As the keys are now internalised
within Artifact, the majority of key determinsim and parameterisation
in public Artifact method calls are now redundant.
|
| |
| |
| |
| |
| |
| | |
This moves the cached assertion to happen before calling the
Artifact method, which removes the need to loopback for the
same purpose.
|
|/
|
|
|
|
| |
Switch to using the private _get_subdirectory() in places
where we are interacting directly with a subdirectory of the
artifact.
|
|\
| |
| |
| |
| | |
Rename 'plugintestutils' package to 'testing'
See merge request BuildStream/buildstream!1291
|
|/
|
|
|
|
|
|
|
| |
- Rename plugintestutils to testing.
- Don't run the tests from bst-plugins-template. This imports
buildstream.plugintestutils so will have to be disabled to get
through CI. This can be re nabled once bst-plugins-template has been
patched.
|
|\
| |
| |
| |
| | |
Fix empty external tests
See merge request BuildStream/buildstream!1295
|
|/
|
|
|
|
|
| |
If the list of external plugin tests is empty, tox -e pyXX-external
will fail attempting to move a coverage file which doesn't exist.
Allow the offending mv command to fail.
|
|\
| |
| |
| |
| |
| |
| | |
Fix non strict push
Closes #990
See merge request BuildStream/buildstream!1290
|
| |
| |
| |
| | |
This is a regression test for issue #990
|
|/
|
|
|
|
|
|
|
| |
Marking all elements as pulled in Stream.push() ensures that cache
keys are resolved before pushing elements, otherwise state is left
unresolved in non-strict mode while elements are awaiting to download
an artifact by it's strict cache key.
Fixes #990
|
|\
| |
| |
| |
| | |
Expose templated source tests
See merge request BuildStream/buildstream!1261
|
| | |
|
| | |
|
| | |
|