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

Conflicts

None

OCaml

Innovation. Community. Security.