package opam-monorepo

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

Install

Dune Dependency

Authors

Maintainers

Sources

opam-monorepo-0.4.0.tbz
sha256=5fac86370f4b002410081ab1190abe23a542fb146dc73d927895eaa0c2c6eac2
sha512=ced42bab2ce2bdf1d832dae06f472eb8bf18c7c41bab7d77ec13f663e2fd69ad5602e45145e952f8f1f72613cac9c6a8ad6e2f43f5f58265374df9247a015c53

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.