uri-re is deprecated, it is a legacy implementation that is now outdated. uri should be used instead (@dinosaure, #152).
Fix build system for cross-compilation (@TheLortex, #151).
v4.0.0 2020-01-01
sexp: use the sexplib v0.13 ppx directives (@avsm, #143).
rework the URI parser with angstrom (@anmonteiro, review @avsm & @dinosaure, #142).
add simple fuzzer tests between angstrom parser and legacy parser (with re.posix, #142)
add support of modifying pct encoding (with a custom one) (@orbitz, review @anmonteiro, @tmcgilchrist, @avsm & @dinosaure, #147)
allow the selection of generic set of safe characters (with Generic) (@madroach, review @dinosaure, #141)
v3.1.0 2019-11-23
Add Uri_sexp.equal (#139 @vbmithr)
Update opam files to remove dune as a build-only dep (@craigfe #140)
v3.0.0 2019-07-06
Complete the migration of making sexp an optional dependency that was started in 2.0.0. We now remove the uri.sexp ocamlfind package and have uri and uri-sexp for both the ocamlfind and opam packages. Code that was formerly using uri.sexp in its build will now need to move to uri-sexp instead (#134 @Julow @dinosaure).
Remove the deprecated Uri_re module. All code should be using the Uri.Re module instead (@avsm @Julow).
Remove the uri.top library, since we install the toplevel printer automatically since 2.2.0 via an attribute.
v2.2.1 2019-06-02
Fix deprecation warnings in Re 1.9.0 (#137 @avsm).
v2.2.0 2019-01-31
Add Uri.pp as an alias to Uri.pp_hum, as the pp form is more commonly used. (#133 @avsm)
Add an [@@ocaml.toplevel_printer] attribute to Uri.pp so that it will be automatically loaded on modern Utop versions. (#133 @avsm)
Upgrade last remaining jbuild file to dune (#133 @avsm)
OCamldoc improvements in section headers (@avsm)
v2.1.0 2018-12-12
Expose a compare function in Uri_sexp so that it will work with deriving compare,sexp.
Upgrade the opam metadata to the 2.0 format.
Update Travis to test OCaml 4.03->4.07.
Minimum OCaml version is now 4.04.0+ due to sexplib0 dependency.
v2.0.0 2018-10-15
Create a new subpackage uri.sexp for the sexpression converters, so that the base Uri package is more dependency free (based on #121 by @Julow). To convert old code, simply use Uri_sexp.t instead of Uri.t in a record type for which you are using [@@deriving sexp]. This is a type alias to Uri.t but also has the right sexp-conversion functions in scope.
Deprecate Uri_re in favour of Uri.Re. The unwrapped Uri_re will be removed in a future release of this library.
Switch to using sexplib0 instead of sexplib for easier dependencies (based on #123 by @mseri)
Port build to Dune from jbuilder.
Add benchmarks using core_bench (#125 via @drup)
v1.9.7 2018-07-01
Use latest interfaces in Re >=1.7.2 (#122)
When resolving URI inherit userinfo from the base URI (#116)
v1.9.6 2018-01-11
Change code generation strategy to avoid big switches in the services file; improves build time by 10x (#114 by @gasche).
Remove deprecated function use (String.lowercase)
Add development Makefile with more targets.
v1.9.5 2017-11-05
Fix build with OCaml 4.06 (and -safe-string) (#108 @hcarty)
Set (wrapped false) in jbuilder (#105 @avsm)
Add OCaml 4.06 to the travis CI matrix (#109 @djs55)
v1.9.4 2017-05-30
Port build system to jbuilder (#100 @vbmithr @rgrinberg @avsm @dsheets). There should be no observable changes, except that Uri_services is now in a separate subdirectory. This means that packages that implicitly depended on the module without including the ocamlfind uri.services package may now fail. Just adding the ocamlfind dependency will fix it, and is backwards compatible with older Uri releases.
Restrict build to OCaml 4.03.0+ (was formerly OCaml 4.02.0+).
Add Appveyor tests for Windows compilation.
v1.9.3 2017-03-06
Port build system to topkg (#95 by @fgimenez)
Add a tighter opam constraint on ppx_sexp (#94)
Explicitly depend on ppx_deriving for improving future compatibility with Jane Street upstream (#98).
Update Travis CI to include OCaml 4.04 and 4.03 in the matrix.
v1.9.2 2016-02-12
Remove sexplib.syntax, type_conv deps and camlp4 transitive dependency
Add ppx_sexp_conv dependency
Require OCaml 4.02.3+
v1.9.1 2015-06-26
Fix with_password None when no userinfo present (#78 from Hezekiah M. Carty)
v1.9.0 2015-05-15
Colon (":") is no longer percent-encoded in path segments
URNs are now supported (#67)
Relative paths with colons in first segment have "./" prepended in to_string
Add Uri.empty, the zero length URI reference
Uri_services now includes service aliases (e.g. www, www-http, http)
Uri_services now includes chargen and git
Add Uri.canonicalize for scheme-specific normalization (#70)
Add Uri.verbatim_query to extract literal query string (#57)
Add Uri.equal
Add Uri.user and Uri.password accessors for subcomponents of userinfo (#62)
Add Uri.with_password functional setter for password subcomponent of userinfo