package uri

  1. Overview
  2. Docs
An RFC3986 URI/URL parsing library

Install

Dune Dependency

Authors

Maintainers

Sources

uri-4.4.0.tbz
sha256=cdabaf6ef5cd2161e59cc7b74c6e4a68ecb80a9f4e96002e338e1b6bf17adec4
sha512=88374143e0d8aaf6d40aa3cbd7593f9832e9c9727738c6e651498125150c83d5646e13b5737d5c3e81484dd041127f67f8acea13fdc0300ac4e46107559f8ae2

Description

This is an OCaml implementation of the RFC3986 specification for parsing URI or URLs.

README

Uri -- an RFC3986 URI/URL parsing library

This is an OCaml implementation of the RFC3986 specification for parsing URI or URLs.

Installation

Via OPAM

The OPAM 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 build system.

opam install uri --deps-only
eval `opam config env`
dune build
dune runtest

will install the dependencies via OPAM, build the library and then run the tests in the 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

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

  • 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

Dependencies (4)

  1. angstrom >= "0.14.0"
  2. stringext >= "1.4.0"
  3. dune >= "1.2.0"
  4. ocaml >= "4.08.0"

Dev Dependencies (3)

  1. crowbar with-test & >= "0.2"
  2. ppx_sexp_conv with-test & >= "v0.9.0"
  3. ounit2 with-test & >= "1.0.2"

  1. amqp-client-async >= "2.1.0"
  2. amqp-client-lwt >= "2.1.0"
  3. archetype < "0.1.5" | >= "1.2.10"
  4. async-uri < "0.2" | = "0.3.0"
  5. async_js >= "v0.13.0"
  6. aws
  7. aws-s3
  8. azblob
  9. azure-cosmos-db
  10. bap-bundle
  11. bap-byteweight >= "2.2.0"
  12. bap-patterns
  13. bap-plugins >= "2.2.0"
  14. bap-std >= "2.2.0"
  15. bap-trace >= "2.2.0"
  16. bap-traces
  17. bap-veri
  18. beluga >= "1.1"
  19. biocaml
  20. biotk >= "0.2.0"
  21. bonsai >= "v0.16.0"
  22. builder-web
  23. calculon-web
  24. caldav
  25. camyll >= "0.3.0"
  26. canary
  27. capnp-rpc >= "2.0"
  28. capnp-rpc-lwt >= "0.3.1" & < "2.0"
  29. capnp-rpc-net
  30. caqti
  31. caqti-driver-postgresql >= "1.9.1"
  32. carbon
  33. cohttp >= "2.1.3"
  34. cohttp-async >= "2.1.3"
  35. cohttp-curl-async
  36. cohttp-curl-lwt
  37. cohttp-eio
  38. cohttp-lwt >= "4.0.0"
  39. conduit >= "1.3.0"
  40. conduit-async >= "2.3.0"
  41. conduit-lwt-unix
  42. conduit-mirage >= "2.3.0"
  43. cookie
  44. coq-lsp >= "0.1.5+8.16"
  45. cow
  46. current_examples >= "0.4"
  47. current_github >= "0.4"
  48. current_slack >= "0.4"
  49. current_web >= "0.4"
  50. dns < "4.0.0"
  51. doi2bib = "0.4.0"
  52. dream
  53. dream-pure
  54. ezresto
  55. forester >= "4.1.0"
  56. functoria >= "4.0.0~beta1"
  57. gemini
  58. git
  59. git-cohttp
  60. git-cohttp-mirage
  61. git-cohttp-unix
  62. git-mirage >= "3.7.0"
  63. git-paf
  64. git-unix >= "3.0.0"
  65. github
  66. gitlab
  67. gluon
  68. grpc
  69. guardian
  70. httpaf_caged
  71. hvsock >= "2.0.0"
  72. hyper
  73. icalendar
  74. ip2locationio
  75. ip2whois
  76. irmin
  77. irmin-cli
  78. irmin-git >= "2.3.0"
  79. irmin-http >= "2.3.0"
  80. irmin-mirage-git >= "2.3.0"
  81. irmin-mirage-graphql >= "2.3.0"
  82. irmin-server
  83. irmin-unix >= "2.3.0"
  84. json-data-encoding
  85. kubecaml
  86. lambda-runtime
  87. letsencrypt >= "0.3.0"
  88. links
  89. liquidsoap >= "2.1.1" & < "2.2.0" | >= "2.3.1"
  90. liquidsoap-core
  91. lsp = "1.12.3"
  92. mechaml >= "1.2.0"
  93. mehari
  94. mehari-eio < "0.3"
  95. memtrace_viewer < "v0.15.0"
  96. minima-theme
  97. mirage >= "4.5.0"
  98. mirage-block-unix
  99. monorobot
  100. moss
  101. naboris
  102. nbd
  103. nbd-tool
  104. obi
  105. ocaml-lsp-server = "1.12.3"
  106. ocaml_openapi_generator
  107. ocplib-json-typed
  108. octez-client
  109. octez-internal-libs
  110. octez-libs
  111. octez-node
  112. octez-protocol-001-PtCJ7pwo-libs
  113. octez-protocol-002-PsYLVpVv-libs
  114. octez-protocol-003-PsddFKi3-libs
  115. octez-protocol-004-Pt24m4xi-libs
  116. octez-protocol-005-PsBabyM1-libs
  117. octez-protocol-006-PsCARTHA-libs
  118. octez-protocol-007-PsDELPH1-libs
  119. octez-protocol-008-PtEdo2Zk-libs
  120. octez-protocol-009-PsFLoren-libs
  121. octez-protocol-010-PtGRANAD-libs
  122. octez-protocol-011-PtHangz2-libs
  123. octez-protocol-012-Psithaca-libs
  124. octez-protocol-013-PtJakart-libs
  125. octez-protocol-014-PtKathma-libs
  126. octez-protocol-015-PtLimaPt-libs
  127. octez-protocol-016-PtMumbai-libs
  128. octez-protocol-017-PtNairob-libs
  129. octez-protocol-018-Proxford-libs
  130. octez-protocol-019-PtParisB-libs
  131. octez-protocol-020-PsParisC-libs
  132. octez-protocol-alpha-libs
  133. octez-proxy-server
  134. octez-shell-libs
  135. octez-smart-rollup-client-PtMumbai < "17.3"
  136. octez-tx-rollup-client-PtLimaPt
  137. oidc
  138. omigrate
  139. opamfu
  140. opium >= "0.19.0"
  141. paf
  142. paf-cohttp
  143. pf-qubes
  144. piaf
  145. picos_io_cohttp
  146. picos_meta
  147. pure-html
  148. rdf
  149. resto
  150. resto-acl
  151. resto-cohttp-client
  152. resto-cohttp-self-serving-client
  153. riot
  154. rss
  155. sarif
  156. satyrographos >= "0.0.2.1"
  157. scgi
  158. sentry
  159. server-reason-react
  160. slack
  161. smaws-lib
  162. spotify-web-api
  163. stog >= "0.17.0"
  164. syndic
  165. textrazor
  166. tezos-baking-015-PtLimaPt
  167. tezos-baking-015-PtLimaPt-commands
  168. tezos-baking-016-PtMumbai
  169. tezos-baking-016-PtMumbai-commands
  170. tezos-baking-017-PtNairob
  171. tezos-baking-017-PtNairob-commands
  172. tezos-baking-alpha
  173. tezos-baking-alpha-commands
  174. tezos-base >= "16.0"
  175. tezos-client-001-PtCJ7pwo
  176. tezos-client-002-PsYLVpVv
  177. tezos-client-003-PsddFKi3
  178. tezos-client-004-Pt24m4xi
  179. tezos-client-005-PsBabyM1
  180. tezos-client-006-PsCARTHA
  181. tezos-client-007-PsDELPH1
  182. tezos-client-008-PtEdo2Zk
  183. tezos-client-009-PsFLoren
  184. tezos-client-010-PtGRANAD
  185. tezos-client-011-PtHangz2
  186. tezos-client-012-Psithaca
  187. tezos-client-013-PtJakart
  188. tezos-client-014-PtKathma
  189. tezos-client-015-PtLimaPt
  190. tezos-client-016-PtMumbai
  191. tezos-client-017-PtNairob
  192. tezos-client-alpha
  193. tezos-client-base
  194. tezos-client-base-unix
  195. tezos-client-commands
  196. tezos-event-logging >= "16.0"
  197. tezos-mockup-proxy
  198. tezos-mockup-registration
  199. tezos-proxy
  200. tezos-proxy-server-config
  201. tezos-rpc >= "16.0"
  202. tezos-rpc-http >= "16.0"
  203. tezos-signer-backends
  204. tezos-stdlib-unix >= "16.0"
  205. tezos-test-helpers
  206. tezt-performance-regression
  207. tezt-tezos
  208. uri-bench
  209. uri-re >= "4.4.0"
  210. uri-sexp >= "4.4.0"
  211. validate
  212. virtual_dom >= "v0.16.0"
  213. wamp >= "1.1"
  214. wtr
  215. wtr-ppx

Conflicts

None

OCaml

Innovation. Community. Security.