Skip to content

Draft: Introduce opam lock files a predictable package set

Introduce lock files so that make build-deps (and especially it's dev counterpart make build-dev-deps) fetches the exact package versions everytime, unless expected otherwise.

Context

We often run into solver issues where it is either having difficulty find a solution (Eg when dev dependencies like ocamlformat are installed) or that new versions are pulled in (possibly untested on the CI) which lead to tarball cache missed and possible build failures.

Introducing lockfiles make it a) reliable b) speed up time to interaction by saving some time for the solver and fetch more packages tarballs from the opam cache.

Manually testing the MR

No change in the development workflow or the artifact behaviour - when new packages are introduced, lockfiles would be generated to accomodate incoming packages.

Checklist (N/A)

  • Document the interface of any function added or modified (see the coding guidelines)
  • Document any change to the user interface, including configuration parameters (see node configuration)
  • Provide automatic testing (see the testing guide).
  • For new features and bug fixes, add an item in the appropriate changelog (docs/protocols/alpha.rst for the protocol and the environment, the Development Version section of CHANGES.md for everything else).
  • Select suitable reviewers using the Reviewers field below.
  • Select as Assignee the next person who should take action on that MR

Merge request reports