[BuildStream] BuildStream 2.0 - must have's
- From: Chandan Singh <chandan chandansingh net>
- To: buildstream-list gnome org
- Subject: [BuildStream] BuildStream 2.0 - must have's
- Date: Tue, 15 Oct 2019 18:23:29 +0100
Hi all,
In one of the previous BuildStream Gathering event, it was decided that
BuildStream 2.0 will be "ready when it's ready". I don't think much has changed
there but I wanted to capture the issues that must be resolved before 2.0 so
that we can plan for it accordingly.
The aim of this thread is not to decide everything here and now, but rather to
capture all decisions that need to be made before we can make a stable release.
Sandboxing
----------
* Removal of sandbox-related code from BuildStream itself. Hard-dependency on
BuildBox for sandboxing.
* Workspace incremental builds are supported via BuildBox backend.
Plugins
-------
* Agreement on which plugins remain in BuildStream Core, and which move out.
* Other plugins moving into domain-specific repositories, exact split pending
discussion.
* BuildStream testing infrastructure needs to take into account external plugin
repositories while running its own tests.
* Plugin API cleanup - some things were done in a non-ideal way before we
decided to break API wholesale in 2.0. This includes things like private base
class for git source, downloadable file source etc. Now that we are breaking
API anyway, we might as well clean up those things.
* Related to above point, we should also review existing plugins and amend the
ones that are using private BuildStream API.
CLI
---
* Agreement on consistent CLI.
* All breaking changes to the CLI that have been planned/proposed need to get
finalized and merged.
Artifact Server
---------------
* Consider moving it to a separate project, as it is not directly related to
BuildStream Core.
* Either way, need to decide what (if any) guarantees we want to provide for it
since we expect it to change when FetchAPI is more standardized. That is
expected to happen sometime next year.
Stability guarantees
--------------------
* We have defined what stability guarantees we want to provide. I don't want to
define this right now but potentially it could include stability of things
like the CLI, Plugin API, cache keys etc.
Performance
-----------
* BuildStream 2.0 must not be slower than BuildStream 1.0 for common operations
on projects - big and small.
* It must be scalable, i.e. must not get slower when adding more workers.
---
That's the main areas that I can think of. If you can think of anything else,
please reply back to this message.
Once we have a list that people agree on, my aim is to convert these items into
GitLab issues and tag them with some tag indicating that they are needed for
BuildStream 2. That way anyone wanting to know what's blocking BuildStream 2.0
release will be able to do so by looking at all issues with that tag.
Thanks,
Chandan
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]