mirror of
https://github.com/c-cube/ocaml-containers.git
synced 2025-12-05 19:00:31 -05:00
get ready for 3.4
This commit is contained in:
parent
c99f7818c3
commit
943ce7f734
8 changed files with 25 additions and 7 deletions
15
CHANGELOG.md
15
CHANGELOG.md
|
|
@ -1,5 +1,20 @@
|
|||
# Changelog
|
||||
|
||||
## 3.4
|
||||
|
||||
- Add `CCOpt.get_exn_or` and deprecate `CCOpt.get_exn`
|
||||
- CCRAL: add `get_and_remove_exn` operation
|
||||
- CCString: add `CCString.uniq`
|
||||
- refactor `CCHash` to use FNV in many combinators
|
||||
- CCInt: improve perf by using a single implementation of popcount using int64
|
||||
|
||||
- fix: CCRAL.remove does not always remove
|
||||
- fix(sexp): re-export the `loc` type to the functor's argument's type
|
||||
- refactor and clarify `cutoff` in `String.edit_distance`
|
||||
- fix(CCInt): make sure hash is always positive
|
||||
|
||||
- big upgrade to CI thanks to @Fardale
|
||||
|
||||
## 3.3
|
||||
|
||||
- feat: add code-generator for optimal bitfields; add tests
|
||||
|
|
|
|||
|
|
@ -1,8 +1,9 @@
|
|||
opam-version: "2.0"
|
||||
version: "3.3"
|
||||
version: "3.4"
|
||||
author: "Simon Cruanes"
|
||||
maintainer: "simon.cruanes.2007@m4x.org"
|
||||
synopsis: "A set of advanced datatypes for containers"
|
||||
license: "BSD-2"
|
||||
build: [
|
||||
["dune" "build" "-p" name "-j" jobs]
|
||||
["dune" "build" "@doc" "-p" name ] {with-doc}
|
||||
|
|
|
|||
|
|
@ -1,7 +1,8 @@
|
|||
opam-version: "2.0"
|
||||
version: "3.3"
|
||||
version: "3.4"
|
||||
author: "Simon Cruanes"
|
||||
maintainer: "simon.cruanes.2007@m4x.org"
|
||||
license: "BSD-2"
|
||||
synopsis: "An extension of containers for threading"
|
||||
build: [
|
||||
["dune" "build" "-p" name "-j" jobs]
|
||||
|
|
|
|||
|
|
@ -1,8 +1,9 @@
|
|||
opam-version: "2.0"
|
||||
name: "containers"
|
||||
version: "3.3"
|
||||
version: "3.4"
|
||||
author: "Simon Cruanes"
|
||||
maintainer: "simon.cruanes.2007@m4x.org"
|
||||
license: "BSD-2"
|
||||
synopsis: "A modular, clean and powerful extension of the OCaml standard library"
|
||||
build: [
|
||||
["dune" "build" "-p" name "-j" jobs]
|
||||
|
|
|
|||
|
|
@ -98,7 +98,7 @@ val get_exn_or : string -> 'a t -> 'a
|
|||
(** [get_exn_or msg o] returns [x] if [o] is [Some x]
|
||||
or fails with [Invalid_argument msg] if [o] is [None].
|
||||
@raise Invalid_argument if the option is [None].
|
||||
@since NEXT_RELEASE *)
|
||||
@since 3.4 *)
|
||||
|
||||
val get_lazy : (unit -> 'a) -> 'a t -> 'a
|
||||
(** [get_lazy default_fn o] unwraps [o], but if [o] is [None] it returns [default_fn ()] instead.
|
||||
|
|
|
|||
|
|
@ -25,7 +25,7 @@ module type S = CCSexp_intf.S
|
|||
|
||||
@since 2.7
|
||||
|
||||
@since NEXT_RELEASE re-bind [loc] to [Sexp.loc]
|
||||
@since 3.4 re-bind [loc] to [Sexp.loc]
|
||||
*)
|
||||
module Make(Sexp : SEXP) : S with type t = Sexp.t and type loc = Sexp.loc
|
||||
|
||||
|
|
|
|||
|
|
@ -251,7 +251,7 @@ val filter : (char -> bool) -> string -> string
|
|||
|
||||
val uniq : (char -> char -> bool) -> string -> string
|
||||
(** [uniq eq s] remove consecutive duplicate characters in [s].
|
||||
@since NEXT_RELEASE *)
|
||||
@since 3.4 *)
|
||||
|
||||
val flat_map : ?sep:string -> (char -> string) -> string -> string
|
||||
(** [flat_map ~sep f s] maps each chars of [s] to a string, then concatenates them all.
|
||||
|
|
|
|||
|
|
@ -256,7 +256,7 @@ val filter : f:(char -> bool) -> string -> string
|
|||
|
||||
val uniq : eq:(char -> char -> bool) -> string -> string
|
||||
(** [uniq ~eq s] remove consecutive duplicate characters in [s].
|
||||
@since NEXT_RELEASE *)
|
||||
@since 3.4 *)
|
||||
|
||||
val flat_map : ?sep:string -> f:(char -> string) -> string -> string
|
||||
(** [flat_map ?sep ~f s] maps each chars of [s] to a string, then concatenates them all.
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue