I have attempted to follow the online recommendations and installed dpm 3.5.x on Windows and now Debian. However when I create a new project, and copy in code which uses contract Keys or keys. It fails to compile. The error I am seeing is "contract Keys not supported on current lf version (2.2) " .. I can get simpler templates to install and emulate transactions etc. Is there something specific I can do to enable a newer lf (I think it means canton language file)
found it, used a different AI and it found Contract Keys - Canton Network Docs - which explains a needed set of lines to enable it.
build-options:
- –target=2.3
Glad you found it! Just to add some context for anyone else running into this: installing a newer DPM/Daml version doesn’t necessarily mean the project will automatically target the newest LF version.
If the project is still targeting LF 2.2, features such as Contract Keys won’t compile. Explicitly setting the LF target in the project config, e.g. --target=2.3, is therefore the important part here.
So if someone sees this error even with a recent toolchain, checking the project’s configured LF target is probably the first thing to look at.