Currently I started to work on a Daml model upgrade facility. This involves having different version of the same package.
What is the recommended way to work with that? This Importing different versions of the same package fails post implies to have two Daml projects for the two versions. Frankly I am not a fan of this. What would be the alternative? Have one project (e.g.:
models) and manually build the different versions for example by switching git branches?
Also, I ran into some issues, which raised some questions:
- I am happy using the
module-prefixes. If I read the docs right I can drop the
- It seems I cannot trick the Daml compiler. I manually created the
new.darfrom the same codebase. I got the error:
Could not find package new. It sort of makes sense, but is this intentional?
- I made a small change and compiled the
new.dar, the old remained as is. When I tried to compile the
Transitive dependencies with same unit id but conflicting package ids...
This is how my
daml.yaml looks like:
sdk-version: 1.11.1 name: upgrader version: 1.0.0 source: ./ dependencies: - daml-prim - daml-stdlib data-dependencies: - ../build/old.dar - ../build/new.dar build-options: - --package - old - --package - new module-prefixes: old: Old new: New