This PR started small and then continued snowballing a little as it was growing.
What this does is when deduplication is disabled (opt-in) to determine which dependency should build which dune packages (by scanning OPAM files for dune build -p <name>), this info is saved into the lockfile.
From there, when pulling, the it will process dune files and rename public names that are not to be built to avoid clashing.
This PR started small and then continued snowballing a little as it was growing.
What this does is when deduplication is disabled (opt-in) to determine which dependency should build which dune packages (by scanning OPAM files for
dune build -p <name>
), this info is saved into the lockfile.From there, when pulling, the it will process
dune
files and rename public names that are not to be built to avoid clashing.