ocaml-uri

RFC3986 URI parsing library for OCaml

OTHER License

Stars
98
Committers
34

Bot releases are hidden (Show)

ocaml-uri - 4.4.0 Latest Release

Published by dinosaure about 1 year ago

CHANGES:

  • 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)

ocaml-uri - 4.3.0

Published by avsm over 1 year ago

CHANGES:

  • Add Uri.Absolute_http, an RFC9110-compliance specialization of a
    Uri.t. (#164 #162 @torinnd).
  • Add a uri-bench package for the benchmarking dependencies in this
    repository (#166 @tmcgilchrist).
ocaml-uri - https://github.com/mirage/ocaml-uri/releases/tag/v4.2.0

Published by avsm over 3 years ago

CHANGES:

  • Do not mutate the base encoder when using custom percent encoders.
    This was a bug introduced in #147. (#156 @aantron)
  • Disable Travis CI tests and switch Win/Mac tests to GitHub Actions and
    Linux ones to ocaml-ci (@avsm).
ocaml-uri - https://github.com/mirage/ocaml-uri/releases/tag/v4.1.0

Published by dinosaure almost 4 years ago

CHANGES:

  • 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).
ocaml-uri - https://github.com/mirage/ocaml-uri/releases/tag/v4.0.0

Published by dinosaure about 4 years ago

CHANGES:

  • 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)
ocaml-uri - https://github.com/mirage/ocaml-uri/releases/tag/v3.1.0

Published by avsm almost 5 years ago

CHANGES:

  • Add Uri_sexp.equal (#139 @vbmithr)
  • Update opam files to remove dune as a build-only dep (@craigfe #140)
ocaml-uri - https://github.com/mirage/ocaml-uri/releases/tag/v3.0.0

Published by avsm over 5 years ago

CHANGES:

  • 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.

ocaml-uri - https://github.com/mirage/ocaml-uri/releases/tag/v2.2.1

Published by avsm over 5 years ago

CHANGES:

  • Fix deprecation warnings in Re 1.9.0 (#137 @avsm).
ocaml-uri - https://github.com/mirage/ocaml-uri/releases/tag/v2.1.0

Published by avsm over 5 years ago

CHANGES:

  • 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.
ocaml-uri - https://github.com/mirage/ocaml-uri/releases/tag/v2.2.0

Published by avsm over 5 years ago

CHANGES:

  • 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)
ocaml-uri - Decouple Sexp converters from base library

Published by avsm about 6 years ago

  • 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)
ocaml-uri - use latest Re and improve resolution

Published by avsm over 6 years ago

  • Use latest interfaces in Re >=1.7.2 (#122)
  • When resolving URI inherit userinfo from the base URI (#116)
ocaml-uri - Fix ARM compilation and improve build speed

Published by avsm almost 7 years ago

  • 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.
ocaml-uri - OCaml 4.06.0 and safe string support

Published by djs55 almost 7 years ago

  • 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)
ocaml-uri - Port to Jbuilder

Published by avsm over 7 years ago

  • Port build system to jbuilder (#100 @vbmithr @rgrinberg @avsm @dsheets)
  • Restrict build to OCaml 4.03.0+ (was formerly OCaml 4.02.0+).
  • Add Appveyor tests for Windows compilation.
ocaml-uri - Use PPX to build instead of camlp4

Published by avsm over 8 years ago

  • Remove sexplib.syntax, type_conv deps and camlp4 transitive dependency
  • Add ppx_sexp_conv dependency
  • Require OCaml 4.02.3+
ocaml-uri - Fix `with_password None` bug

Published by dsheets over 9 years ago

1.9.1 (2015-06-26):

  • Fix with_password None when no userinfo present (#78 from Hezekiah M. Carty)
ocaml-uri - Verbatim query strings, URN support, colon-handling, Uri_services updates

Published by dsheets over 9 years ago

1.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
  • Fix file scheme host normalization bug which introduced empty host (#59)
ocaml-uri - Add URI ordering and comparison functions, and bugfixes

Published by avsm over 9 years ago

  • Uri.with_port no longer sets the host fragment to a blank value if both
    the host and port are empty (#63).
  • Uri.compare imposes an ordering by host, scheme, port, userinfo, path,
    query, and finally fragment. (#55).
  • Uri is now an OrderedType and can be used directly in Maps and Sets (#55).
  • Remove deprecation warnings with OCaml 4.02.0+ (#58).
  • Drop support for OCaml 3.12.1, and now require OCaml 4.00.1+.
  • Modernise Travis scripts to use OPAM 1.2 workflow.
ocaml-uri - Functional mutator bug fixes

Published by dsheets about 10 years ago

  • Fix empty-but-existing query ("?") parsing bug
  • Fix with_userinfo against hostless URI representation bug
  • Fix with_port against hostless URI representation bug
  • Fix with_path with relative path against hosted URI representation bug (#51)
  • Fix make without host but with userinfo or port representation bug
  • Fix make with host, userinfo, or port and relative path representation bug

In sum, the library will now try to guide the user to using an abstract value that is actually serializable.