package opam-monorepo

  1. Overview
  2. Docs
Assemble and manage fully vendored Dune repositories

Install

Dune Dependency

Authors

Maintainers

Sources

opam-monorepo-0.4.3.tbz
sha256=10c22d3b69e8ad7296b14f73f82d2d010e2847c2659ea44f78b36db34aae4807
sha512=8c4ccd607bdf02c9e847ea2e95d7c023a470b42b21d1322e9b1212c2d8176fbeb975765d1cb984fa0131bb7572d01719f5e3a02da7c8fec8a8562c25f9429bed

doc/concepts.html

Concepts

An opam-monorepo project uses 3 components in the source tree:

  • a set of opam files containing specifications about the dependencies (for example, a dependency on lwt >= 4.0.0)
  • a lock file (with extension .opam.locked) containing references to exact dependencies (for example, lwt = 4.2.1) and how to get them (URLs, hashes, etc.). It also contains information about transitive dependencies, not just the ones mentioned in opam files.
  • a duniverse folder containing the sources for all the packages mentioned in the lock file

The two important commands are:

  • opam monorepo lock, which will read the opam file and compute a solution using the opam repository and the opam solver. It will create or update the lock file with this solution.
  • opam monorepo pull will read the lock file, download the dependencies, and unpack them into the duniverse/ folder.
OCaml

Innovation. Community. Security.