Conversation
ocaml_version.ml
Outdated
| v4_14; v5_0; v5_1; v5_2; v5_3; v5_4 ] | ||
|
|
||
| let recent = [ v4_08; v4_09; v4_10; v4_11; v4_12; v4_13; v4_14; v5_0; v5_1; v5_2; v5_3; v5_4 ] | ||
| let significant = [ v4_08; v4_14; v5_2; v5_3; v5_4 ] |
There was a problem hiding this comment.
I would use [ v4_08; v4_14; v5_2 ] @ last 2 recent, to reduce the maintenance burden when adding new releases, with let last n li = n |> List.rev |> List.take n |> List.rev.
(Or maybe you want [ v4_08; v4_14 ] @ last 3 recent?)
There was a problem hiding this comment.
I think a general rule is hard to come by here; Jane Street is skipping 5.3 and rebasing OxCaml from 5.2 to 5.4 (cc @mshinwell to confirm), which means that 5.3 will never be worth keeping around as long as 5.4. I'm not aware of any other 5.x users who have a specific version they want to keep.
There was a problem hiding this comment.
Currently @Octachron is updating this file when new OCaml releases come out. Is it clear for him how to update this specific declaration when 5.5 comes out? There is a sort of specification in the mli comment (which is distant from the definition), and you seem to be unsure of what should be done when a new release comes out. If I was the one updating the file I would prefer a simple rule to know what to do. (Even better if it is put directly in the code, so that I don't have to wonder about it at all.) The simple rule can of course be changed, for example if Oxcaml policy evolves.
There was a problem hiding this comment.
Yes automating is a good idea, pushed in c1cd183
- : Ocaml_version.t list = [4.08.1; 4.11.2; 4.14.3; 5.2.1; 5.3.0; 5.4.1]
cc @mtelvers