Skip to content

Commit 46e41f7

Browse files
committed
Merge branch 'master' into stable for 1.5
2 parents ad8a61a + 18c9f88 commit 46e41f7

36 files changed

+695
-2015
lines changed

.merlin

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,4 +18,4 @@ PKG threads
1818
PKG threads.posix
1919
PKG lwt
2020
PKG qcheck
21-
FLG -w +a-4-44-48-60
21+
FLG -w +a-4-44-48-60@8

.travis.yml

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
language: c
2+
env:
3+
- OCAML_VERSION=4.01.0
4+
- OCAML_VERSION=4.02.3
5+
- OCAML_VERSION=4.04.2
6+
- OCAML_VERSION=4.05.0
7+
- OCAML_VERSION=4.05.0+flambda
8+
- OCAML_VERSION=4.06.0
9+
addons:
10+
apt:
11+
sources:
12+
- avsm
13+
packages:
14+
- opam
15+
# Caching may take a lot of space with so many ocaml versions
16+
#cache:
17+
# directories:
18+
# - $HOME/.opam
19+
before_install:
20+
# Some opam boilerplate
21+
- export OPAMYES=1
22+
- export OPAMVERBOSE=1
23+
- opam init
24+
- opam switch ${OCAML_VERSION}
25+
- eval `opam config env`
26+
install:
27+
# Install dependencies
28+
- opam pin add --no-action containers .
29+
- opam install oasis
30+
- opam install --deps-only containers
31+
script:
32+
- ./configure --enable-unix --enable-thread --disable-tests --disable-bench
33+
- make build
34+
- opam install sequence qcheck qtest gen
35+
- ./configure --enable-unix --enable-thread --enable-tests --enable-docs --disable-bench
36+
- make test
37+
- make doc

AUTHORS.adoc

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,3 +23,4 @@
2323
- Leonid Rozenberg (@rleonid)
2424
- Bikal Gurung (@bikalgurung)
2525
- Fabian Hemmer (copy)
26+
- Maciej Woś (@lostman)

CHANGELOG.adoc

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,27 @@
11
= Changelog
22

3+
== 1.5
4+
5+
- have `CCList.{get,insert,set}_at_idx` work with negative indices
6+
- Add CCCache.add
7+
- missing function in `CCListLabels`
8+
- Allow negative indexes in CCList.remove_at_idx
9+
- add an optional `drop` parameter to string-splitting functions
10+
- add `Hash.const0` for trivial hash function that ignores its input
11+
- improve compatibility with the stdlib
12+
- Add List.count
13+
- Add String.is_empty
14+
- add missing compatibility functions: `{assoc_opt,assq_opt}`
15+
- backport some functions added in 4.05 in `CCList`
16+
- add functions from 4.05 into `CC{Map,Set}`
17+
- Implement `CCImmutArray.sub`
18+
- bugfix in `CCTrie.Make`: Remove polymorphic comparison
19+
20+
- remove dependency on cppo
21+
- add travis support
22+
- update doc of `CCList.cartesian_product`, which returns results in unspecified order (close #154)
23+
- fix containers.top (closes #155)
24+
325
== 1.4
426

527
- add `CCMap.union`

README.adoc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ map/fold_right/append, and additional functions on lists).
1414
Alternatively, `open Containers` will bring enhanced versions of the standard
1515
modules into scope.
1616

17-
image::https://ci.cedeela.fr/buildStatus/icon?job=containers[alt="Build Status", link="http://ci.cedeela.fr/job/containers/"]
17+
image::https://travis-ci.org/c-cube/ocaml-containers.svg?branch=master[alt="Build Status", link="https://travis-ci.org/c-cube/ocaml-containers"]
1818

1919
toc::[]
2020

_oasis

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
OASISFormat: 0.4
22
Name: containers
3-
Version: 1.4
3+
Version: 1.5
44
Homepage: https://github.com/c-cube/ocaml-containers
55
Authors: Simon Cruanes
66
License: BSD-2-clause

_tags

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -117,6 +117,7 @@ true: annot, bin_annot
117117
<src/threads/*.ml{,i}>: thread
118118
<src/core/CCVector.cmx> or <src/core/CCString.cmx>: inline(25)
119119
<src/data/CCFlatHashtbl.cm*> or <src/data/CCHashTrie.cm*> or <src/data/CCPersistent*>: inline(15)
120-
<src/**/*.ml> and not <src/misc/*.ml>: warn_A, warn(-4), warn(-44)
121-
true: no_alias_deps, safe_string, short_paths
120+
<src/core/CCMap.*> or <src/core/CCSet.*> or <src/core/CCList.*>: warn(-32)
121+
<src/**/*.ml> and not <src/misc/*.ml>: warn(+a-4-44-58-60@8)
122+
true: no_alias_deps, safe_string, short_paths, color(always)
122123
<src/**/*Labels.cm*>: nolabels

doc/intro.txt

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,7 @@ CC-SA3 {{:http://en.wikipedia.org/wiki/File:Hypercube.svg} wikimedia}
1616
The design is mostly centered around polymorphism rather than functors. Such
1717
structures comprise (some modules in misc/, some other in core/):
1818

19-
the core library, containers, now depends on
20-
{{:https://github.com/mjambon/cppo}cppo} and base-bytes (provided
19+
the core library, containers, now depends on base-bytes (provided
2120
by ocamlfind).
2221

2322
{4 Core Modules (extension of the standard library)}

myocamlbuild.ml

Lines changed: 0 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -925,40 +925,6 @@ dispatch
925925
(MyOCamlbuildBase.dispatch_combine [
926926
begin function
927927
| After_rules ->
928-
(* replace with Ocamlbuild_cppo.dispatch when 4.00 is not supported
929-
anymore *)
930-
let dep_cppo = "%(name).cppo.ml" in
931-
let prod1 = "%(name: <*> and not <*.cppo>).ml" in
932-
let prod2 = "%(name: <**/*> and not <**/*.cppo>).ml" in
933-
let f prod env _build =
934-
let dep = env dep_cppo in
935-
let prod = env prod in
936-
let tags = tags_of_pathname prod ++ "cppo" in
937-
Cmd (S[A "cppo"; T tags; S [A "-o"; P prod]; P dep ])
938-
in
939-
rule "cppo1" ~dep:dep_cppo ~prod:prod1 (f prod1) ;
940-
rule "cppo2" ~dep:dep_cppo ~prod:prod2 (f prod2) ;
941-
pflag ["cppo"] "cppo_D" (fun s -> S [A "-D"; A s]) ;
942-
pflag ["cppo"] "cppo_U" (fun s -> S [A "-U"; A s]) ;
943-
pflag ["cppo"] "cppo_I" (fun s ->
944-
if Pathname.is_directory s then S [A "-I"; P s]
945-
else S [A "-I"; P (Pathname.dirname s)]
946-
) ;
947-
pdep ["cppo"] "cppo_I" (fun s ->
948-
if Pathname.is_directory s then [] else [s]) ;
949-
flag ["cppo"; "cppo_q"] (A "-q") ;
950-
flag ["cppo"; "cppo_s"] (A "-s") ;
951-
flag ["cppo"; "cppo_n"] (A "-n") ;
952-
pflag ["cppo"] "cppo_x" (fun s -> S [A "-x"; A s]);
953-
(* end replace *)
954-
955-
let major, minor = Scanf.sscanf Sys.ocaml_version "%d.%d.%d"
956-
(fun major minor patchlevel -> major, minor)
957-
in
958-
let ocaml_major = "OCAML_MAJOR " ^ string_of_int major in
959-
let ocaml_minor = "OCAML_MINOR " ^ string_of_int minor in
960-
961-
flag ["cppo"] & S[A"-D"; A ocaml_major; A"-D"; A ocaml_minor] ;
962928

963929
(* Documentation index *)
964930
dep ["ocaml"; "doc"; "extension:html"] & [doc_intro] ;

opam

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,6 @@ depends: [
2525
"ocamlfind" {build}
2626
"base-bytes"
2727
"result"
28-
"cppo" {build}
2928
"ocamlbuild" {build}
3029
]
3130
depopts: [

0 commit comments

Comments
 (0)