| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
Added a description about artifact names at the beginning of the
artifact commands section, along with a new glossary entry for
artifact names which refers to the description.
|
|
|
|
|
|
|
|
|
|
| |
* When documenting dependency types, add references to the shorthand
convenience lists `build-depends` and `runtime-depends`.
* When documenting the `type` attribute of dependencies, correct the
language referring to the convenience lists to specify `build-depends`
and `runtime-depends` instead of the incorrectly worded
`Build-Depends` and `Runtime-Depends`, which would be invalid keys.
|
| |
|
| |
|
|
|
|
|
|
| |
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.
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
Clarify the few keys which must absolutely be declared in project.conf
if declared at all, these keys cannot be declared in a separate include
file.
|
|
|
|
|
|
|
|
|
| |
Running the test suite requires one to install BuildStream's runtime
dependencies as well, out of which BuildBox is the tricky one. We
already have instructions on how to do that, so we just need to point to
it from the hacking docs.
Closes #1115.
|
| |
|
| |
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
| |
One of the references to the "`.bst` file" term was formatted
incorrectly, and was missing a period.
|
|
|
|
|
|
|
|
| |
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
|
| |
|
|
|
|
|
|
| |
Update any references to the mailing list to now point to:
https://lists.apache.org/list.html?dev@buildstream.apache.org
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This commit:
* Redocuments the `junction.py` element almost in it's entirity
* Describes the `overrides` feature
* Describes how to use `link` elements to derive junction configuration
from subprojects.
* Adds project.conf documentation for junction `duplicates`
* Adds project.conf documentation for junction `internal`
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This commit does the following:
* Move the section about rules on element naming to the beginning
of the document instead of the end.
Element names are probably the first thing you need to know about
elements, not the last.
* Expand this element naming section to also speak about element
addressing, and how to express element paths and how these
can be used across the boundaries of multiple junctions.
It helps to have a single place to discuss this and link to
in the documentation, instead of repetitively explaining in
multiple places that one must specify a filename relative
to a project's element path.
* Update documentation about dependencies to refer to the
element naming and addressing documentation.
* Update the documentation in the `link` and `junction`
elements to link back to the element name documentation.
|
| |
|
| |
|
| |
|
|
|
|
|
| |
Making some examples more consistent with regards to indentation
of YAML, and fixing "recursice -> recursive" spelling mistake.
|
| |
|
|
|
|
|
| |
This allows plugin authors to implement cache keys tests
more easily
|
|
|
|
|
| |
The pip element was copied already to bst-plugins-experimental.
We don't need to have two copies of it.
|
|
|
|
|
| |
This is now part of the BuildStream public API and can be used to
implement new plugins
|
|
|
|
|
| |
Add links to Python's official virtual environment tutorial and our
BuildStream virtual environment instructions.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch:
* Corrects some out of date documentation about the `local` origin,
as this origin no longer has any form of versioning.
* Documents the possibility of using version constraints in the `pip`
plugin origin.
* Adds some documentation about what to be careful of if one uses
API unstable plugins via the `pip` plugin origin.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is mostly a semantic change which defines how deprecation warnings
are suppressed in a more consistent fashion, by declaring such suppressions
in the plugin origin declarations rather than on the generic element/source
configuration overrides section.
Other side effects of this commit are that the warnings have been enhanced
to include the provenance of whence the deprecated plugins have been used in
the project, and that the custom deprecation message is optional and will
appear in the message detail string rather than in the primary warning text,
which now simply indicates that the plugin being used is deprecated.
Documentation and test cases are updated.
This fixes #1291
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Plugin format versioning was decided to be removed for local
plugins and any plugins for which we do not load an explicitly
provided plugin. For pip, this will be handled with a standard
distutils/setuptools approach, allowing users to specify pip
style version boundaries in the plugin origins.
This patch refactors plugin loading so that all related code
goes into the private _pluginfactory module, a new small
PluginOrigin type was added to better manipulate loaded
origins.
Test cases have been removed and will be readded in a following
commit, adjusted to new expectations.
|
|
|
|
| |
This replaces "format-version" documentation.
|
|
|
|
|
|
|
| |
This will be done differently in BuildStream 2, as explained
in this email:
https://mail.gnome.org/archives/buildstream-list/2020-April/msg00017.html
|
|
|
|
|
|
|
|
|
|
|
| |
With BuildStream 2.0, we start with a fresh API, everything that
is present at the time of the 2.0 release can implicitly be considered
to be available since 2.0.
In the future, we will be expressing new API additions using the
min-version semantic versioning style instead of format version too
(so new YAML configurations will be expressed as "since: 2.2" and
so on).
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* "min-version" is specified as a <major>.<minor> point version
and uses the installed BuildStream version instead of having
a separate versioning number for the format.
* The presence of "format-version" is now used to indicate
that we might be loading a BuildStream 1 project.
* For now, where parsing the version at startup is concerned, and
also where `bst init` is concerned, we artificially bump the
detected BuildStream version to 2.0 if we detect a version < 2.0,
these exceptions can be removed once 2.0 is tagged and released.
Summary of changes:
_project.py: Now parse "min-version" and detect "format-version" to
warn about loading a BuildStream 1 project
_versions.py: Remove obsolete BST_FORMAT_VERSION numbers from here
data/projectconfig.yaml: Remove old "format-version" from defaults
utils.py: Added new private _parse_version() helper function, and another
_get_bst_api_version() to get an adjusted API version.
frontend/app.py, frontend/cli.py: Updated `bst init` implementation
testing (buildstream.testing): Updated testing utilities to generate
and use projects with min-version instead of format-version.
tests and examples: Updated to use min-version across the board.
|
| |
|
|
|
|
|
|
|
|
| |
The guidelines are already correct, however they use 1.x as the reference
for this API.
This commit simply changes the guidelines to indicate 2.x to contributors
as the latest major point release to care about.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The way we were using $(foreach ...) here from GNU Make was causing
errors to be ignored, this should really only be used for collecting
target names and such.
In this commit, we instead:
* Collect the SESSION_FILES using $(wildcard ...)
* Use a "%.run:" Rule to run bst2html.py for each session file
separately, ensuring that we bail out the build if the session
generation fails.
* Having the SESSION_FILES depend on the phony target sessions-prep,
ensures that this rule will be called unconditionally, regardless
of the existance of the .run files.
|
|
|
|
|
|
|
|
|
| |
This refreshes the stored sessions and adds the new ones generated
by recent additions to the user guide.
The stored sessions exist to allow contributors to build the
docs without having to build the sessions, which requires an
internet connection and takes longer to build.
|
| |
|
| |
|
| |
|
|
|
|
| |
elements
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Renamed the "Advanced topics" section to "Combining projects", and splitting
up the junctions section into two separate documents, one which describes
the simplest junction example and another which explains how to use
workspaces in conjunction with junctions.
This commit also makes some minor changes the examples, correcting
some grammatical errors, improving links and formatting, also rewording
a `note::` in order to clarify that it would be unusual to junction
a project that is in a subdirectory.
|