-
Notifications
You must be signed in to change notification settings - Fork 1.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Batteries.2.9.0 with 4.07.0 support #12599
Conversation
🌤️ opam-lint warnings aebf9e1
☀️ Installability check (9735 → 9736)
|
I believe that the revdep failures are due to programs blocked on batteries for 4.07.0-building now being built, and failing. (Besides the usual unsafe-string suspects.) |
cc76569
to
f2f2e07
Compare
The Please rebase on the current master to resolve the conflicts |
57879a6
to
022312f
Compare
022312f
to
aebf9e1
Compare
All fixed. Thanks! |
Well, thank you @kit-ty-kate :-) |
CHANGES: ## Features/Changes * Mics: fix support for OCaml 5.2 * Compiler: no longer rely on IIFE for scoping variable inside loops * Compiler: avoid parsing bytecode sections twice, jsoo counter part of ocaml#12599 * Lib: add ellipse to canvasRenderingContext2D (@FayCarsons, ocsigen/js_of_ocaml#1555) ## Bug fixes * Compiler: fix global dead code elimination in a toplevel context * Compiler: fix exit-loop-early optim in presence of closure (ocsigen/js_of_ocaml#1561) * Compiler: remove quadratic behavior in generate.ml (ocsigen/js_of_ocaml#1531, ocsigen/js_of_ocaml#1567)
This minor release adds support for OCaml 4.07.0, as well as a certain
number of fixes, improvements and documentation clarification from our
contributors. Thanks in particular to Max Mouratov for his varied
contributions.
This release is compatible with OCaml 4.07.0, but it is not complete
with respect to the standard library of OCaml 4.07.0: this release saw
a lot of changes to the standard library, which have not yet been made
available in the corresponding Batteries module. This means that users
of OCaml 4.07.0 (and Batteries 2.9.0) will have access to these
functions, but users of older OCaml versions (and Batteries 2.9.0)
will not. If you are looking for this kind of backward-compatibility
of new functions, as provided by previous Batteries releases, we
recommend trying the new 'stdcompat' library by Thierry Martinez:
https://github.com/thierry-martinez/stdcompat
Full changelog:
add
BatString.cut_on_char : char -> int -> string -> string
(Kahina Fekir, Thibault Suzanne, request by François Bérenger)
BatString.cut ocaml-batteries-team/batteries-included#807, Add String.cut ocaml-batteries-team/batteries-included#856
add
BatString.index_after_n : char -> int -> string -> int
(Kahina Fekir)
faster BatArray.partition
simpler (and faster?) implementation of BatArray.partition ocaml-batteries-team/batteries-included#829
(Francois Berenger, Gabriel Scherer)
add
BatArray.split: ('a * 'b) array -> 'a array * 'b array
added BatArray.split ocaml-batteries-team/batteries-included#826
(Francois Berenger)
add
BatString.count_string: string -> string -> int
added count_string ocaml-batteries-team/batteries-included#799
(Francois Berenger)
Int: optimized implementation of Safe_int.mul
BatInt.Safe_int.mul performance improvements ocaml-batteries-team/batteries-included#808, BatInt.Safe_int.mul performance improvements ocaml-batteries-team/batteries-included#851
(Max Mouratov)
Fix: in case of conflicted bindings, [Map.union m1 m2] should
prefer the value from [m2], as stated in documentation.
Fix: incorrect behaviour of Map.union ocaml-batteries-team/batteries-included#814
(Max Mouratov)
Fix: [Map.update k1 k2 v m] did not work correctly when [k1 = k2].
A couple of critical fixes in Map.update ocaml-batteries-team/batteries-included#833
(Max Mouratov)
Fix: [Map.update k1 k2 v m] should throw [Not_found] if [k1] is not bound
in [m], as stated in documentation.
A couple of critical fixes in Map.update ocaml-batteries-team/batteries-included#833
(Max Mouratov)
Fix: [Set.update x y s] should throw [Not_found] if [x] is not in [s],
as stated in documentation.
A couple of critical fixes in Map.update ocaml-batteries-team/batteries-included#833
(Max Mouratov)
Fix: documentation of BatList.{hd,last} to match implementation w.r.t
raised exceptions
Corrected documentation for batList {last, hd} ocaml-batteries-team/batteries-included#840, BatList suggests first and last should raise Empty_list ocaml-batteries-team/batteries-included#754
(FkHina)
Fix: [Array.insert] should throw a more relevant message on invalid indices
instead of the generic [invalid_arg "index out of bounds].
The assertion is now documented.
A couple of improvements to Array.insert ocaml-batteries-team/batteries-included#841
(Max Mouratov)
Implementation of [Array.insert] now uses [unsafe_get] and [unsafe_set].
A couple of improvements to Array.insert ocaml-batteries-team/batteries-included#841
(Max Mouratov)
Fix documentation of [String.right].
Fix docstring of String.right ocaml-batteries-team/batteries-included#849, Fix String documentation ocaml-batteries-team/batteries-included#844
(Max Mouratov, reported by Thibault Suzanne)
Fix: [Heap.del_min] should throw [Invalid_argument] with the specified
"del_min" message instead of "find_min_tree".
A clean-up of invalid_arg uses ocaml-batteries-team/batteries-included#850
(Max Mouratov)
More uniform and correct [Invalid_argument] messages.
A clean-up of invalid_arg uses ocaml-batteries-team/batteries-included#850
(Max Mouratov)
Optimization of List.unique_cmp (using Set instead of Map).
List.unique_cmp tweak ocaml-batteries-team/batteries-included#852
(Max Mouratov)
Documentation of List.append and List.concat should not include invalid
estimates of stack usage.
Fix docstrings of List.append and List.concat ocaml-batteries-team/batteries-included#854
(Max Mouratov)
Implementation of String should use unsafe versions of [set] and [get].
BatString.ml should use unsafe versions of set and get ocaml-batteries-team/batteries-included#836
(Max Mouratov, review by Gabriel Scherer)
Fix erroneous mentions of [Different_list_size] in List.mli.
Fix erroneous mentions of [Different_list_size] in List.mli ocaml-batteries-team/batteries-included#857, Inconsistency between interface documentation and implementation in BatList ocaml-batteries-team/batteries-included#744
(Max Mouratov, reported by Christoph Höger)
fix Map.equal (for polymorphic maps) with custom equality function
Map.equal used (=) instead of argument ocaml-batteries-team/batteries-included#865
(Ralf Vogler)
ocamlfind plugin support in META file
(Arlen Cox)
Adding ocamlfind plugin support ocaml-batteries-team/batteries-included#867