daml
daml copied to clipboard
Compiler upgrade checks don't allow alpha equivalence between datatypes
Likely revealing my ignorance, but what do you mean here? Our assumption in upgrading is that data types can't be renamed. So do you want to support renaming?
This is about alpha equivalence of variable names - e.g.
data X a = X { field1: a }
should be equivalent to
data X b = X { field1 : b }
And furthermore the following should be an upgrade:
data X b = X { field1: b, field2: Optional b }
Fixed by https://github.com/digital-asset/daml/pull/20016 and https://github.com/digital-asset/daml/pull/20024 on 2.x, https://github.com/digital-asset/daml/pull/20025 on 3.x