mirror of
https://github.com/c-cube/ocaml-containers.git
synced 2025-12-06 11:15:31 -05:00
prepare for 0.7
This commit is contained in:
parent
97491adae7
commit
f1b3ff64c9
11 changed files with 68 additions and 21 deletions
30
CHANGELOG.md
30
CHANGELOG.md
|
|
@ -1,5 +1,35 @@
|
||||||
# Changelog
|
# Changelog
|
||||||
|
|
||||||
|
## 0.7
|
||||||
|
|
||||||
|
### breaking
|
||||||
|
|
||||||
|
- remove `cgi`/
|
||||||
|
- removed useless Lwt-related module
|
||||||
|
- remove `CCGen` and `CCsequence` (use the separate libraries)
|
||||||
|
- split the library into smaller pieces (with `containers.io`, `containers.iter`,
|
||||||
|
`containers.sexp`, `containers.data`)
|
||||||
|
|
||||||
|
#### other changes
|
||||||
|
|
||||||
|
- cleanup: move sub-libraries to their own subdir each; mv everything into `src/`
|
||||||
|
- `sexp`:
|
||||||
|
* `CCSexp` now splitted into `CCSexp` (manipulating expressions) and `CCSexpStream`
|
||||||
|
* add `CCSexpM` for a simpler, monadic parser of S-expressions (deprecating `CCSexpStream`)
|
||||||
|
- `core`:
|
||||||
|
* `CCString.fold`
|
||||||
|
* `CCstring.suffix`
|
||||||
|
* more efficient `CCString.init`
|
||||||
|
* fix errors in documentation of `CCString` (slightly over-reaching sed)
|
||||||
|
* add `CCFloat.{fsign, sign_exn}` (thanks @bernardofpc)
|
||||||
|
- new `containers.bigarray`, with `CCBigstring`
|
||||||
|
- `CCHashtbl.map_list`
|
||||||
|
- `io`:
|
||||||
|
* `CCIO.read_all` now with ?size parameter
|
||||||
|
* use `Bytes.extend` (praise modernity!)
|
||||||
|
* bugfix in `CCIO.read_all` and `CCIO.read_chunks`
|
||||||
|
- use `-no-alias-deps`
|
||||||
|
|
||||||
## 0.6.1
|
## 0.6.1
|
||||||
|
|
||||||
- use subtree `gen/` for `CCGen` (symlink) rather than a copy.
|
- use subtree `gen/` for `CCGen` (symlink) rather than a copy.
|
||||||
|
|
|
||||||
4
Makefile
4
Makefile
|
|
@ -126,8 +126,8 @@ VERSION=$(shell awk '/^Version:/ {print $$2}' _oasis)
|
||||||
|
|
||||||
update_next_tag:
|
update_next_tag:
|
||||||
@echo "update version to $(VERSION)..."
|
@echo "update version to $(VERSION)..."
|
||||||
sed -i "s/NEXT_VERSION/$(VERSION)/g" **/*.ml **/*.mli
|
zsh -c 'sed -i "s/NEXT_VERSION/$(VERSION)/g" **/*.ml **/*.mli'
|
||||||
sed -i "s/NEXT_RELEASE/$(VERSION)/g" **/*.ml **/*.mli
|
zsh -c 'sed -i "s/NEXT_RELEASE/$(VERSION)/g" **/*.ml **/*.mli'
|
||||||
|
|
||||||
udpate_sequence:
|
udpate_sequence:
|
||||||
git subtree pull --prefix sequence sequence stable --squash
|
git subtree pull --prefix sequence sequence stable --squash
|
||||||
|
|
|
||||||
4
_oasis
4
_oasis
|
|
@ -1,6 +1,6 @@
|
||||||
OASISFormat: 0.4
|
OASISFormat: 0.4
|
||||||
Name: containers
|
Name: containers
|
||||||
Version: 0.6.1
|
Version: 0.7
|
||||||
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
|
||||||
|
|
@ -147,7 +147,7 @@ Document containers
|
||||||
"-docflags '-colorize-code -short-functors -charset utf-8'"
|
"-docflags '-colorize-code -short-functors -charset utf-8'"
|
||||||
XOCamlbuildLibraries:
|
XOCamlbuildLibraries:
|
||||||
containers, containers.misc, containers.iter, containers.data,
|
containers, containers.misc, containers.iter, containers.data,
|
||||||
containers.string, containers.pervasives,
|
containers.string, containers.pervasives, containers.bigarray,
|
||||||
containers.advanced, containers.io, containers.sexp,
|
containers.advanced, containers.io, containers.sexp,
|
||||||
containers.lwt
|
containers.lwt
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -43,10 +43,21 @@ CCVector
|
||||||
|
|
||||||
{4 Pervasives (aliases to Core Modules)}
|
{4 Pervasives (aliases to Core Modules)}
|
||||||
|
|
||||||
|
Contains aliases to most modules from {i containers core}, and mixins
|
||||||
|
such as:
|
||||||
|
|
||||||
|
{[ module List = struct
|
||||||
|
include List
|
||||||
|
include CCList
|
||||||
|
end
|
||||||
|
]}
|
||||||
|
|
||||||
{!modules: CCPervasives}
|
{!modules: CCPervasives}
|
||||||
|
|
||||||
{4 Containers.data}
|
{4 Containers.data}
|
||||||
|
|
||||||
|
Various data structures.
|
||||||
|
|
||||||
{!modules:
|
{!modules:
|
||||||
CCBV
|
CCBV
|
||||||
CCCache
|
CCCache
|
||||||
|
|
@ -61,13 +72,16 @@ CCTrie
|
||||||
|
|
||||||
{4 Containers.io}
|
{4 Containers.io}
|
||||||
|
|
||||||
|
Helpers to perform simple IO (mostly on files) and iterate on channels.
|
||||||
|
|
||||||
{!modules: CCIO}
|
{!modules: CCIO}
|
||||||
|
|
||||||
{4 Containers.sexp}
|
{4 Containers.sexp}
|
||||||
|
|
||||||
A small S-expression library.
|
A small S-expression library. The interface is relatively unstable, but
|
||||||
|
the main type ([CCSexp.t]) isn't.
|
||||||
|
|
||||||
{!modules: CCSexp}
|
{!modules: CCSexp CCSexpStream CCSexpM}
|
||||||
|
|
||||||
{4 Containers.iter}
|
{4 Containers.iter}
|
||||||
|
|
||||||
|
|
@ -75,20 +89,20 @@ Iterators:
|
||||||
|
|
||||||
{!modules: CCKList CCKTree}
|
{!modules: CCKList CCKTree}
|
||||||
|
|
||||||
{4 S-expressions}
|
|
||||||
|
|
||||||
{!modules: CCSexp}
|
|
||||||
|
|
||||||
{4 String}
|
{4 String}
|
||||||
|
|
||||||
{!modules: Levenshtein KMP}
|
{!modules: Levenshtein KMP}
|
||||||
|
|
||||||
{4 Bigarrays}
|
{4 Bigarrays}
|
||||||
|
|
||||||
|
Use bigarrays to hold large strings and map files directly into memory.
|
||||||
|
|
||||||
{!modules: CCBigstring}
|
{!modules: CCBigstring}
|
||||||
|
|
||||||
{4 Advanced}
|
{4 Advanced}
|
||||||
|
|
||||||
|
This module is qualified with [Containers_advanced].
|
||||||
|
|
||||||
{!modules: CCLinq CCCat CCBatch}
|
{!modules: CCLinq CCCat CCBatch}
|
||||||
|
|
||||||
{4 Misc}
|
{4 Misc}
|
||||||
|
|
|
||||||
5
opam
5
opam
|
|
@ -17,7 +17,10 @@ remove: [
|
||||||
["ocamlfind" "remove" "containers"]
|
["ocamlfind" "remove" "containers"]
|
||||||
]
|
]
|
||||||
post-messages: [
|
post-messages: [
|
||||||
"in containers, modules start with 'CC' (stands for 'core containers')"
|
"containers is now split into finer-grained sub-libraries, including
|
||||||
|
`containers.io`, `containers.iter`, `containers.sexp`, `containers.data`.
|
||||||
|
CCGen and CCSequence have been removed, consider using the libraries
|
||||||
|
`gen` and `sequence` on opam."
|
||||||
]
|
]
|
||||||
depends: [
|
depends: [
|
||||||
"ocamlfind" {build}
|
"ocamlfind" {build}
|
||||||
|
|
|
||||||
|
|
@ -26,7 +26,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
|
|
||||||
(** {1 Interface to 1-dimension Bigarrays of bytes (char)}
|
(** {1 Interface to 1-dimension Bigarrays of bytes (char)}
|
||||||
|
|
||||||
@since NEXT_RELEASE *)
|
@since 0.7 *)
|
||||||
|
|
||||||
type t = (char, Bigarray.int8_unsigned_elt, Bigarray.c_layout) Bigarray.Array1.t
|
type t = (char, Bigarray.int8_unsigned_elt, Bigarray.c_layout) Bigarray.Array1.t
|
||||||
|
|
||||||
|
|
@ -118,10 +118,10 @@ val with_map_file :
|
||||||
have mapped this file (requires the filedescr to be open in write mode).
|
have mapped this file (requires the filedescr to be open in write mode).
|
||||||
@param mode the mode for the file, if it's created
|
@param mode the mode for the file, if it's created
|
||||||
@param flags opening flags (default rdonly)
|
@param flags opening flags (default rdonly)
|
||||||
@see {!Bigarray.Array1.map_file} for more details *)
|
see {!Bigarray.Array1.map_file} for more details *)
|
||||||
|
|
||||||
val map_file_descr : ?pos:int64 -> ?shared:bool -> Unix.file_descr -> int -> t
|
val map_file_descr : ?pos:int64 -> ?shared:bool -> Unix.file_descr -> int -> t
|
||||||
(** [map_file_descr descr len] is a lower-level access to an underlying file descriptor.
|
(** [map_file_descr descr len] is a lower-level access to an underlying file descriptor.
|
||||||
@param shared if true, modifications are shared between processes that
|
@param shared if true, modifications are shared between processes that
|
||||||
have mapped this file (requires the filedescr to be open in write mode).
|
have mapped this file (requires the filedescr to be open in write mode).
|
||||||
@see {!Bigarray.Array1.map_file} for more details *)
|
see {!Bigarray.Array1.map_file} for more details *)
|
||||||
|
|
|
||||||
|
|
@ -83,14 +83,14 @@ val sign : t -> int
|
||||||
|
|
||||||
val fsign : t -> float
|
val fsign : t -> float
|
||||||
(** [fsign x] is one of [-1., -0., +0., +1.], or [nan] if [x] is NaN.
|
(** [fsign x] is one of [-1., -0., +0., +1.], or [nan] if [x] is NaN.
|
||||||
@since NEXT_RELEASE *)
|
@since 0.7 *)
|
||||||
|
|
||||||
exception TrapNaN of string
|
exception TrapNaN of string
|
||||||
val sign_exn : t -> int
|
val sign_exn : t -> int
|
||||||
(** [sign_exn x] will return the sign of [x] as [1, 0] or [-1], or raise an
|
(** [sign_exn x] will return the sign of [x] as [1, 0] or [-1], or raise an
|
||||||
exception [TrapNaN] if [x] is a NaN.
|
exception [TrapNaN] if [x] is a NaN.
|
||||||
Note that infinities have defined signs in OCaml.
|
Note that infinities have defined signs in OCaml.
|
||||||
@since NEXT_RELEASE *)
|
@since 0.7 *)
|
||||||
|
|
||||||
val to_int : t -> int
|
val to_int : t -> int
|
||||||
val of_int : int -> t
|
val of_int : int -> t
|
||||||
|
|
|
||||||
|
|
@ -45,7 +45,7 @@ module type S = sig
|
||||||
|
|
||||||
val fold : ('a -> char -> 'a) -> 'a -> t -> 'a
|
val fold : ('a -> char -> 'a) -> 'a -> t -> 'a
|
||||||
(** Fold on chars by increasing index.
|
(** Fold on chars by increasing index.
|
||||||
@since NEXT_RELEASE *)
|
@since 0.7 *)
|
||||||
|
|
||||||
(** {2 Conversions} *)
|
(** {2 Conversions} *)
|
||||||
|
|
||||||
|
|
@ -105,7 +105,7 @@ val prefix : pre:string -> string -> bool
|
||||||
|
|
||||||
val suffix : suf:string -> string -> bool
|
val suffix : suf:string -> string -> bool
|
||||||
(** [suffix ~suf s] returns [true] iff [suf] is a suffix of [s]
|
(** [suffix ~suf s] returns [true] iff [suf] is a suffix of [s]
|
||||||
@since NEXT_RELEASE *)
|
@since 0.7 *)
|
||||||
|
|
||||||
(*$T
|
(*$T
|
||||||
suffix ~suf:"cd" "abcd"
|
suffix ~suf:"cd" "abcd"
|
||||||
|
|
|
||||||
|
|
@ -86,7 +86,7 @@ val read_lines_l : in_channel -> string list
|
||||||
|
|
||||||
val read_all : ?size:int -> in_channel -> string
|
val read_all : ?size:int -> in_channel -> string
|
||||||
(** Read the whole channel into a buffer, then converted into a string.
|
(** Read the whole channel into a buffer, then converted into a string.
|
||||||
@param size the internal buffer size @since NEXT_RELEASE *)
|
@param size the internal buffer size @since 0.7 *)
|
||||||
|
|
||||||
(** {6 Output} *)
|
(** {6 Output} *)
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -27,7 +27,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
|
|
||||||
@since 0.4
|
@since 0.4
|
||||||
|
|
||||||
@since NEXT_RELEASE
|
@since 0.7
|
||||||
Moved the streaming parser to CCSexpStream
|
Moved the streaming parser to CCSexpStream
|
||||||
*)
|
*)
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -25,7 +25,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
|
|
||||||
(** {1 Simple and efficient S-expression parsing/printing}
|
(** {1 Simple and efficient S-expression parsing/printing}
|
||||||
|
|
||||||
@since NEXT_RELEASE *)
|
@since 0.7 *)
|
||||||
|
|
||||||
type 'a or_error = [ `Ok of 'a | `Error of string ]
|
type 'a or_error = [ `Ok of 'a | `Error of string ]
|
||||||
type 'a sequence = ('a -> unit) -> unit
|
type 'a sequence = ('a -> unit) -> unit
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue