opam-lock
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.
md5=6fb2e5e91837a7f2056255390ce90328
sha512=6c4680ce60f8f85d4a74b4a17ee292349cd85ae94bb02e8b2a6e78ab7ff48f987142396c68c4e2d638a7830791e3a4d6e00800a0d06e1962b3bf7cc322de0566
>= "2.0.0~beta5" & < "2.1"
>= "2.0.0~beta5"
>= "1.0"
>= "1.0+beta7"
< "1.0.1"