Promises and event-driven I/O

Description

A promise is a value that may become determined in the future.

Lwt provides typed, composable promises. Promises that are resolved by I/O are resolved by Lwt in parallel.

Meanwhile, OCaml code, including code creating and waiting on promises, runs in a single thread by default. This reduces the need for locks or other synchronization primitives. Code can be run in parallel on an opt-in basis.

Published: 26 Nov 2021

Dependencies (11)

  1. ocamlfind dev & >= "1.7.3-1"
  2. seq
  3. result
  4. ocplib-endian
  5. ocaml-syntax-shims
  6. ocaml >= "4.08.0"
  7. ocaml (>= "4.02.0" & "os" != "win32 " | >= "4.06.0") & < "5.0"
  8. mmap >= "1.1.0" & "os" != "win32"
  9. dune-configurator
  10. dune >= "1.8.0"
  11. cppo build & >= "1.1.0"

Reverse Dependencies (539)

  1. 0install >= "2.15.1"
  2. aches-lwt
  3. albatross
  4. alcotest-lwt
  5. alcotest-mirage
  6. amqp-client >= "0.9.0" & < "1.0.2" | >= "1.1.0"
  7. amqp-client-lwt >= "2.0.1"
  8. angstrom-lwt-unix
  9. anthill
  10. anycache-lwt
  11. arakoon < "1.8.6" | >= "1.8.8"
  12. archi-lwt
  13. arp >= "2.3.1"
  14. arp-mirage >= "2.2.1"
  15. awa-lwt
  16. awa-mirage
  17. aws-lwt
  18. aws-s3-lwt
  19. azure-cosmos-db
  20. baardskeerder
  21. balancer
  22. bap < "1.0.0"
  23. bap-server < "0.2.0"
  24. bastet_lwt
  25. bimage-lwt
  26. biocaml = "0.4.0"
  27. bistro >= "0.4.0"
  28. brozip
  29. builder
  30. builder-web
  31. bun >= "0.3.3"
  32. c3
  33. calculon
  34. caldav
  35. camltc = "0.9.5" | >= "0.9.7.0"
  36. canary
  37. capnp-rpc-lwt < "1.2.3"
  38. capnp-rpc-unix >= "0.9.0" & < "1.2.3"
  39. caqti-lwt >= "0.11.0"
  40. carton
  41. carton-git
  42. carton-lwt
  43. cf-lwt
  44. chamelon
  45. chamelon-unix
  46. chamo >= "3.0"
  47. channel
  48. charrua-client >= "1.3.0"
  49. charrua-client-lwt
  50. charrua-client-mirage
  51. charrua-core < "0.3"
  52. charrua-unix >= "0.3" & != "0.10"
  53. clz
  54. cmdtui-lambda-term
  55. coclobas
  56. cohttp-curl-lwt
  57. cohttp-lwt
  58. cohttp-lwt-jsoo
  59. cohttp-lwt-unix >= "1.1.1"
  60. cohttp-lwt-unix-nossl
  61. cohttp-lwt-unix-ssl
  62. cohttp-mirage
  63. cohttp-server-lwt-unix
  64. comby
  65. comby-semantic
  66. conan-lwt
  67. conduit-lwt
  68. conduit-lwt-unix
  69. cowabloga >= "0.2.2"
  70. crunch >= "2.0.0"
  71. cstruct-lwt
  72. csv-lwt
  73. csvprovider
  74. ctypes >= "0.15.0"
  75. current < "0.6.4"
  76. current_docker < "0.6.4"
  77. current_examples < "0.6.4"
  78. current_git < "0.6.4"
  79. current_github < "0.6.4"
  80. current_gitlab < "0.6.4"
  81. current_ocluster < "0.2"
  82. current_rpc >= "0.4" & < "0.6.4"
  83. current_slack < "0.6.4"
  84. current_web < "0.6.4"
  85. dap
  86. data-encoding < "0.1.1"
  87. datakit
  88. datakit-bridge-github
  89. datakit-bridge-local-git
  90. datakit-ci
  91. datakit-client >= "0.11.0"
  92. datakit-github
  93. datakit-server
  94. devkit >= "1.2"
  95. dht < "0.2.0"
  96. distributed-lwt
  97. dkim-mirage
  98. dlm
  99. dns >= "0.19.1" & < "0.20.1"
  100. dns-certify
  101. dns-cli >= "4.6.3"
  102. dns-client < "7.0.0"
  103. dns-client-lwt
  104. dns-client-mirage
  105. dns-forward >= "0.9.0"
  106. dns-forward-lwt-unix
  107. dns-lwt
  108. dns-mirage
  109. dns-resolver
  110. dns-server
  111. dns-stub
  112. dnssd
  113. docker_hub
  114. docteur
  115. docteur-solo5
  116. docteur-unix
  117. doi2bib >= "0.5.1"
  118. dream
  119. dream-httpaf
  120. dream-pure
  121. dream-serve
  122. dropbox
  123. dune-rpc-lwt
  124. dune_watch
  125. earlybird
  126. elasticsearch-cli >= "0.4"
  127. equinoxe
  128. eris-lwt
  129. ethernet
  130. ez_api
  131. ezcurl-lwt
  132. ezirmin
  133. ezjs_min < "0.2"
  134. ezjsonm >= "0.4.2" & < "0.5.0"
  135. ezjsonm-lwt
  136. ezresto
  137. ezresto-directory >= "0.5"
  138. faraday-lwt
  139. faraday-lwt-unix >= "0.6.0"
  140. fat-filesystem >= "0.12.0"
  141. flowtype >= "0.72.0"
  142. frenetic < "2.0.0"
  143. fsevents-lwt
  144. fswatch_lwt
  145. gamepad
  146. gdb
  147. gdbprofiler >= "0.3"
  148. git != "1.4.3" & != "1.7.2"
  149. git-cohttp
  150. git-cohttp-mirage
  151. git-cohttp-unix
  152. git-mirage >= "3.0.0"
  153. git-paf
  154. git-unix = "1.11.1" | >= "3.0.0" & < "3.10.0"
  155. github
  156. github-hooks < "0.2.0" | >= "0.4.0"
  157. github-unix >= "4.4.0"
  158. gitlab-unix
  159. gluten-lwt
  160. gluten-lwt-unix < "0.4.0"
  161. gluten-mirage < "0.4.0"
  162. graphql-lwt
  163. gremlin
  164. grpc-lwt
  165. gufo
  166. h2-lwt
  167. h2-lwt-unix < "0.10.0"
  168. h2-mirage
  169. happy-eyeballs-lwt
  170. happy-eyeballs-mirage
  171. hardcaml < "1.1.0"
  172. hardcaml-examples >= "0.3.0"
  173. hardcaml-framework
  174. hiredis != "0.4"
  175. hockmd
  176. horned_worm < "0.3.1"
  177. http-lwt-client
  178. http-mirage-client
  179. http-multipart-formdata >= "2.0.0" & < "3.0.0"
  180. http2https
  181. httpaf-lwt-unix
  182. hvsock >= "1.0.2"
  183. i3ipc >= "0.1.4"
  184. imaplet-lwt
  185. influxdb-lwt
  186. inotify >= "2.4"
  187. inquire < "0.3.0"
  188. interface-prime-lwt
  189. iocaml < "0.4.6"
  190. iocaml-kernel >= "0.4.3" & < "0.4.6"
  191. iocamljs-kernel
  192. ip2location
  193. ipv6-multicast-lwt
  194. irc-client-lwt
  195. irc-client-lwt-ssl
  196. irc-client-tls
  197. irmin < "0.9.6" | = "0.9.10" | >= "0.11.0"
  198. irmin-bench
  199. irmin-chunk
  200. irmin-cli
  201. irmin-containers
  202. irmin-fs >= "2.3.0"
  203. irmin-git >= "2.3.0"
  204. irmin-graphql >= "2.3.0"
  205. irmin-http >= "2.3.0"
  206. irmin-indexeddb
  207. irmin-layers
  208. irmin-mem >= "2.3.0"
  209. irmin-mirage-git >= "2.3.0"
  210. irmin-mirage-graphql >= "2.3.0"
  211. irmin-pack
  212. irmin-test >= "2.3.0"
  213. irmin-unix >= "2.3.0"
  214. irmin-watcher >= "0.3.0"
  215. jerboa
  216. jitsu
  217. joolog
  218. jose < "0.9.0"
  219. js_of_ocaml < "2.5"
  220. js_of_ocaml-lwt >= "3.5.0"
  221. jsoo_broadcastchannel
  222. jsoo_router
  223. jsoo_storage
  224. jupyter >= "2.3.0"
  225. jupyter-kernel >= "0.4"
  226. kafka >= "0.3" & < "0.5"
  227. kafka_lwt
  228. kappa-library
  229. ke >= "0.5"
  230. ketrew >= "3.2.0"
  231. kinetic-client < "0.0.3" | >= "0.0.9"
  232. kubecaml
  233. lablqml < "0.6"
  234. lambda-runtime
  235. lambda-term >= "1.13"
  236. lambda_streams_lwt
  237. launchd
  238. learn-ocaml >= "0.13.0"
  239. learn-ocaml-client >= "0.13.0"
  240. letsencrypt
  241. letsencrypt-app
  242. letsencrypt-dns
  243. letters
  244. libres3
  245. links != "0.9"
  246. linol-lwt
  247. lwt-binio < "0.2.0"
  248. lwt-canceler
  249. lwt-dllist
  250. lwt-exit
  251. lwt-parallel >= "1.0.0"
  252. lwt-pipe
  253. lwt-pipeline
  254. lwt-watcher
  255. lwt-zmq < "1.0.0"
  256. lwt_camlp4
  257. lwt_domain < "0.3.0"
  258. lwt_eio
  259. lwt_glib >= "1.0.1"
  260. lwt_log >= "1.1.0"
  261. lwt_ppx
  262. lwt_ppx_let
  263. lwt_react >= "1.0.1"
  264. lwt_ssl >= "1.0.1"
  265. mariadb < "0.5.1"
  266. markup = "0.7.6"
  267. markup-lwt
  268. mbr-format >= "1.0.0"
  269. mdx
  270. mechaml
  271. memtrace-mirage
  272. metrics-influx
  273. metrics-lwt
  274. metrics-mirage
  275. metrics-unix
  276. mimic
  277. mindstorm-lwt
  278. mirage >= "0.4.1" & != "0.6.1" & < "0.8.0" | >= "0.10.0" & < "2.7.0"
  279. mirage-block < "1.0.0" | >= "2.0.0"
  280. mirage-block-ccm
  281. mirage-block-combinators
  282. mirage-block-lwt
  283. mirage-block-ramdisk
  284. mirage-block-solo5
  285. mirage-block-unix < "2.3.0" | = "2.8.2" | >= "2.13.0"
  286. mirage-block-xen
  287. mirage-bootvar-solo5 >= "0.2.0"
  288. mirage-bootvar-unix
  289. mirage-bootvar-xen >= "0.4.0"
  290. mirage-channel >= "4.0.0"
  291. mirage-channel-lwt
  292. mirage-clock-freestanding < "3.0.0"
  293. mirage-clock-lwt
  294. mirage-clock-unix >= "1.3.0" & < "3.0.0"
  295. mirage-console >= "3.0.0"
  296. mirage-console-lwt
  297. mirage-console-solo5 >= "0.2.0"
  298. mirage-console-unix >= "2.2.1"
  299. mirage-console-xen >= "5.0.0"
  300. mirage-console-xen-backend
  301. mirage-console-xen-cli
  302. mirage-crypto-entropy
  303. mirage-crypto-rng >= "0.7.0" & < "0.11.0"
  304. mirage-crypto-rng-lwt
  305. mirage-crypto-rng-mirage >= "0.8.8"
  306. mirage-device >= "2.0.0"
  307. mirage-dns < "3.0.0"
  308. mirage-entropy
  309. mirage-flow >= "1.0.3" & < "1.2.0" | >= "2.0.0"
  310. mirage-flow-combinators
  311. mirage-flow-lwt
  312. mirage-flow-rawlink
  313. mirage-flow-unix >= "1.3.0"
  314. mirage-fs >= "3.0.0"
  315. mirage-fs-lwt
  316. mirage-fs-unix < "1.1.1" | >= "1.3.0"
  317. mirage-http
  318. mirage-http-unix
  319. mirage-http-xen
  320. mirage-kv >= "3.0.0"
  321. mirage-kv-lwt
  322. mirage-kv-unix
  323. mirage-logs != "0.3.0"
  324. mirage-nat < "3.0.0"
  325. mirage-net >= "3.0.1"
  326. mirage-net-fd
  327. mirage-net-lwt
  328. mirage-net-macosx
  329. mirage-net-solo5
  330. mirage-net-unix >= "2.2.0"
  331. mirage-net-xen
  332. mirage-os-shim >= "3.0.0"
  333. mirage-profile
  334. mirage-protocols >= "4.0.0" & < "8.0.0"
  335. mirage-protocols-lwt
  336. mirage-qubes < "0.2" | >= "0.4"
  337. mirage-qubes-ipv4
  338. mirage-random-stdlib >= "0.1.0"
  339. mirage-runtime >= "3.7.0"
  340. mirage-solo5
  341. mirage-stack >= "2.0.0" & < "4.0.0"
  342. mirage-stack-lwt
  343. mirage-time >= "2.0.0"
  344. mirage-time-lwt
  345. mirage-time-unix
  346. mirage-types-lwt < "3.7.1"
  347. mirage-unix >= "3.0.0"
  348. mirage-vnetif
  349. mirage-vnetif-stack
  350. mirage-www >= "1.1.0"
  351. mirage-xen
  352. mirror
  353. monorobot
  354. mqtt >= "0.0.2"
  355. mrmime >= "0.5.0"
  356. multipart-form-data >= "0.2.0"
  357. multipart_form >= "0.2.0" & < "0.4.0"
  358. multipart_form-lwt
  359. mwt
  360. naboris
  361. nanomsg
  362. nbd = "2.1.1" | >= "4.0.3"
  363. nbd-tool
  364. nbd-unix
  365. netchannel
  366. nocrypto >= "0.5.4"
  367. nottui-lwt
  368. nproc
  369. nsq >= "0.4.0"
  370. obrowser
  371. obuilder < "0.5"
  372. obus >= "1.2.1"
  373. ocaml-variants >= "4.00.1+mirage-unix" & < "4.00.1+open-types"
  374. ocluster < "0.2"
  375. ocluster-api < "0.2"
  376. ocplib-concur
  377. ocplib-resto
  378. ocsigenserver >= "2.10"
  379. ocsipersist
  380. ocsipersist-dbm
  381. ocsipersist-lib
  382. ocsipersist-pgsql
  383. ocsipersist-sqlite
  384. odoc >= "2.0.0" & < "2.1.0"
  385. ojquery
  386. ojs-base
  387. ojs_base
  388. omigrate
  389. oneffs
  390. opam-sync-github-prs
  391. openflow < "0.2.0"
  392. opentelemetry-client-cohttp-lwt
  393. opentelemetry-cohttp-lwt >= "0.4"
  394. opentelemetry-lwt
  395. opium >= "0.11.0" & != "0.16.0"
  396. opium-graphql
  397. opium_kernel
  398. opomodoro
  399. order-i3-xfce
  400. ordma >= "0.0.3"
  401. osc-lwt
  402. oskel >= "0.3.0"
  403. ounit-lwt < "2.2.0"
  404. ounit2-lwt
  405. owork
  406. ox < "1.1.0"
  407. paf
  408. paf-cohttp
  409. pcap-format >= "0.3.3" & < "0.5.0"
  410. petrol
  411. pgx_lwt
  412. pgx_lwt_mirage
  413. pgx_lwt_unix < "2.0"
  414. piaf
  415. plebeia >= "2.0.0"
  416. plist-xml-lwt
  417. plotkicadsch >= "0.4.0"
  418. ppx_defer >= "0.4.0"
  419. ppx_deriving_rpc
  420. ppx_json_types
  421. ppx_netblob
  422. ppx_rapper_lwt
  423. ppx_sqlexpr
  424. proc-smaps
  425. prof_spacetime
  426. prometheus
  427. prometheus-app
  428. protocol-9p >= "0.10.0"
  429. protocol-9p-unix
  430. qcow >= "0.8.1"
  431. qcow-format < "0.3"
  432. qcow-tool
  433. qfs = "0.5" | >= "0.7"
  434. quests
  435. rawlink >= "1.0" & < "2.1"
  436. rawlink-lwt
  437. rdf_lwt
  438. redis-lwt
  439. reparse-lwt
  440. reparse-lwt-unix
  441. resource-pooling >= "0.3.2"
  442. resp
  443. resp-mirage >= "0.10.0"
  444. resp-unix >= "0.10.0"
  445. resto
  446. resto-cohttp-client >= "0.4"
  447. resto-cohttp-self-serving-client
  448. resto-cohttp-server >= "0.4"
  449. resto-directory >= "0.4"
  450. riak
  451. ringo-lwt
  452. river
  453. rock
  454. rpc >= "1.5.1" & < "7.1.0"
  455. rpclib-js
  456. rpclib-lwt
  457. SZXX
  458. sanddb
  459. scgi
  460. sendmail-lwt
  461. serial
  462. session-cohttp-lwt
  463. session-cookie-lwt
  464. session-postgresql-lwt >= "0.4.1"
  465. sessions
  466. shared-block-ring < "2.3.0" | >= "3.0.0"
  467. shared-memory-ring >= "1.2.0" & < "2.0.0"
  468. shared-memory-ring-lwt
  469. sihl < "0.2.0"
  470. slacko
  471. socket-daemon < "0.3.0"
  472. spin < "0.8.0"
  473. spotify-web-api < "0.2.1"
  474. sqlexpr = "0.7.1" | >= "0.9.0"
  475. statsd-client
  476. stog >= "0.16.0"
  477. syguslib-utils
  478. syndic >= "1.4" & < "1.6.0"
  479. tar-format >= "0.4.1"
  480. tar-mirage < "2.2.0"
  481. tar-unix
  482. tcpip >= "3.1.1" & < "3.4.1" | >= "4.1.0"
  483. teash
  484. telegraml
  485. terminus
  486. tezos-base >= "13.0" & < "15.0"
  487. tezos-clic >= "13.0" & < "15.0"
  488. tezos-crypto >= "13.0" & < "15.0"
  489. tezos-error-monad >= "8.0" & < "9.0" | >= "13.0" & < "15.0"
  490. tezos-lwt-result-stdlib >= "9.0" & < "15.0"
  491. tezos-p2p >= "11.0" & < "13.0"
  492. tezos-protocol-compiler >= "13.0"
  493. tezos-protocol-environment >= "13.0" & < "15.0"
  494. tezos-proxy-server
  495. tezos-stdlib < "15.0"
  496. tezos-stdlib-unix < "9.0" | >= "13.0" & < "15.0"
  497. tezos-test-helpers >= "12.0" & < "15.0"
  498. tezt < "3.0.0"
  499. tftp
  500. themoviedb
  501. tidy_email
  502. tls = "0.10.1" | >= "0.10.6" & < "0.16.0"
  503. tls-lwt
  504. tls-mirage
  505. transmission-rpc
  506. tube >= "4.3.0"
  507. tuntap >= "1.0.0" & < "1.7.0" | >= "2.0.0"
  508. typerex-lldb
  509. u2f
  510. uring
  511. uspf
  512. uspf-lwt
  513. utop >= "1.4.0"
  514. uwt >= "0.3.0"
  515. vchan >= "0.9.7" & < "2.0.0" | >= "2.0.3"
  516. vchan-unix
  517. vchan-xen
  518. vercel
  519. vhd-format >= "0.7.0" & < "0.8.0"
  520. vhd-format-lwt >= "0.12.0"
  521. vhd-tool < "0.12.0"
  522. vmnet >= "1.3.2"
  523. vpnkit >= "0.2.0"
  524. vue-jsoo < "0.3"
  525. wayland
  526. webauthn
  527. websocket < "2.3"
  528. xe-unikernel-upload
  529. xen-api-client < "0.9.14"
  530. xen-block-driver
  531. xen-evtchn < "1.0.6" | >= "2.0.0"
  532. xen-evtchn-unix
  533. xen-gnt >= "2.2.3"
  534. xenctrl < "0.9.29" | >= "0.9.32"
  535. xenstore >= "1.3.0"
  536. xenstore_transport >= "1.0.0"
  537. xentropyd
  538. yurt < "0.3"
  539. zmq-lwt

Conflicts (1)

  1. ocaml-variants = "4.02.1+BER"

Install

Authors

Maintainers

Sources

5.5.0.tar.gz
md5=94272fac89c5bf21a89c102b8a8f35a5
sha512=8951b94555e930634375816d71815b9d85daad6ffb7dab24864661504d11be26575ab0b237196c54693efa372a9b69cdc1d5068a20a250dc0bbb4a3c03c5fda1