package opam-lock

  1. Overview
  2. Docs
Locking of development package definition dependency versions

Install

Dune Dependency

Authors

Maintainers

Sources

0.1.tar.gz
md5=1bf7274b168efe282b001d9d9c542f98
sha512=512550885e6084f6083f624be87be1cb7c81194cdeb8780991b633766980b024cffa3fcd45102d879a19237fe4db51ee7320e7a39fec984e80ded87e095615e0

Description

Published: 25 May 2018

README

opam-lock: restrict opam file to describe a precise build environment

This small opam plugin can rewrite opam package definition files to emulate the behaviour of so-called "lock files" present in many package managers.

It reads opam files, extracts the precise set of their dependencies that is currently installed, as well as pins and non-installed optional dependencies, and writes back a <name>.opam.locked file that enforces this set and has the corresponding pin-depends:.

You can then use opam install <name>.opam.locked to get the package installed with the precise dependencies, including transitive dependencies, that it had in the original system.

Option --direct-only can be used to only lock direct dependency versions rather than the whole tree.

Note that the locked opam file adds conflicts to uninstalled optional dependencies, but not recursively: it therefore guarantees the same dependencies get installed, up to potentially some of their optional dependencies.

This project is currently in early beta.

Dependencies (5)

  1. opam-state >= "2.0.0~beta5" & < "2.1"
  2. opam-solver >= "2.0.0~beta5"
  3. cmdliner >= "1.0"
  4. jbuilder >= "1.0+beta7"
  5. ocaml

Dev Dependencies

None

Used by (1)

  1. slug < "1.0.1"

Conflicts

None

OCaml

Innovation. Community. Security.