| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
| |
This will be required in the slower algorithm with error reporting, and
is already used to fix error reporting for references to undefined variables
in toplevel variable substitutions.
|
|
|
|
|
| |
Try using enumerate() for look instead of repeatedly indexing
the list throughout a while loop.
|
|
|
|
|
| |
Seems to add a slight calling overhead to separate these implementations
as cdef.
|
|
|
|
|
|
| |
* Reduce typechecking using some typecasts
* Reduce dictionary lookups by using a temporary variable
|
|
|
|
|
|
|
|
|
|
| |
Use _expand_var() and _expand_value_expression() as gateways for
handling KeyError and RecursionError and still calling _check_variables()
for now as a fallback.
Moved implementations to _fast_expand_var() and _fast_expand_value_expression()
and in a later commit we will fallback to the non-recursive algorithm, and
remove _check_variables() completely as this will be obsoleted.
|
|
|
|
|
|
|
|
| |
comments
Now the public facing APIs use `cpdef` and all implementations use `cdef`,
this is a more explict approach for ensuring fast paths are used whenever
invoking cython code from cython functions.
|
| |
|
|
|
|
|
| |
Report provenance of the input ScalarNode when it refers to an
undefined variable.
|
| |
|
|
|
|
| |
Instead of functions at the toplevel.
|
| |
|
|
|
|
|
| |
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.
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Junctions are loaded before all variables can loaded. So there should
not be errors for unused variables that are defined using undefined
variables.
Also this checks for undefined variables in the same time as looking
for cycles. This will allow to show more errors to the user when both
type of errors happen in the same time. This also simplify error
handling in `_variables.pyx`.
|
|\
| |
| |
| |
| | |
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.)
|
|\
| |
| |
| |
| | |
coding_guidelines.rst: Update documentation around type annotation
See merge request BuildStream/buildstream!1988
|
|/
|
|
|
|
|
|
| |
After
https://lists.apache.org/thread.html/r99119ddf038b3baa63afa3edf82ca28104f02550e6424dc5f14cb360%40%3Cdev.buildstream.apache.org%3E,
we now allow mypy in any part of the codebase.
- Also update previous documentation about typing public API
|
|\
| |
| |
| |
| | |
tar.py: Don't import 'dev' nodes
See merge request BuildStream/buildstream!1990
|
|/
|
|
|
| |
This filters out all the 'dev' nodes when extracting tar files since
they are not supported by any of our backends anyways
|
|\
| |
| |
| |
| | |
simplify stream interactions (Remove Notifications)
See merge request BuildStream/buildstream!1985
|
| |
| |
| |
| | |
Call directly the relevant methods from the stream to the scheduler
|
| |
| |
| |
| |
| | |
This removes all notifications left coming from the scheduler, and
replaces them by callbacks
|
| |
| |
| |
| |
| | |
The stream is itself calling the `run` method on the scheduler, we don't
need another indirection
|
| |
| |
| |
| |
| | |
We are calling the scheduler, and it returning correctly already tells
us this.
|
| |
| |
| |
| |
| | |
We are calling the scheduler, and it returning correctly already tells
us this.
|
| |
| |
| |
| |
| | |
Stop using 'Notifications' for retries, the state is the one handling
the callbacks required for every change in status of elements
|
| |
| |
| |
| |
| | |
This moves all implementations of 'start_time' into a single place
for easier handling and removing roundtrips of notifications
|
| |
| |
| |
| |
| | |
The State is the interface between both, there is no need to do multiple
round-trips to handle such notifications
|
|/
|
|
|
| |
The messenger should be the one receiving messages directly, we don't
need this indirection
|
|\
| |
| |
| |
| | |
app.py: Remove unnecessary operation in _message()
See merge request BuildStream/buildstream!1984
|
| | |
|