From c336c796f4deb8979a4c7ceea3bef34b46240623 Mon Sep 17 00:00:00 2001 From: Calascibetta Romain Date: Mon, 25 Sep 2023 17:20:20 +0200 Subject: [PATCH 1/7] Prepare v4.4.0 --- CHANGES.md | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/CHANGES.md b/CHANGES.md index c0a933c..29ba02a 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -1,3 +1,16 @@ +v4.4.0 2023-09-25 +----------------- + +* **breaking change** Fix parsing & printing of IPv6 addresses in the host part of an uri + + If we follow the RFC3986 correctly, IPv6 must be surrounded by '[' and ']'. Old versions + of `ocaml-uri` escaped these characters. The new version interprets these characters to + recognize an IPv6 address. + + Users should take note of this change in behaviour, which fixes a number of bugs in HTTP + requests. (@anmonteiro, review by several maintainers, #169) +* Upgrade tests to `ounit2` (@Alessandro-Barbieri, #161) + v4.3.0 2023-04-19 ----------------- From 6ffa7b3c9c8a26c8a0d48155c6015c92c55bd2bd Mon Sep 17 00:00:00 2001 From: Calascibetta Romain Date: Mon, 25 Sep 2023 17:33:03 +0200 Subject: [PATCH 2/7] Add crowbar as a dependency for tests for uri-re --- uri-re.opam | 1 + 1 file changed, 1 insertion(+) diff --git a/uri-re.opam b/uri-re.opam index 3d34e3e..ce07c02 100644 --- a/uri-re.opam +++ b/uri-re.opam @@ -19,6 +19,7 @@ depends: [ "ppx_sexp_conv" {with-test & >= "v0.9.0"} "re" {>= "1.9.0"} "stringext" {>= "1.4.0"} + "crowbar" {with-test} ] build: [ ["dune" "subst"] {pinned} From 5745987dc76515e9fc8955c37ef8bfd113298fba Mon Sep 17 00:00:00 2001 From: Calascibetta Romain Date: Mon, 25 Sep 2023 17:41:02 +0200 Subject: [PATCH 3/7] uri-bench requires core_bench and core_unix to build --- uri-bench.opam | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/uri-bench.opam b/uri-bench.opam index 254bc7e..e2f777b 100644 --- a/uri-bench.opam +++ b/uri-bench.opam @@ -15,8 +15,8 @@ depends: [ "ocaml" {>= "4.04.0"} "dune" {>= "1.2.0"} "uri" {= version} - "core_bench" {with-test & >= "v0.14.0"} - "core_unix" {with-test & >= "v0.14.0"} + "core_bench" {>= "v0.14.0"} + "core_unix" {>= "v0.14.0"} ] build: [ ["dune" "subst"] {pinned} From 024d153dd9ad75eafd5a24afc45b0946332dbb96 Mon Sep 17 00:00:00 2001 From: Calascibetta Romain Date: Mon, 25 Sep 2023 17:53:54 +0200 Subject: [PATCH 4/7] uri-re requires uri --- uri-re.opam | 1 + 1 file changed, 1 insertion(+) diff --git a/uri-re.opam b/uri-re.opam index ce07c02..a1a910d 100644 --- a/uri-re.opam +++ b/uri-re.opam @@ -18,6 +18,7 @@ depends: [ "ounit2" {with-test & >= "1.0.2"} "ppx_sexp_conv" {with-test & >= "v0.9.0"} "re" {>= "1.9.0"} + "uri" {= version} "stringext" {>= "1.4.0"} "crowbar" {with-test} ] From 06756d3d93cbbd7612837a657473680d589fd802 Mon Sep 17 00:00:00 2001 From: Calascibetta Romain Date: Mon, 25 Sep 2023 18:01:40 +0200 Subject: [PATCH 5/7] The distribution requires at least 4.08 --- uri-bench.opam | 2 +- uri-re.opam | 2 +- uri.opam | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/uri-bench.opam b/uri-bench.opam index e2f777b..380fdf1 100644 --- a/uri-bench.opam +++ b/uri-bench.opam @@ -12,7 +12,7 @@ description: """ This is a benchmarking package for the OCaml implementation of the [RFC3986](http://tools.ietf.org/html/rfc3986) specification for parsing URI or URLs. """ depends: [ - "ocaml" {>= "4.04.0"} + "ocaml" {>= "4.08.0"} "dune" {>= "1.2.0"} "uri" {= version} "core_bench" {>= "v0.14.0"} diff --git a/uri-re.opam b/uri-re.opam index a1a910d..85c4ed9 100644 --- a/uri-re.opam +++ b/uri-re.opam @@ -13,7 +13,7 @@ This is an OCaml implementation of the [RFC3986](http://tools.ietf.org/html/rfc3 for parsing URI or URLs. """ depends: [ - "ocaml" {>= "4.04.0"} + "ocaml" {>= "4.08.0"} "dune" {>= "1.2.0"} "ounit2" {with-test & >= "1.0.2"} "ppx_sexp_conv" {with-test & >= "v0.9.0"} diff --git a/uri.opam b/uri.opam index 5cee37a..7885ca6 100644 --- a/uri.opam +++ b/uri.opam @@ -13,7 +13,7 @@ This is an OCaml implementation of the [RFC3986](http://tools.ietf.org/html/rfc3 for parsing URI or URLs. """ depends: [ - "ocaml" {>= "4.04.0"} + "ocaml" {>= "4.08.0"} "dune" {>= "1.2.0"} "ounit2" {with-test & >= "1.0.2"} "ppx_sexp_conv" {with-test & >= "v0.9.0"} From 8200e45df4857a4c9a04f13a8060b4096a6461ad Mon Sep 17 00:00:00 2001 From: Calascibetta Romain Date: Tue, 26 Sep 2023 15:55:18 +0200 Subject: [PATCH 6/7] Replace {pinned} by {dev} (@hannesm) --- uri-bench.opam | 2 +- uri-re.opam | 2 +- uri-sexp.opam | 2 +- uri.opam | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/uri-bench.opam b/uri-bench.opam index 380fdf1..8306a99 100644 --- a/uri-bench.opam +++ b/uri-bench.opam @@ -19,7 +19,7 @@ depends: [ "core_unix" {>= "v0.14.0"} ] build: [ - ["dune" "subst"] {pinned} + ["dune" "subst"] {dev} ["dune" "build" "-p" name "-j" jobs] ["dune" "runtest" "-p" name "-j" jobs] {with-test} ] diff --git a/uri-re.opam b/uri-re.opam index 85c4ed9..eed0861 100644 --- a/uri-re.opam +++ b/uri-re.opam @@ -23,7 +23,7 @@ depends: [ "crowbar" {with-test} ] build: [ - ["dune" "subst"] {pinned} + ["dune" "subst"] {dev} ["dune" "build" "-p" name "-j" jobs] ["dune" "runtest" "-p" name "-j" jobs] {with-test} ] diff --git a/uri-sexp.opam b/uri-sexp.opam index fb249a5..66b1200 100644 --- a/uri-sexp.opam +++ b/uri-sexp.opam @@ -19,7 +19,7 @@ depends: [ "ounit2" {with-test} ] build: [ - ["dune" "subst"] {pinned} + ["dune" "subst"] {dev} ["dune" "build" "-p" name "-j" jobs] ["dune" "runtest" "-p" name "-j" jobs] {with-test} ] diff --git a/uri.opam b/uri.opam index 7885ca6..bd4e5bb 100644 --- a/uri.opam +++ b/uri.opam @@ -22,7 +22,7 @@ depends: [ "angstrom" {>= "0.14.0"} ] build: [ - ["dune" "subst"] {pinned} + ["dune" "subst"] {dev} ["dune" "build" "-p" name "-j" jobs] ["dune" "runtest" "-p" name "-j" jobs] {with-test} ] From 2dfed18e0b42c2cdbc8c9e7dd2eae7a986d4326b Mon Sep 17 00:00:00 2001 From: Calascibetta Romain Date: Tue, 26 Sep 2023 15:55:31 +0200 Subject: [PATCH 7/7] Fuzzers don't work on MacOS --- uri-re.opam | 2 +- uri.opam | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/uri-re.opam b/uri-re.opam index eed0861..e43899a 100644 --- a/uri-re.opam +++ b/uri-re.opam @@ -25,6 +25,6 @@ depends: [ build: [ ["dune" "subst"] {dev} ["dune" "build" "-p" name "-j" jobs] - ["dune" "runtest" "-p" name "-j" jobs] {with-test} + ["dune" "runtest" "-p" name "-j" jobs] {with-test & os != "macos"} ] messages: [ "Deprecated. This package is outdated, you should consider using uri instead" ] diff --git a/uri.opam b/uri.opam index bd4e5bb..04219dc 100644 --- a/uri.opam +++ b/uri.opam @@ -24,5 +24,5 @@ depends: [ build: [ ["dune" "subst"] {dev} ["dune" "build" "-p" name "-j" jobs] - ["dune" "runtest" "-p" name "-j" jobs] {with-test} + ["dune" "runtest" "-p" name "-j" jobs] {with-test & os != "macos"} ]