package odoc

  1. Overview
  2. Docs

Description

Published: 16 Oct 2018

README

odoc  

odoc is a documentation generator for OCaml. It reads doc comments , delimited with (** ... *), and outputs HTML. See example output at docs.mirage.io.

Text inside doc comments is marked up in ocamldoc syntax:

val compare : string -> string -> int
(** [compare s1 s2] compares [s1] and [s2] in {e lexicographic} order. The
    result is negative if [s1] precedes [s2], positive if [s1] follows [s2],
    and zero if [s1] and [s2] are equal. *)

The syntax reference is here. There is also an explanation of how to attach comments to specific types, values, and other elements in your program.


odoc's main advantage over ocamldoc is an accurate cross-referencer, which handles the complexity of the OCaml module system. odoc also offers a good opportunity to improve HTML output compared to ocamldoc, but this is very much a work in progress :)


Using odoc with OCaml

opam install odoc

The easiest way to use odoc right now is by having Dune drive it. This command should work in most Dune projects out of the box:

dune build @doc

The generated docs can then be found locally at ./_build/default/_doc/_html/index.html.


Using odoc with BuckleScript/Reason

While the BuckleScript/Reason toolchain relies on npm, odoc at the moment needs to be used from a working OCaml toolchain.

This means we follow the same installation than above, but using the 4.02.3+buckle-master version of the OCaml compiler.

λ opam switch 4.02.3+buckle-master
λ eval `opam config env`
λ opam pin add odoc.dev git+https://github.com/ocaml/odoc

Now with that working, we can point odoc to the path where BuckleScript saves the compiled code that we can use to generate our documentation. This path is $root/lib/bs/src.

In there you'll find your .cmt and .cmti files.

You can now compile each one of them from .cmt[i] to .odoc and from .odoc to .html.

The following script can help you get started:

#!/bin/bash

readonly PKG=$1
readonly DOCS=$2

readonly ODOC=$(which odoc)
readonly LIB=./lib/bs/src

readonly CMT_FILES=$(find ${LIB} -name "*.cmti")
readonly ODOC_FILES=$(echo ${CMT_FILES} | sed "s/cmti/odoc/g")

echo "<< Compiling docs..."
for file in ${CMT_FILES}; do
  ${ODOC} compile \
    -I ${LIB} \
    --pkg=${PKG} \
    ${file}
done
echo ">> Done!"

echo "<< Generating HTML..."
for file in ${ODOC_FILES}; do
  ${ODOC} html \
    -I ${LIB} \
    -o ${DOCS} \
    --syntax=re \
    --semantic-uris \
    ${file}
done
echo ">> Done!"

And you can call it like:

λ ./mk-docs.sh MyPackageName ${path_to_docs_folder}
<< Compiling docs...
>> Done!
<< Generating HTML...
>> Done!

Contact

odoc is most discussed on discuss.ocaml.org's Ecosystem category with the odoc tag. Please also don't hesitate to open an issue.


Contributing

Any question asked, issue opened, feedback offered, is a contribution to odoc, and the project and all its users are thankful :) If you'd like to contribute code specifically, you may find the guide in CONTRIBUTING.md helpful. If anything is missing from it, please don't hesitate to reach out for help.

Dependencies (9)

  1. tyxml build & >= "4.0.0"
  2. result build
  3. ocaml build & >= "4.02.0" & < "4.08.0"
  4. fpath build
  5. cppo build & >= "1.1.0"
  6. cmdliner build & >= "1.0.0"
  7. dune < "2.0"
  8. bos build
  9. astring build

Dev Dependencies

None

  1. absolute >= "0.2"
  2. acgtk >= "2.0.0"
  3. adobe_font_metrics
  4. agrid
  5. aifad >= "2.3.0"
  6. alba >= "0.4.1"
  7. alcotest = "1.1.0" | = "1.2.3" | >= "1.5.0"
  8. alcotest-async >= "1.5.0"
  9. alcotest-js
  10. alcotest-lwt >= "1.5.0"
  11. alcotest-mirage >= "1.5.0"
  12. algaeff
  13. alt-ergo >= "2.4.1"
  14. alt-ergo-lib >= "2.4.1"
  15. alt-ergo-parsers >= "2.4.1"
  16. alt-ergo-plugin-ab-why3
  17. altgr-ergo >= "2.4.1"
  18. ambient-context
  19. ambient-context-eio
  20. ambient-context-lwt
  21. anders < "0.7.1"
  22. ansi >= "0.6.0"
  23. antic
  24. ao >= "0.2.4"
  25. arb
  26. archetype >= "1.2.3"
  27. arg-complete
  28. argon2 >= "1.0.0"
  29. argsh
  30. arrakis
  31. arrayjit
  32. asai
  33. asak
  34. ask
  35. ask-integrator
  36. async-uri >= "0.4.0"
  37. atable
  38. atacama < "0.0.4"
  39. atd >= "2.3.3"
  40. atdd
  41. atdgen >= "2.3.3"
  42. atdgen-codec-runtime >= "2.3.3"
  43. atdgen-runtime >= "2.3.3"
  44. atdj >= "2.3.3" & < "20151001.01"
  45. atdpy
  46. atds >= "2.3.3"
  47. atdts
  48. autofonce
  49. autofonce_config
  50. autofonce_core
  51. autofonce_lib
  52. autofonce_m4
  53. autofonce_misc
  54. autofonce_patch
  55. autofonce_share
  56. avro
  57. avro-compiler
  58. awsm
  59. awsm-async
  60. awsm-codegen
  61. awsm-lwt
  62. backoff
  63. baguette_sharp
  64. bam
  65. bare_encoding
  66. base32
  67. batsat
  68. batteries >= "3.7.1"
  69. bencode >= "2.0"
  70. bestline
  71. bin_tree
  72. bindlib >= "6.0.0"
  73. binsec >= "0.4.0"
  74. bio_io
  75. biotk
  76. bitcoin >= "3.0"
  77. bitcoin-cohttp-async
  78. bitcoin-cohttp-lwt
  79. bitcoin-ocurl
  80. bitcoinml
  81. bitgenerators
  82. bitmasks >= "1.1.0"
  83. bitpack_serializer
  84. bitwuzla
  85. bitwuzla-c
  86. bitwuzla-cxx
  87. bls12-381 >= "6.0.1" & < "18.0"
  88. blurhash
  89. bogue >= "20210917"
  90. bogue-tutorials
  91. boltzgen >= "0.9.2"
  92. boulangerie
  93. box
  94. brotli >= "2.0.3"
  95. brr-lwd
  96. bwd < "2.0.0"
  97. bytebuffer
  98. bytestring
  99. bz2
  100. ca-certs-nss >= "3.64.0.1"
  101. cairn
  102. caisar
  103. caisar-ir
  104. caisar-nnet
  105. caisar-onnx
  106. caisar-ovo
  107. caisar-xgboost
  108. calcium
  109. calculon >= "0.3"
  110. calculon-web >= "0.3"
  111. calendar >= "3.0.0"
  112. calipso
  113. camlimages >= "5.0.5"
  114. camlp-streams >= "5.0.1"
  115. camlrack
  116. camomile >= "2.0.0"
  117. camyll
  118. canary
  119. caqti >= "1.7.0"
  120. caqti-async >= "1.7.0"
  121. caqti-driver-mariadb >= "1.7.0"
  122. caqti-driver-postgresql >= "1.7.0"
  123. caqti-driver-sqlite3 >= "1.7.0"
  124. caqti-eio
  125. caqti-lwt >= "1.7.0"
  126. caqti-mirage
  127. caqti-tls
  128. caqti-type-calendar >= "1.9.0"
  129. carbon
  130. castore
  131. catala >= "0.5.0"
  132. catapult
  133. catapult-client
  134. catapult-daemon
  135. catapult-file
  136. catapult-sqlite
  137. cborl
  138. ccbg
  139. cf
  140. cf-lwt
  141. cfg >= "2.3.0"
  142. chamo >= "4.0"
  143. checked_oint
  144. choice >= "0.4"
  145. chrome-trace
  146. cid
  147. clap >= "0.2.0"
  148. clarity-lang
  149. clim
  150. clim-ppx
  151. cll
  152. clp_operations
  153. cmon
  154. cohttp >= "6.0.0~alpha0"
  155. cohttp-async >= "6.0.0~alpha0"
  156. cohttp-curl
  157. cohttp-curl-async
  158. cohttp-curl-lwt
  159. cohttp-eio
  160. cohttp-lwt >= "6.0.0~alpha0"
  161. cohttp-lwt-jsoo >= "6.0.0~alpha0"
  162. cohttp-lwt-unix >= "6.0.0~alpha0"
  163. cohttp-mirage >= "6.0.0~alpha0"
  164. cohttp-server-lwt-unix
  165. cohttp-top >= "6.0.0~alpha0"
  166. colibri2
  167. colibrics
  168. colibrilib
  169. colors
  170. combic
  171. combinaml
  172. combinat >= "3.0"
  173. config
  174. config-file >= "1.2.1"
  175. conformist >= "0.8.1"
  176. containers >= "2.0"
  177. containers-data
  178. containers-thread
  179. coq >= "8.19.0"
  180. coq-core >= "8.19.0"
  181. coq-stdlib >= "8.19.0"
  182. coqide >= "8.19.0"
  183. coqide-server >= "8.19.0"
  184. crc >= "2.0.0"
  185. crontab
  186. crowbar >= "0.2.1"
  187. cry >= "0.6.6"
  188. csexp >= "1.5.1"
  189. css
  190. ctoxml
  191. ctypes >= "0.21.1"
  192. ctypes-foreign >= "0.21.1"
  193. cucumber
  194. cudf >= "0.10"
  195. cue_sheet_maker
  196. curly >= "0.2.0"
  197. current >= "0.6.4"
  198. current-albatross-deployer
  199. current-web-pipelines
  200. current_docker >= "0.6.4"
  201. current_examples >= "0.6.4"
  202. current_git >= "0.6.4"
  203. current_github >= "0.6.4"
  204. current_gitlab >= "0.6.4"
  205. current_ocluster >= "0.2"
  206. current_rpc >= "0.6.4"
  207. current_slack >= "0.6.4"
  208. current_ssh
  209. current_web >= "0.6.4"
  210. curses >= "1.0.10"
  211. DkSDKFFIOCaml_Std
  212. data-encoding >= "0.5"
  213. datalog >= "0.6"
  214. dates_calc
  215. dbf >= "0.2.0"
  216. decimal
  217. decoders >= "0.5.0"
  218. decoders-bencode
  219. decoders-cbor
  220. decoders-ezjsonm >= "0.3.0"
  221. decoders-ezxmlm
  222. decoders-jsonaf
  223. decoders-jsonm
  224. decoders-msgpck
  225. decoders-sexplib
  226. decoders-yojson >= "0.3.0"
  227. delimcc_of_fxhandler
  228. devkit >= "1.20210120"
  229. diff
  230. disml
  231. dkml-c-probe
  232. dkml-component-offline-ocamlrun
  233. dkml-component-offline-opam
  234. dkml-component-staging-ocamlrun >= "4.12.1~v1.0.2"
  235. dkml-component-staging-opam32 < "2.2.0~dkml20220801"
  236. dkml-component-staging-opam64 < "2.2.0~dkml20220801"
  237. dkml-dune-dsl
  238. dkml-dune-dsl-show
  239. dkml-install >= "0.5.1"
  240. dkml-install-installer >= "0.5.1"
  241. dkml-install-runner >= "0.5.1"
  242. dkml-option-vcpkg
  243. dkml-package-console >= "0.5.1"
  244. dkml-runtime-distribution
  245. dkml-workflows
  246. dlm >= "0.3.3"
  247. dmap
  248. docfd
  249. docker-api >= "0.2.2"
  250. dockerfile >= "8.1.0"
  251. dockerfile-cmd >= "8.1.0"
  252. dockerfile-opam >= "8.1.0"
  253. doculib
  254. doi2bib >= "0.3.0"
  255. dolmen >= "0.5"
  256. dolmen_bin
  257. dolmen_loop
  258. dolmen_lsp
  259. dolmen_model
  260. dolmen_type
  261. domain-local-await
  262. domain-local-timeout
  263. domainslib >= "0.5.1"
  264. dose3 >= "6.1"
  265. dose3-extra
  266. dream-accept
  267. dream-cli
  268. dream-encoding
  269. dream-html
  270. dream-htmx
  271. dream-livereload
  272. drom
  273. drom_lib
  274. drom_toml
  275. dscheck
  276. dssi >= "0.1.4"
  277. dtools >= "0.4.3"
  278. dual
  279. dune-action-plugin >= "2.7.0"
  280. dune-build-info >= "2.7.0"
  281. dune-compiledb
  282. dune-configurator >= "2.7.0"
  283. dune-expand
  284. dune-glob >= "2.7.0"
  285. dune-private-libs >= "2.7.0"
  286. dune-release
  287. dune-rpc
  288. dune-rpc-lwt
  289. dune-site
  290. duppy >= "0.9.1"
  291. dyn
  292. earley >= "3.0.0"
  293. earlybird >= "1.0.0"
  294. easy-format >= "1.3.3"
  295. ego
  296. eio
  297. eio-ssl >= "0.1.1"
  298. eio-trace
  299. eio_linux
  300. eio_luv
  301. eio_main
  302. eio_posix
  303. eio_windows
  304. electrod >= "1.0.0"
  305. eliom >= "10.1.2"
  306. elpi >= "1.16.7"
  307. embedded_ocaml_templates >= "0.8"
  308. encoding
  309. equinoxe
  310. equinoxe-cohttp
  311. equinoxe-hlc
  312. eris
  313. eris-lwt
  314. erlang
  315. errpy
  316. extism
  317. extism-manifest
  318. extunix >= "0.4.0"
  319. ez_cmdliner >= "0.2.0"
  320. ez_config >= "0.2.0"
  321. ez_file >= "0.2.0"
  322. ez_hash
  323. ez_opam_file
  324. ez_search
  325. ez_subst
  326. ezcurl
  327. ezcurl-lwt
  328. ezgzip
  329. ezjs_fetch >= "0.3"
  330. ezjs_idb >= "0.1.1"
  331. ezjs_min >= "0.2.2"
  332. ezjsonm-encoding
  333. FPauth
  334. FPauth-core
  335. FPauth-responses
  336. FPauth-strategies
  337. FrontC >= "4.0.0"
  338. faad >= "0.5.1"
  339. fadbadml >= "0.1.2"
  340. farith
  341. fd-send-recv >= "2.0.1"
  342. fdkaac >= "0.3.3"
  343. feather >= "0.2.0"
  344. feather_async >= "0.2.0"
  345. ffmpeg >= "1.0.0~beta2"
  346. ffmpeg-av >= "1.0.0~beta2"
  347. ffmpeg-avcodec >= "1.0.0~beta2"
  348. ffmpeg-avdevice >= "1.0.0~beta2"
  349. ffmpeg-avfilter >= "1.0.0~beta2"
  350. ffmpeg-avutil >= "1.0.0~beta2"
  351. ffmpeg-swresample >= "1.0.0~beta2"
  352. ffmpeg-swscale >= "1.0.0~beta2"
  353. fiat-p256 = "0.2.2"
  354. fiber
  355. fiber-lwt
  356. flac >= "0.3.1"
  357. flint
  358. fmlib
  359. fmlib_browser
  360. fmlib_js
  361. fmlib_parse
  362. fmlib_pretty
  363. fmlib_std
  364. fontforge-of-ocaml
  365. forester
  366. frama-c >= "27.0"
  367. frama-c-metacsl >= "0.4"
  368. frama-clang
  369. fred
  370. frenetic >= "5.0.0"
  371. fsevents
  372. fsevents-lwt
  373. fuseau
  374. fuseau-lwt
  375. GT >= "0.5.0"
  376. gccjit
  377. gd >= "1.1"
  378. gen >= "0.5.1"
  379. gen_js_api >= "1.0.8"
  380. geojson
  381. geojsone
  382. geoml
  383. getopt >= "20230213"
  384. github >= "4.4.0"
  385. github-data
  386. github-jsoo >= "4.4.0"
  387. github-unix >= "4.4.0"
  388. gitlab
  389. gitlab-jsoo
  390. gitlab-unix
  391. gitlab_pipeline_notifier
  392. globlon
  393. gluon
  394. gluten >= "0.5.0"
  395. gluten-async >= "0.5.0"
  396. gluten-eio >= "0.5.0"
  397. gluten-lwt >= "0.5.0"
  398. gluten-lwt-unix >= "0.5.0"
  399. gluten-mirage >= "0.5.0"
  400. gnuplot >= "0.6"
  401. goblint >= "1.1.1"
  402. goblint-cil >= "1.8.0"
  403. gospel >= "0.2.0"
  404. gotd
  405. gperftools >= "0.4"
  406. gpiod
  407. gpt
  408. grace
  409. gradescope_submit
  410. graphql_jsoo_client
  411. graphv
  412. graphv_core
  413. graphv_core_lib
  414. graphv_font
  415. graphv_font_js
  416. graphv_font_stb_truetype
  417. graphv_gles2
  418. graphv_gles2_native
  419. graphv_gles2_native_impl
  420. graphv_webgl
  421. graphv_webgl_impl
  422. grpc
  423. grpc-async
  424. grpc-bench
  425. grpc-eio
  426. grpc-examples
  427. grpc-lwt
  428. gsl >= "1.25.0"
  429. guardian
  430. guile
  431. h1_parser
  432. h2 >= "0.10.0"
  433. h2-async >= "0.10.0"
  434. h2-eio
  435. h2-lwt >= "0.10.0"
  436. h2-lwt-unix >= "0.10.0"
  437. h2-mirage >= "0.10.0"
  438. hacl-star >= "0.4.0"
  439. hacl_func
  440. hacl_x25519 = "0.2.1"
  441. hashcons >= "1.4.0"
  442. hc >= "0.2"
  443. hdr_histogram
  444. headache = "1.06"
  445. header-check
  446. highlexer
  447. higlo >= "0.8"
  448. hilite
  449. hockmd
  450. hol2dk
  451. hooke
  452. hpack >= "0.10.0"
  453. hsluv
  454. html_of_jsx
  455. htmlfromtexbooks
  456. http
  457. http-cookie
  458. http-date
  459. http-multipart-formdata
  460. http_async
  461. httpaf_caged >= "1.0.1"
  462. ISO3166
  463. ISO8601 >= "0.2.6"
  464. idds
  465. inotify >= "2.4"
  466. inquire >= "0.3.0"
  467. inquirer_oc
  468. interval-map
  469. iomux
  470. ip2location
  471. ip2locationio
  472. irc-client >= "0.6.2"
  473. irc-client-lwt >= "0.6.2"
  474. irc-client-lwt-ssl
  475. irc-client-tls >= "0.6.2"
  476. irc-client-unix >= "0.6.2"
  477. iri >= "0.6.0"
  478. irmin >= "3.0.0"
  479. irmin-watcher >= "0.5.0"
  480. iter
  481. jekyll-format >= "0.2.0"
  482. jerboa
  483. jext
  484. jose >= "0.6.0"
  485. js_of_ocaml >= "3.10.0"
  486. js_of_ocaml-compiler >= "3.10.0"
  487. js_of_ocaml-lwt >= "3.10.0"
  488. js_of_ocaml-ocamlbuild >= "3.10.0"
  489. js_of_ocaml-ppx >= "3.10.0"
  490. js_of_ocaml-ppx_deriving_json >= "3.10.0"
  491. js_of_ocaml-toplevel >= "3.10.0"
  492. js_of_ocaml-tyxml >= "3.10.0"
  493. json-data-encoding >= "0.12"
  494. jsonoo
  495. jsonrpc >= "1.4.0"
  496. jsonschema2atd
  497. jsoo-react
  498. junit >= "1.0"
  499. junit_alcotest
  500. junit_ounit
  501. jupyter-kernel >= "0.4"
  502. jwto >= "0.4.0"
  503. kcas >= "0.1.6" & < "0.6.0"
  504. kcas_data < "0.6.0"
  505. kdl
  506. kind2
  507. kittyimg
  508. kkmarkdown
  509. knights_tour
  510. kqueue >= "0.2.0"
  511. lab
  512. lablgtk3-extras >= "3.0.1"
  513. lacaml >= "11.0.10"
  514. ladspa >= "0.2.1"
  515. lambda
  516. lambda-term >= "3.3.0"
  517. lambdapi >= "2.0.0"
  518. lame >= "0.3.6"
  519. landmarks >= "1.4"
  520. landmarks-ppx
  521. lastfm >= "0.3.4"
  522. ldap >= "2.4.2"
  523. ldp
  524. ldp_curl
  525. ldp_js
  526. ldp_tls
  527. leaflet
  528. learn-ocaml
  529. leaves
  530. letters != "0.1.1"
  531. leveldb >= "1.3.0"
  532. libc
  533. libsail
  534. lilv
  535. linenoise >= "1.3.1"
  536. linol
  537. linol-lwt
  538. lintcstubs
  539. lintcstubs-arity
  540. lintcstubs-gen
  541. liquidsoap >= "2.2.0"
  542. liquidsoap-core
  543. liquidsoap-js
  544. liquidsoap-lang
  545. liquidsoap-libs
  546. liquidsoap-libs-extra
  547. liquidsoap-mode
  548. little_logger
  549. llama
  550. llama-cpp-ocaml
  551. llama_core
  552. llama_interactive
  553. llama_midi
  554. lmdb >= "1.0"
  555. logical
  556. logs-async >= "1.3"
  557. logs-async-reporter >= "1.3"
  558. loop
  559. lreplay
  560. lru_cache < "v0.16.0"
  561. lsp >= "1.4.0"
  562. lua-ml >= "0.9.3"
  563. lua_parser >= "1.0.2"
  564. lwd >= "0.2"
  565. lwt-parallel >= "1.0.0"
  566. lwt-pipe
  567. lwt_eio
  568. lz4 >= "1.2.0"
  569. m_tree
  570. mad >= "0.5.1"
  571. make-random
  572. matita
  573. mc2
  574. md2mld >= "0.7.0"
  575. mdx = "1.7.0" | >= "1.11.0"
  576. mec
  577. mehari
  578. mehari-eio
  579. mehari-eio-unix
  580. mehari-lwt-unix
  581. mehari-mirage
  582. mel
  583. melange
  584. melange-atdgen-codec-runtime
  585. melange-compiler-libs
  586. melange-fest
  587. melange-fetch
  588. melange-jest
  589. melange-json
  590. melange-moment
  591. melange-numeral
  592. melange-radix-icons
  593. melange-react-dates
  594. melange-react-query
  595. melange-recharts
  596. melange-testing-library
  597. melange-webapi
  598. meldep
  599. mem_usage
  600. memgraph
  601. memgraph_kitty
  602. metadata
  603. metadb
  604. middleware
  605. minisat >= "0.2"
  606. minttea
  607. mjson
  608. mlbdd >= "0.7.2"
  609. mlmpfr >= "4.2.0"
  610. mm >= "0.7.2"
  611. mnd
  612. module-graph
  613. monocypher
  614. monomorphic >= "2.0"
  615. moonpool
  616. moonpool-lwt
  617. morbig >= "0.10.3"
  618. mpg123 >= "0.3"
  619. mpris >= "0.2.0"
  620. mpris-clients
  621. mssql >= "2.0.3"
  622. mugen
  623. mula
  624. multibase
  625. multicodec
  626. multicont >= "1.0.1"
  627. multihash
  628. multihash-digestif
  629. mustache >= "3.2.0"
  630. mustache-cli
  631. mysql_protocol >= "3.0.1"
  632. nanoid
  633. nanosvg
  634. nanosvg_text
  635. nbd >= "6.0.0"
  636. nbd-tool
  637. nbd-unix
  638. netkat
  639. neural_nets_lib
  640. nice_parser
  641. ninja_utils
  642. niru
  643. nloge
  644. nlopt
  645. nmea
  646. noCanren >= "0.3.0~alpha1"
  647. node_of_ocaml
  648. nomad
  649. nottui >= "0.2"
  650. nottui-lwt >= "0.2"
  651. nottui-pretty >= "0.2"
  652. nunchaku >= "0.5.1"
  653. nuscr >= "1.1.0"
  654. OCADml
  655. OCanren >= "0.3.0~alpha1"
  656. OCanren-ppx >= "0.3.0~alpha1"
  657. OSCADml
  658. obuilder
  659. obuilder-spec
  660. ocaml-compiler-libs = "v0.12.4"
  661. ocaml-in-python
  662. ocaml-logicalform
  663. ocaml-lsp-server >= "1.4.0"
  664. ocaml-lua >= "1.8"
  665. ocaml-protoc >= "2.1"
  666. ocaml-protoc-plugin >= "5.0.0"
  667. ocaml-version >= "3.6.0"
  668. ocamlc-loc
  669. ocamldiff >= "1.2"
  670. ocamlformat >= "0.19.0"
  671. ocamlformat-lib
  672. ocamlformat-rpc >= "0.19.0" & < "removed"
  673. ocamlformat-rpc-lib
  674. ocamlfuse >= "2.7.1-cvs8"
  675. ocamlregextkit
  676. ocannl_npy
  677. ocb
  678. ocf >= "0.8.0"
  679. ocf_ppx
  680. ockt
  681. ocluster >= "0.2"
  682. ocluster-api >= "0.2"
  683. ocluster-worker
  684. ocp-browser >= "1.2.2"
  685. ocp-index >= "1.2.2"
  686. ocp-search
  687. ocplib-simplex >= "0.5.1"
  688. ocplib_stuff >= "0.3.0"
  689. odep >= "0.2.0"
  690. oframl
  691. ogg >= "0.7.1"
  692. ojo
  693. ojs >= "1.0.8"
  694. ojs_base
  695. ojs_base_all
  696. ojs_base_ppx
  697. ojs_ed
  698. ojs_filetree
  699. ojs_list
  700. olinq >= "0.3"
  701. oma
  702. omd = "1.3.2" | >= "2.0.0~alpha3"
  703. omigrate != "0.3.0"
  704. omtl
  705. oniguruma
  706. opam-0install >= "0.4.2"
  707. opam-0install-cudf >= "0.4.2"
  708. opam-bin >= "0.9.5"
  709. opam-check-npm-deps
  710. opam-compiler >= "0.2.0"
  711. opam-dune-lint
  712. opam-monorepo >= "0.3.0"
  713. opam-spin
  714. opam_bin_lib >= "0.9.5"
  715. opasswd >= "1.3.1"
  716. openapi
  717. openapi_router
  718. openstellina
  719. opentelemetry
  720. opentelemetry-client-cohttp-lwt
  721. opentelemetry-client-ocurl
  722. opentelemetry-cohttp-lwt
  723. opentelemetry-lwt
  724. opine
  725. opium >= "0.20.0"
  726. opium-testing >= "0.20.0"
  727. oplot != "0.50"
  728. optiml-transport
  729. opus >= "0.2.1"
  730. oraft >= "0.3.0"
  731. ordering
  732. ordinal
  733. orgeat
  734. ortac-core >= "0.2.0"
  735. ortac-qcheck-stm >= "0.2.0"
  736. ortac-runtime >= "0.2.0"
  737. ortac-runtime-qcheck-stm
  738. oseq
  739. osh
  740. osnap
  741. otoggl
  742. otoml >= "0.9.3"
  743. ounit2 >= "2.2.7"
  744. ounit2-lwt >= "2.2.7"
  745. override >= "0.4.0"
  746. owi
  747. p5scm
  748. packstream
  749. pancake
  750. pandoc >= "0.2.1"
  751. pandoc-abbreviations >= "0.2.1"
  752. pandoc-comment >= "0.2.1"
  753. pandoc-crossref >= "0.2.1"
  754. pandoc-include >= "0.2.1"
  755. pandoc-inspect >= "0.2.1"
  756. pandoc-pdf2png >= "0.2.1"
  757. pandoc-replace >= "0.2.1"
  758. par_incr
  759. pari
  760. pari-bindings
  761. parmap >= "1.2.3"
  762. path_glob
  763. patoline >= "0.2"
  764. patricia-tree
  765. pbrt
  766. pbrt_yojson
  767. pcre >= "7.5.0"
  768. pcre2
  769. petrol
  770. pgx >= "1.0"
  771. pgx_async >= "2.2"
  772. pgx_lwt >= "2.2"
  773. pgx_lwt_mirage >= "2.2"
  774. pgx_lwt_unix >= "2.2"
  775. pgx_unix >= "2.2"
  776. pgx_value_core >= "2.2"
  777. pgx_value_ptime >= "2.2"
  778. phylogenetics >= "0.2.0"
  779. piece_rope
  780. plateau
  781. plist-xml
  782. plist-xml-lwt
  783. plotly
  784. plplot >= "5.12.0"
  785. polars
  786. polars_async
  787. poll
  788. popper
  789. portaudio >= "0.2.3"
  790. portmidi
  791. posix-base >= "2.0.1"
  792. posix-bindings >= "2.0.1"
  793. posix-getopt >= "2.0.1"
  794. posix-signal >= "2.0.1"
  795. posix-socket >= "2.0.1"
  796. posix-socket-unix >= "2.0.1"
  797. posix-time2 >= "2.0.1"
  798. posix-types >= "2.0.1"
  799. posix-uname >= "2.0.1"
  800. pp >= "1.2.0"
  801. pp-binary-ints
  802. pp_loc
  803. ppx_camlrack
  804. ppx_catch
  805. ppx_const >= "2.0"
  806. ppx_decimal
  807. ppx_default
  808. ppx_deriving_cad
  809. ppx_deriving_encoding >= "0.3.0"
  810. ppx_deriving_hash
  811. ppx_deriving_madcast >= "0.2"
  812. ppx_deriving_popper
  813. ppx_deriving_qcheck >= "0.2.0"
  814. ppx_deriving_scad
  815. ppx_deriving_yaml >= "0.2.0"
  816. ppx_distr_guards >= "0.3"
  817. ppx_dream_eml
  818. ppx_fun >= "0.0.9"
  819. ppx_getenv >= "2.0"
  820. ppx_interact
  821. ppx_make
  822. ppx_map
  823. ppx_minidebug
  824. ppx_monad
  825. ppx_monoid >= "0.3.3"
  826. ppx_open
  827. ppx_optint
  828. ppx_parser
  829. ppx_pyformat
  830. ppx_repr != "0.2.0"
  831. ppx_seq
  832. ppx_subliner
  833. ppx_system
  834. ppx_trace
  835. ppx_ts
  836. ppx_update
  837. ppx_viewpattern
  838. ppx_yojson >= "1.3.0"
  839. ppxlib >= "0.22.0"
  840. pratter
  841. prbnmcn-basic-structures
  842. prbnmcn-cgrph
  843. prbnmcn-clustering
  844. prbnmcn-dagger
  845. prbnmcn-dagger-gsl
  846. prbnmcn-dagger-stats
  847. prbnmcn-dagger-test
  848. prbnmcn-gnuplot
  849. prbnmcn-linalg
  850. prbnmcn-mcts
  851. prbnmcn-proptest
  852. prbnmcn-stats
  853. prbnmcn-ucb1 >= "0.0.2"
  854. preface
  855. pretty_expressive
  856. printbox >= "0.2"
  857. printbox-html
  858. printbox-md
  859. printbox-text
  860. processor
  861. producer
  862. progress
  863. prometheus-liquidsoap >= "2"
  864. promise_jsoo
  865. promise_jsoo_lwt
  866. provider
  867. prr
  868. psmt2-frontend >= "0.3.0"
  869. pulseaudio >= "0.1.5"
  870. pvec
  871. pyml >= "20210924"
  872. pyml_bindgen
  873. pyre-ast
  874. qbf >= "0.3"
  875. qcheck >= "0.9"
  876. qcheck-alcotest
  877. qcheck-core
  878. qcheck-lin
  879. qcheck-multicoretests-util
  880. qcheck-ounit
  881. qcheck-stm
  882. quick_print
  883. quickjs
  884. randii
  885. random
  886. randoml
  887. raygui
  888. raylib >= "0.3.1"
  889. rdf >= "0.13.0"
  890. rdf_impls
  891. rdf_json_ld
  892. rdf_lwt
  893. rdf_mysql
  894. rdf_postgresql
  895. rdf_ppx
  896. rea < "0.2.0"
  897. reactjs-jsx-ppx
  898. readline
  899. reason >= "3.9.0"
  900. reason-react
  901. reason-react-ppx
  902. reddit_api_async
  903. reddit_api_kernel
  904. redis >= "0.4"
  905. redis-lwt >= "0.4"
  906. redis-sync >= "0.4"
  907. refl >= "0.2.0" & < "0.3.0"
  908. reparse >= "2.0.0"
  909. reparse-lwt
  910. reparse-lwt-unix
  911. reparse-unix
  912. repr != "0.2.0"
  913. repr-bench
  914. repr-fuzz
  915. rescript-syntax
  916. reshowcase
  917. resto >= "0.7"
  918. rfsm >= "2.0"
  919. rio
  920. river >= "0.2"
  921. rock >= "0.20.0"
  922. roman
  923. routes >= "1.0.0"
  924. rpc >= "6.1.0"
  925. rsdd
  926. rtop >= "3.9.0"
  927. rtree
  928. runtime_events_tools
  929. SourceCode_ASCII
  930. safemoney
  931. sail >= "0.15"
  932. sail_c_backend
  933. sail_coq_backend
  934. sail_doc_backend
  935. sail_latex_backend
  936. sail_lem_backend
  937. sail_manifest
  938. sail_ocaml_backend
  939. sail_output
  940. sail_smt_backend
  941. sail_sv_backend
  942. samplerate >= "0.1.6"
  943. sanddb >= "0.2"
  944. sarek >= "20210823"
  945. sarif
  946. saturn >= "0.4.1"
  947. saturn_lockfree >= "0.4.1"
  948. scad_ml
  949. scfg
  950. sd_logic
  951. sdl-liquidsoap >= "3"
  952. secp256k1 >= "0.4.1"
  953. sedlex >= "2.4"
  954. sel
  955. semver >= "0.2.1"
  956. semver2
  957. seqes
  958. sequence >= "1.1"
  959. serde
  960. serde_debug
  961. serde_derive
  962. serde_json
  963. serde_sexpr
  964. serde_xml
  965. server-reason-react
  966. sexp_decode
  967. sha >= "1.15.1"
  968. shades
  969. shine >= "0.2.2"
  970. shuttle
  971. shuttle_http
  972. shuttle_ssl
  973. shuttle_websocket
  974. sifun
  975. signal
  976. sihl >= "0.1.5"
  977. sihl-cache
  978. sihl-contract
  979. sihl-core
  980. sihl-email
  981. sihl-facade
  982. sihl-persistence
  983. sihl-queue
  984. sihl-session
  985. sihl-storage
  986. sihl-token
  987. sihl-type
  988. sihl-user
  989. sihl-web
  990. simlog
  991. smart-print >= "0.3.0"
  992. smol
  993. smol-helpers
  994. smtlib-utils
  995. smtml
  996. snappy >= "0.1.2"
  997. snoke
  998. sodium-fmt
  999. solid
  1000. solid_server
  1001. solid_tools
  1002. solidity-alcotest
  1003. solidity-common
  1004. solidity-parser
  1005. solidity-test
  1006. solidity-typechecker
  1007. spatial-shell
  1008. spawn >= "v0.15.0"
  1009. spdx_licenses < "1.2.0"
  1010. spectrum
  1011. speex >= "0.4.1"
  1012. spelll >= "0.3"
  1013. spices
  1014. spin
  1015. spoc >= "20210823"
  1016. spoc_ppx
  1017. sqids
  1018. sqlgg >= "20200521"
  1019. sqlite3 >= "5.0.3"
  1020. sqlite3_utils
  1021. srt >= "0.2.1"
  1022. ssl >= "0.7.0"
  1023. sslconf
  1024. starpath
  1025. starred_ml
  1026. stdint = "0.7.0" | >= "0.7.2"
  1027. stdint-literals
  1028. stdlib-random
  1029. stdune
  1030. stk
  1031. stk_iconv
  1032. stog >= "0.20.0"
  1033. stog_all
  1034. stog_asy
  1035. stog_dot
  1036. stog_extern
  1037. stog_markdown
  1038. stog_multi_doc
  1039. stog_nocaml
  1040. stog_noexec
  1041. stog_plugins
  1042. stog_rdf
  1043. stog_rel_href
  1044. stog_server
  1045. stog_server_multi
  1046. stog_sitemap
  1047. stog_writing
  1048. stramon-lib
  1049. stringCodepointSplitter
  1050. styled-ppx
  1051. sun
  1052. swhid
  1053. swhid_compute
  1054. swhid_core
  1055. swhid_types
  1056. swipl
  1057. tabr
  1058. taglib >= "0.3.7"
  1059. talaria-bibtex
  1060. tar >= "2.0.0"
  1061. tar-eio
  1062. tar-mirage >= "2.0.0"
  1063. tar-unix >= "2.0.0"
  1064. teash
  1065. telemetry
  1066. terminal
  1067. terminus
  1068. terminus-cohttp
  1069. terminus-hlc
  1070. terml
  1071. testu01
  1072. textmate-language
  1073. textrazor
  1074. tezos-bls12-381-polynomial >= "0.1.3"
  1075. tezos-plompiler >= "0.1.3"
  1076. tezos-plonk >= "0.1.3"
  1077. tezt-bam
  1078. thread-table
  1079. tidy_email
  1080. tidy_email_mailgun
  1081. tidy_email_sendgrid
  1082. tidy_email_smtp
  1083. timed >= "1.1"
  1084. timedesc >= "0.8.0"
  1085. timedesc-json
  1086. timedesc-sexp
  1087. timedesc-tzdb
  1088. timedesc-tzlocal
  1089. timedesc-tzlocal-js
  1090. timere >= "0.8.0"
  1091. timmy
  1092. timmy-jsoo
  1093. timmy-unix
  1094. tiny_httpd
  1095. tiny_httpd_camlzip
  1096. tip-parser >= "0.4"
  1097. tls-liquidsoap
  1098. toc
  1099. togglelog
  1100. toml >= "5.0.0"
  1101. toml_cconv >= "7.0.0"
  1102. topojson
  1103. topojsone
  1104. touist >= "3.5.0"
  1105. trace
  1106. trace-fuchsia
  1107. trace-tef
  1108. tracy-client
  1109. trail
  1110. traits
  1111. trampoline
  1112. transept
  1113. travesty >= "0.7.2"
  1114. trexio
  1115. tsdl-image >= "0.3.0"
  1116. tsdl-mixer >= "0.3.0"
  1117. tsdl-ttf >= "0.3"
  1118. tty
  1119. tyabt
  1120. type_eq
  1121. type_id
  1122. typeid
  1123. tyre >= "0.5"
  1124. tyxml >= "4.6.0"
  1125. tyxml-jsx >= "4.6.0"
  1126. tyxml-lwd >= "0.2"
  1127. tyxml-ppx >= "4.6.0"
  1128. tyxml-syntax >= "4.6.0"
  1129. ubase >= "0.20"
  1130. um-abt
  1131. unisim_archisec
  1132. universal-portal
  1133. uring
  1134. uritemplate >= "0.1.0"
  1135. urn
  1136. validate
  1137. validator
  1138. varray
  1139. vdom
  1140. vec >= "0.2.0"
  1141. vendredi
  1142. voqc >= "0.2.0"
  1143. vue-jsoo >= "0.3"
  1144. vue-ppx
  1145. wayland
  1146. waylaunch < "0.3.0"
  1147. wcwidth
  1148. websocket >= "2.15"
  1149. websocket-async >= "2.15"
  1150. websocket-lwt-unix >= "2.15"
  1151. win-eventlog >= "0.4"
  1152. winsvc >= "1.0.1"
  1153. wtr
  1154. wtr-ppx
  1155. wu-manber-fuzzy-search
  1156. xapi-stdext-date
  1157. xapi-stdext-encodings
  1158. xapi-stdext-pervasives >= "4.19.0"
  1159. xapi-stdext-std >= "4.19.0"
  1160. xapi-stdext-threads >= "4.19.0"
  1161. xapi-stdext-unix >= "4.19.0"
  1162. xapi-stdext-zerocheck
  1163. xcursor
  1164. xdg
  1165. xmelly
  1166. xmldiff >= "0.7.0"
  1167. xmldiff_js
  1168. xoshiro
  1169. xtmpl >= "0.19.0"
  1170. xtmpl_js
  1171. xtmpl_ppx
  1172. yocaml
  1173. yocaml_cmark
  1174. yocaml_git
  1175. yocaml_jingoo
  1176. yocaml_markdown
  1177. yocaml_mustache
  1178. yocaml_syndication
  1179. yocaml_unix
  1180. yocaml_yaml
  1181. yojson >= "2.0.0"
  1182. yuujinchou >= "0.10.0" & < "3.0.0"
  1183. zanuda
  1184. zar
  1185. zed >= "3.2.0"
  1186. zlib >= "0.6"
  1187. zlist >= "0.4.0"
  1188. zmq >= "5.2.1"
  1189. zmq-async >= "5.2.1"
  1190. zmq-eio
  1191. zmq-lwt >= "5.2.1"

Conflicts

None