mirror of
https://github.com/c-cube/ocaml-containers.git
synced 2025-12-06 19:25:28 -05:00
prepare for 0.6.1
This commit is contained in:
parent
4e56787617
commit
d67dceddb8
9 changed files with 25 additions and 16 deletions
|
|
@ -1,5 +1,13 @@
|
||||||
# Changelog
|
# Changelog
|
||||||
|
|
||||||
|
## 0.6.1
|
||||||
|
|
||||||
|
- use subtree `gen/` for `CCGen` (symlink) rather than a copy.
|
||||||
|
- Add benchmarks for the function `iter` of iterators.
|
||||||
|
- `CCKTree`: more printers (to files), `Format` printer
|
||||||
|
- `CCOpt.get_lazy` convenience function
|
||||||
|
- introduce `CCFloat`, add float functions to `CCRandom` (thanks to @struktured)
|
||||||
|
|
||||||
## 0.6
|
## 0.6
|
||||||
|
|
||||||
#### breaking changes
|
#### breaking changes
|
||||||
|
|
|
||||||
11
HOWTO.md
11
HOWTO.md
|
|
@ -3,12 +3,13 @@
|
||||||
|
|
||||||
1. `make test-all`
|
1. `make test-all`
|
||||||
2. update version in `_oasis`
|
2. update version in `_oasis`
|
||||||
3. `make update_next_tag` (to update `@since` comments)
|
3. `make update_next_tag` (to update `@since` comments; be careful not to change symlinks)
|
||||||
4. update `CHANGELOG.md` (see its end to find the right git command)
|
4. update `CHANGELOG.md` (see its end to find the right git command)
|
||||||
5. `git checkout stable`
|
5. commit the changes
|
||||||
6. `git merge master`
|
6. `git checkout stable`
|
||||||
7. commit, tag, and push both to github
|
7. `git merge master`
|
||||||
8. new opam package
|
8. tag, and push both to github
|
||||||
|
9. new opam package
|
||||||
|
|
||||||
## List Authors
|
## List Authors
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -70,7 +70,7 @@ Documentation [here](http://cedeela.fr/~simon/software/containers).
|
||||||
- `CCBV`, mutable bitvectors
|
- `CCBV`, mutable bitvectors
|
||||||
- `CCPersistentHashtbl`, a semi-persistent hashtable (similar to [persistent arrays](https://www.lri.fr/~filliatr/ftp/ocaml/ds/parray.ml.html))
|
- `CCPersistentHashtbl`, a semi-persistent hashtable (similar to [persistent arrays](https://www.lri.fr/~filliatr/ftp/ocaml/ds/parray.ml.html))
|
||||||
- `CCVector`, a growable array (pure OCaml, no C) with mutability annotations
|
- `CCVector`, a growable array (pure OCaml, no C) with mutability annotations
|
||||||
- `CCGen` and `CCSequence`, generic iterators structures (with structural types so they can be defined in several places). Now also in their own repository and opam packages (`gen` and `sequence`).
|
- `CCGen` and `CCSequence`, generic iterators structures (with structural types so they can be defined in several places). They are also available in their own repository and opam packages (`gen` and `sequence`). Note that the `@since` annotations may not be accurate because of the use of `git subtree`.
|
||||||
- `CCKList`, a persistent iterator structure (akin to a lazy list)
|
- `CCKList`, a persistent iterator structure (akin to a lazy list)
|
||||||
- `CCList`, functions on lists, including tail-recursive implementations of `map` and `append` and many other things
|
- `CCList`, functions on lists, including tail-recursive implementations of `map` and `append` and many other things
|
||||||
- `CCArray`, utilities on arrays and slices
|
- `CCArray`, utilities on arrays and slices
|
||||||
|
|
|
||||||
2
_oasis
2
_oasis
|
|
@ -1,6 +1,6 @@
|
||||||
OASISFormat: 0.4
|
OASISFormat: 0.4
|
||||||
Name: containers
|
Name: containers
|
||||||
Version: 0.6
|
Version: 0.6.1
|
||||||
Homepage: https://github.com/c-cube/ocaml-containers
|
Homepage: https://github.com/c-cube/ocaml-containers
|
||||||
Authors: Simon Cruanes
|
Authors: Simon Cruanes
|
||||||
License: BSD-2-clause
|
License: BSD-2-clause
|
||||||
|
|
|
||||||
|
|
@ -24,7 +24,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
*)
|
*)
|
||||||
|
|
||||||
(** {1 Basic Float functions}
|
(** {1 Basic Float functions}
|
||||||
@since NEXT_RELEASE *)
|
@since 0.6.1 *)
|
||||||
|
|
||||||
type t = float
|
type t = float
|
||||||
type fpclass = Pervasives.fpclass =
|
type fpclass = Pervasives.fpclass =
|
||||||
|
|
|
||||||
|
|
@ -98,7 +98,7 @@ val persistent_lazy : 'a t -> 'a Restart.t
|
||||||
(** Same as {!persistent}, but consumes the generator on demand (by chunks).
|
(** Same as {!persistent}, but consumes the generator on demand (by chunks).
|
||||||
This allows to make a restartable generator out of an ephemeral one,
|
This allows to make a restartable generator out of an ephemeral one,
|
||||||
without paying a big cost upfront (nor even consuming it fully).
|
without paying a big cost upfront (nor even consuming it fully).
|
||||||
@since NEXT_RELEASE *)
|
@since 0.6.1 *)
|
||||||
|
|
||||||
val start : 'a Restart.t -> 'a t
|
val start : 'a Restart.t -> 'a t
|
||||||
(** Create a new transient generator.
|
(** Create a new transient generator.
|
||||||
|
|
|
||||||
|
|
@ -127,17 +127,17 @@ module Dot : sig
|
||||||
|
|
||||||
val print : graph formatter
|
val print : graph formatter
|
||||||
(** Printer with indentation, etc.
|
(** Printer with indentation, etc.
|
||||||
@since NEXT_RELEASE *)
|
@since 0.6.1 *)
|
||||||
|
|
||||||
val print_to_file : string -> graph -> unit
|
val print_to_file : string -> graph -> unit
|
||||||
(** [print_to_file filename g] prints [g] into a file whose name
|
(** [print_to_file filename g] prints [g] into a file whose name
|
||||||
is [filename].
|
is [filename].
|
||||||
@since NEXT_RELEASE *)
|
@since 0.6.1 *)
|
||||||
|
|
||||||
val to_file : ?name:string -> string -> attribute list t list -> unit
|
val to_file : ?name:string -> string -> attribute list t list -> unit
|
||||||
(** [to_file filename trees] makes a graph out of the trees, opens the
|
(** [to_file filename trees] makes a graph out of the trees, opens the
|
||||||
file [filename] and prints the graph into the file.
|
file [filename] and prints the graph into the file.
|
||||||
@param name name of the graph
|
@param name name of the graph
|
||||||
@since NEXT_RELEASE *)
|
@since 0.6.1 *)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -75,7 +75,7 @@ val get_exn : 'a t -> 'a
|
||||||
|
|
||||||
val get_lazy : (unit -> 'a) -> 'a t -> 'a
|
val get_lazy : (unit -> 'a) -> 'a t -> 'a
|
||||||
(** [get_lazy default_fn x] unwraps [x], but if [x = None] it returns [default_fn ()] instead.
|
(** [get_lazy default_fn x] unwraps [x], but if [x = None] it returns [default_fn ()] instead.
|
||||||
@since NEXT_RELEASE *)
|
@since 0.6.1 *)
|
||||||
|
|
||||||
val sequence_l : 'a t list -> 'a list t
|
val sequence_l : 'a t list -> 'a list t
|
||||||
(** [sequence_l [x1; x2; ...; xn]] returns [Some [y1;y2;...;yn]] if
|
(** [sequence_l [x1; x2; ...; xn]] returns [Some [y1;y2;...;yn]] if
|
||||||
|
|
|
||||||
|
|
@ -90,15 +90,15 @@ val int_range : int -> int -> int t
|
||||||
|
|
||||||
val small_float : float t
|
val small_float : float t
|
||||||
(** A reasonably small float.
|
(** A reasonably small float.
|
||||||
@since NEXT_RELEASE *)
|
@since 0.6.1 *)
|
||||||
|
|
||||||
val float : float -> float t
|
val float : float -> float t
|
||||||
(** Random float within the given range
|
(** Random float within the given range
|
||||||
@since NEXT_RELEASE *)
|
@since 0.6.1 *)
|
||||||
|
|
||||||
val float_range : float -> float -> float t
|
val float_range : float -> float -> float t
|
||||||
(** Inclusive range
|
(** Inclusive range
|
||||||
@since NEXT_RELEASE *)
|
@since 0.6.1 *)
|
||||||
|
|
||||||
|
|
||||||
val split : int -> (int * int) option t
|
val split : int -> (int * int) option t
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue