I personally use (< "4.03") instead of (< "4.03.0"), and I believe that this way to rule out 4.03.x versions would remain correct (and readable) if the negative-"~" convention was adopted, as long we don't use "4.03~foo" as a version number but rather "4.03.0~foo".

(Note that "4.05~dev" could have the nice effect that software configured to pessimistically reject future OCaml releases (< 4.05) could still be built from a development version for testing.)

I must say that this semantics for ~ looks rather nice -- although I agree that writing foo~~ would be a wart and should be avoided.

On Tue, Aug 16, 2016 at 2:37 PM, Damien Doligez <damien.doligez@inria.fr> wrote:

> On 2016-08-12, at 14:50, David Allsopp <dra-news@metastack.com> wrote:
>
> If such a change were agreed, it would also be possible to alter opam lint (or at least opam-repository linting, once that's fully a "thing") to display a lint warning/info that things like ocaml {< "4.05"} probably mean "ocaml" {< "4.05~~"}.

So every mention of an OCaml version number in every opam package description file will have to be suffixed with a ~. And that has to be done before we change the OCaml numbering scheme.

And I still don't know what's the upside, except for "that's how Debian does it"...

-- Damien


--
Caml-list mailing list.  Subscription management and archives:
https://sympa.inria.fr/sympa/arc/caml-list
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners
Bug reports: http://caml.inria.fr/bin/caml-bugs