Folks,

as some of you know, various breaking changes in Mirage/Solo5 (both from an
API/ABI and user point of view) have been in the pipeline for some time
now.

In order to unblock these changes and progress Mirage/Solo5 development
towards a new release, as of today, I have:

1. Added upstream bounds on the Mirage/Solo5 packages [1] currently
published in OPAM, so that existing releases will continue to work. These
are constrained to Solo5 <= 0.3.0, in practice this will give you the last
formally released version of Solo5 (0.2.2-1). If you are actively following
Solo5 development this is probably not what you want (see below).

2. Resurrected the Solo5/opam-solo5 [2] OPAM repository.  This repository
contains development versions of all Mirage/Solo5 packages (version
dev~solo5), pointing at the Git master.

3. Switched the Travis CI for Git master of all Mirage/Solo5 packages to
build against the above repository using EXTRA_REMOTES.

3.1 As part of this, following up on an earlier thread [3] where we reached
consensus on not supporting OCaml versions older than 4.04.2, updated the
OPAM metadata and Travis build matrix for all Mirage/Solo5 packages to
reflect this.

What this means for you:

1. If you are a user of the last formally released version of Mirage/Solo5,
based on Solo5 0.2.2 and wish to stay on the stable release, you don't need
to do anything.

2. If you are using/plan to use Mirage/Solo5 based on Solo5 master (to get
e.g. FreeBSD vmm support, or ARM64 support, etc.) or otherwise to follow
Solo5 development, you should add the Solo5/opam-solo5 repository as an
OPAM remote and update + upgrade your packages. As mentioned above, this
repository will only work with OCaml 4.04.2 through (currently) 4.06.0.

With that boring repository and metadata juggling out of the way, now the
fun can begin:

I will start merging some of the pending PRs this week, at which point I'll
also update the Solo5/solo5 repository README.md to point people at these
instructions.

At some point I will also update the CI for mirage-skeleton to build the
Solo5 targets against Solo5 master; I may also add some new end to end
tests using the new VM-based Solo5 CI so that we actually run the whole
stack as opposed to just compile-testing it.

-mato

[1] For reference, this affects at least the following OPAM packages:

solo5-kernel-ukvm
solo5-kernel-virtio
ocaml-freestanding
mirage-solo5
mirage-block-solo5
mirage-bootvar-solo5
mirage-console-solo5
mirage-net-solo5

[2] 
https://lists.xenproject.org/archives/html/mirageos-devel/2017-11/msg00006.html

[3] https://github.com/Solo5/opam-solo5


_______________________________________________
MirageOS-devel mailing list
MirageOS-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/mirageos-devel

Reply via email to