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

Re: [MirageOS-devel] mirageos 3.0 : let's break some APIs



hello,

I guess first of all we should think about what features we want to have
in the next major version?  I don't believe we'll get everything done
and right in this release, there'll be another breaking release (e.g. an
API to write traceroute? a generic tcpdump (module type for packet
processing)? protocol stacking?) ;)

Personally, I'd like to see:
- full integration of solo5 (as a third backend, next to xen and unix)
- improved errors (based on
https://github.com/mirage/mirage-dev/pull/107 /
https://github.com/mirage/mirage/pull/383 /
https://github.com/mirage/mirage-www/pull/274 /
https://github.com/mirage/mirage-http/pull/24 / likely others)

On 18/05/2016 18:28, Mindy wrote:
> * rename the `V1` and `V1_LWT` modules to something unversioned, like
> `S` or `MIRAGE`
> * replace or augment the `error` types with Result.result

this should lead to a way how to deal with errors in mirage, or?

> * break up `mirage-types` into a package per module type, so module
> types can be independently changed and released

this is a great suggestion!

> * changes to the semantics of functions in low-level module type
> definitions like `FS` and `NETWORK`

we should come to some consent (and document this) which layer does
error handling e.g. bounds check. if we have for example a mirage-fat on
top of mirage-block-ccm on top of a mirage-block device, it is not clear
to me which layer does bounds checks on read/write (or does each of it
do them)?  some notes in
https://github.com/mirage/mirage-fs-unix/pull/18#issuecomment-200395673


other (minor) things off the top of my head:
- CLOCK module type update https://github.com/mirage/mirage/issues/442
- get rid of CONSOLE in mirage-types where we don't need it anymore
(TCP/IP comes to mind)
- adjust IP signature (set ip_addresses and netmasks separately is a bad
decision imho, also we have atm only support for a single IP afaics, but
the interface claims multiple (same with gateways))
- move C stubs into their libraries
https://github.com/mirage/mirage-platform/issues/124
- renew website https://github.com/mirage/mirage-www/issues/432
- see
https://github.com/mirage/mirage/issues?q=is%3Aissue+is%3Aopen+label%3A%22breaks+compatibility%22

and since 2.0 we already achieved (incomplete, browsing through
mirage/CHANGES.md):
- tracing
- no camlp4
- partial IPv6
- RO tar support
- functoria
- logging
- entropy/TLS stack


hannes

_______________________________________________
MirageOS-devel mailing list
MirageOS-devel@xxxxxxxxxxxxxxxxxxxx
http://lists.xenproject.org/cgi-bin/mailman/listinfo/mirageos-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.