[BuildStream] BuildStream 1.6 planning



Hi all,

Since we have started work towards making a 2.0 release[0], I think we
should consider rolling out a 1.6 release too.

The main motivating factors for this are:

  * There are some improvements in the pipeline which can drastically
    change how projects are written in 2.0

    The main example of this that I can think of, is that Jürg has been
    championing the idea of dropping the majority of our defaults from
    project.conf.

    I agree with this stance, these default values for %{prefix} and
    everything are fairly use case specific, and the argument here is
    that if you are going to build something specific, like a Linux
    operating system: you should be able to inherit these values in
    your project.conf through a junction which provides your base
    runtime.

    Unfortunately, the subtle way that include directives have been
    broken in BuildStream 1.x have caused us to not be very well
    prepared for such a move.

    So, I would like to propose that we land a softly breaking change
    and backport this important fix[1] which will greatly improve our
    ability to share code between projects like freedesktop-sdk and
    gnome-build-meta.

    I consider this technical breakage to be "soft" because, if anyone
    has been cross-junction-including files which have project option
    conditional statements in them, they would already be having a very
    hard and confusing time because of the subtle breakage fixed by
    this merge request[1].

  * A 1.6.x series might also be a good time to start adding helpful
    warnings about things which will not work in BuildStream 2.x, as
    pointed out by Abderrahim when we discussed this on IRC last week.


In summary, a 1.6 would be a BuildStream release meant to give people a
chance to rework their projects such that they will be more prepared
for a transition to 2.x once it is ready.

Any thoughts about this ?

Are there any other (simple enough) YAML changes or otherwise useful
changes which we should be considering backporting in order to help
users prepare for 2.x which I'm missing ?

Cheers,
    -Tristan

[0]: https://mail.gnome.org/archives/buildstream-list/2020-April/msg00013.html
[1]: https://gitlab.com/BuildStream/buildstream/-/merge_requests/1851




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]