Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Propagate typeclass instances in data-dependencies #10773

Closed
cocreature opened this issue Sep 3, 2021 · 0 comments
Closed

Propagate typeclass instances in data-dependencies #10773

cocreature opened this issue Sep 3, 2021 · 0 comments
Assignees

Comments

@cocreature
Copy link
Contributor

In Haskell (and Daml) typeclass instances are transitively propagated throughout all imports.
However, data-dependencies currently only reconstruct the minimal set of imports required to get things to typecheck meaning that they lose information on what instances where available.
We should store the modules that were imported and reconstruct imports for that in data-dependencies to make sure that this doesn’t break code.
Note that this only matters for orphan instances but unfortunately people use those.

akrmn added a commit that referenced this issue Sep 24, 2021
akrmn added a commit that referenced this issue Sep 24, 2021
First step towards closing #10773

changelog_begin
changelog_end
akrmn added a commit that referenced this issue Sep 27, 2021
First step towards closing #10773

changelog_begin
changelog_end
akrmn added a commit that referenced this issue Sep 27, 2021
First step towards closing #10773

changelog_begin
changelog_end
akrmn added a commit that referenced this issue Sep 28, 2021
First step towards closing #10773

changelog_begin
changelog_end
akrmn added a commit that referenced this issue Sep 28, 2021
* Define encoding/decoding for module imports

First step towards closing #10773

changelog_begin
changelog_end

* Update compiler/damlc/daml-lf-conversion/src/DA/Daml/LFConversion/MetadataEncoding.hs

Co-authored-by: Sofia Faro <sofia.faro@digitalasset.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants