| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
| |
Document the valid symbols that can be used as part of the
`message-format`. And, in case of `element-format`, redirect to
`bst show --help` to avoid duplicating the help text in two places.
Fixes #510.
|
|\
| |
| |
| |
| | |
Reintroduce install instructions to docs
See merge request BuildStream/buildstream!1999
|
| |
| |
| |
| | |
They are not part of core anymore
|
|/
|
|
|
|
|
|
|
|
| |
This is mostly a copy of the install from source instructions from
https://buildstream.build/install.html.
Edits have been made to focus more on Buildstream 2.
Sections for tarball installation and package installation have
been removed, as they cannot currently be used for BuildStream 2.
Docker section has been moved to the docker-image repository.
Docs have been reduced down to a single page.
|
|\
| |
| |
| |
| | |
tests/format/variables.py: Increase timeout
See merge request BuildStream/buildstream!2008
|
|/
|
|
|
|
|
| |
With sometimes very slow runners, this test has been found to timeout
more often after the recent refactoring.
Double the timeout to avoid erronously failing CI.
|
|\
| |
| |
| |
| |
| |
| | |
Rework handling of cached failures
Closes #967
See merge request BuildStream/buildstream!1970
|
| |
| |
| |
| |
| |
| | |
builds
The old one tested that retrying the failed build doesn't actually retry
|
| | |
|
| | |
|
|/ |
|
|\
| |
| |
| |
| | |
Append lists when merging conditional statements
See merge request BuildStream/buildstream!2002
|
| |
| |
| |
| |
| |
| | |
Added tests to ensure that conditional statements don't get overwritten
when performing composition of one dictionary on top of another due to
include processing.
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
During composition of project.conf, it can happen that we
are including and composing node hierarchies before options
are resolved and before we are ready to evaluate conditional
statements.
Without this patch, conditional statements are treated like
regular sequences, causing existing conditional statements to
be overwritten by subsequently composited conditional statements
without ever having been resolved.
This patch introduces a special case for composing sequences,
when composing a sequence that is a conditional statement, the
sequence is appended instead of overwriting the underlying
list.
Note that precedence of declarations in including vs included
yaml fragments did raise some concern, and a test in the following
commit is added to cover this case. Composition of conditional lists
on top of other conditional lists are unconditionally appended,
however the semantics of includes ensures that the including fragment's
conditionals is always composited *on top* over the included fragment,
ensuring that we have the correct pecedence even when compositing
yet to be resolved conditional directives.
|
|\
| |
| |
| |
| |
| |
| | |
Add a remote cache to overnight builds
Closes #897
See merge request BuildStream/buildstream!2004
|
|/
|
|
|
| |
This means the over nights will also push and pull when they did not in
the past.
|
|
|
|
|
|
|
|
|
| |
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.
|
|\
| |
| |
| |
| | |
Variables non-recursive and lazy resolution refactor
See merge request BuildStream/buildstream!1973
|
| |
| |
| |
| |
| |
| | |
Check that lazy variable resolution allows using variables
in junction definitions which would not successfully resolve if
we needed to resolve synchronously.
|
| |
| |
| |
| |
| |
| |
| |
| | |
Variables are resolved on demand until Variables.check() is explicitly called,
allowing junctions to use variables without requiring that they be completely
resolved.
Approach is courtesy of Valentin David.
|
| |
| |
| |
| |
| | |
Ensure that we get the expected provenance when expanding a variable
included in an overlap whitelist entry.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* Test scenarios where a junction needs to resolve variables
in order to configure a subproject, but where some other variables
may be derived from the same subproject.
In this scenario we allow partial resolution of variables
for junction elements.
* Enhanced the undefined variables and circular reference tests
to also check for the expected provenances.
* Test for deep variable resolution
Test variable indirection with 50, 500 and 5000 variables:
* 50 - tests generally large indirections in the recursive algorithm,
which is limited to 200 recursions
* 500 - tests that the non-recursive algorithm works for successful
outcomes and not only for error resolution
* 5000 - tests that the iterative algorithm works and ensures it
is not discarded, as a recursive algorithm cannot be implemented
to support this depth with python (which limits itself to
merely 1000 stack frames).
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Main enhancements here include:
* Support for deeply nested variable declarations, removing the
limitations of the recursive variable resolution algorithm.
We were unable to achieve equal performance with the iterative
resolution algorithm, so we now have the recursive approach as
the fast path and only support 200 recursions with this approach
before falling back on the iterative code path, which will support
deep variable resolution and take care of error reporting.
* Better error reporting for undefined variables.
Variables.subst() now requires a ScalarNode and not a simple `str`,
making it more difficult for the core to substitute an undefined
variable without providing the provenance of where that value
expression was declared.
Code changes:
* _variables.pyx: Complete rewrite
* exceptions.py: Added new LoadErrorReason.CIRCULAR_REFERENCE_VARIABLE
* element.py: Pass ScalarNode to Variable.subst() when substituting overlap
whitelists.
|
|\
| |
| |
| |
| | |
element.py: don't use timed activity for staging every artifact
See merge request BuildStream/buildstream!1968
|
|/
|
|
|
| |
Staging now takes very little time, so we have two lines per artifact
with no benefit. Use a STATUS line instead.
|
|\
| |
| |
| |
| | |
Remove the suggestion that BuildGrid can be used as an artifact server
See merge request BuildStream/buildstream!1998
|
|/
|
|
|
|
|
|
|
|
| |
BuildGrid's CAS can be used as artifact storage, but BuildGrid no longer
supports being used as an Artifact Cache, since it doesn't implement the
new proto-based approach to artifacts.
This commit makes this current situation clear in the docs, rather than
incorrectly suggesting the use of BuildGrid for the `index` and `both`
cache types.
|
|\
| |
| |
| |
| | |
.gitlab-ci.yml: Minor spring cleaning
See merge request BuildStream/buildstream!1996
|
| |
| |
| |
| | |
The buildstream user was previously created but was not used.
|
|/
|
|
|
| |
This variable is undefined, and was probably missed during some previous
cleanup. At present, this acts as a no-op.
|
|\
| |
| |
| |
| | |
Remove Aarch64 from overnights
See merge request BuildStream/buildstream!1994
|
|/
|
|
| |
This stage has been removed as we dont have docker images for it any more.
|
|\
| |
| |
| |
| | |
loader.py: use the full name of the element when looking up a workspace
See merge request BuildStream/buildstream!1971
|
|/
|
|
|
| |
This fixes a bug where buildstream would ignore the opened workspace on a
cross-junction element.
|
|\
| |
| |
| |
| | |
_platform/platform.py: Remove outdated comment
See merge request BuildStream/buildstream!1995
|
|/
|
|
|
|
|
|
| |
"Preferred" sandboxes used to be a thing when we had sandbox
implementations in BuildStream Core.
This should probably have been removed at the same time as dropping the
notion of preferred sandboxes, but that was likely an oversight.
|
|\
| |
| |
| |
| |
| |
| | |
Fix including of files across linked junction boundaries
Closes #1359
See merge request BuildStream/buildstream!1993
|
| |
| |
| |
| | |
boundaries
|
| |
| |
| |
| |
| |
| |
| | |
link elements need to be treated the same way as junctions in the
load process.
This fixes issue #1359
|
|/ |
|
|\
| |
| |
| |
| |
| |
| | |
Test freedesktop-sdk against buildstream2 in CI
Closes celduin/bsps/bst-boardconsumption#21 and #1334
See merge request BuildStream/buildstream!1987
|
|/
|
|
|
|
| |
Use the current 'main' bst2 branch of freedesktop-sdk, and use tag
1.93.4 of bst-plugins-experimental (contains an important fix for
flatpak_image.py)
|
|\
| |
| |
| |
| | |
doc/main_glossary.rst: Fix formatting of .bst file reference
See merge request BuildStream/buildstream!1974
|
|/
|
|
|
| |
One of the references to the "`.bst` file" term was formatted
incorrectly, and was missing a period.
|
|\
| |
| |
| |
| | |
Update bst-plugins-experimental to 1.93.4
See merge request BuildStream/buildstream!1991
|
|/
|
|
| |
This removes the 'ostree' extra and some build dependencies
|
|\
| |
| |
| |
| | |
fix tab-completion: hardcode default min version
See merge request BuildStream/buildstream!1989
|
|/
|
|
|
|
|
| |
Hardcodes the default min version as "2.0", instead of using a function.
(The function was causing an ImportError during tab completion,
because it attempts to import "__version__", which isn't available
at tab completion time.)
|
|\
| |
| |
| |
| |
| |
| |
| |
| | |
'master'
Don't strip '.bst' from user-supplied checkout dir
Closes #1361
See merge request BuildStream/buildstream!1992
|
|/
|
|
|
|
|
|
| |
Allows user to supply a directory name ending in '.bst' for "bst
artifact checkout", without buildstream removing '.bst' from the end.
(It's only supposed to remove '.bst' if the user didn't supply a
directory name, and buildstream is auto-generating a name based on the
target name.)
|