Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/mirage/ocaml-uri
RFC3986 URI parsing library for OCaml
https://github.com/mirage/ocaml-uri
ocaml rfc-3986 uri url
Last synced: 5 days ago
JSON representation
RFC3986 URI parsing library for OCaml
- Host: GitHub
- URL: https://github.com/mirage/ocaml-uri
- Owner: mirage
- License: other
- Created: 2012-01-07T03:15:38.000Z (almost 13 years ago)
- Default Branch: main
- Last Pushed: 2024-07-23T12:07:57.000Z (3 months ago)
- Last Synced: 2024-10-19T00:56:20.483Z (16 days ago)
- Topics: ocaml, rfc-3986, uri, url
- Language: OCaml
- Homepage:
- Size: 1.31 MB
- Stars: 98
- Watchers: 21
- Forks: 57
- Open Issues: 27
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGES.md
- License: LICENSE.md
Awesome Lists containing this project
- awesome-list - ocaml-uri
README
Uri -- an RFC3986 URI/URL parsing library
-----------------------------------------This is an OCaml implementation of the [RFC3986](http://tools.ietf.org/html/rfc3986) specification
for parsing URI or URLs.## Installation
### Via OPAM
The [OPAM](https://opam.ocaml.org) package manager can be used to install this library from source.
opam install uri
### Locally
You can build the source code locally via the [dune](https://github.com/ocaml/dune)
build system.opam install uri --deps-only
eval `opam config env`
dune build
dune runtestwill install the dependencies via OPAM, build the library and then run the tests in the [lib_test/](lib_test/) directory.
## Usage
Once installed, there are three ocamlfind packages available for your use:
- `uri` - the base `Uri` module
- `uri-re` - the _legacy_ implementation
At the beginning, `uri` used `re` to parse a `string`. Since 4.0.0,
we use `angstrom` - if something breaks with `uri.4.0.0`, you should compare
with `uri-re` and submit an issue. `uri-re` is deprecated and it will be
removed on the next release (see #150)
- `uri.top` - the toplevel printers for use with [utop](https://github.com/diml/utop)
- `uri-sexp` - provides converters to and from s-expressions (via a `Uri_sexp.t` type alias)
- `uri.services` - the `Uri_services` module that provides the equivalent of *[services(5)](http://man7.org/linux/man-pages/man5/services.5.html)*
- `uri.services_full` - the `Uri_services_full` module that provides a complete copy of the `/etc/services` file. This is quite large and normally not needed.## Contact
- Issues:
- E-mail:
- API Documentation:[![Build Status](https://travis-ci.org/mirage/ocaml-uri.png)](https://travis-ci.org/mirage/ocaml-uri)