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

remove choice inheritance from TypeScript #14893

Closed
S11001001 opened this issue Aug 31, 2022 · 0 comments · Fixed by #14953
Closed

remove choice inheritance from TypeScript #14893

S11001001 opened this issue Aug 31, 2022 · 0 comments · Fixed by #14953
Assignees
Labels
component/js-ecosystem TypeScript and React.js bindings roadmap/interfaces https://digitalasset.atlassian.net/browse/DAML-56 team/ledger-clients Related to the Ledger Clients team's components.

Comments

@S11001001
Copy link
Contributor

#14134 redesigned interfaces in TypeScript so that using inherited choices is no longer necessary for type-safe interface choice invocation; instead, users use explicit toInterface conversions. Additionally, with #14892, it is not feasible to "retroactively inherit" choices. Instead, as discussed in #14134, we should remove choice inheritance entirely.

@S11001001 S11001001 added component/js-ecosystem TypeScript and React.js bindings team/ledger-clients Related to the Ledger Clients team's components. roadmap/interfaces https://digitalasset.atlassian.net/browse/DAML-56 labels Aug 31, 2022
stephencompall-DA referenced this issue Aug 31, 2022
CHANGELOG_BEGIN
- [TypeScript codegen] Support for retroactive interface implementations
  included.  Choice inheritance is deprecated and `will be removed
  <https://github.com/digital-asset/daml/issues/14893>`__; to invoke an
  interface choice on a template-typed contract ID, convert it to an
  interface-typed ID with *TemplateName*``.toInterface``.
CHANGELOG_END
S11001001 referenced this issue Sep 2, 2022
* include retro-implements in TS interface type decls

* split interface exercise test into two sub-tests

* test that contract ID conversion resolves

CHANGELOG_BEGIN
- [TypeScript codegen] Support for retroactive interface implementations
  included.  Choice inheritance is deprecated and `will be removed
  <https://github.com/digital-asset/daml/issues/14893>`__; to invoke an
  interface choice on a template-typed contract ID, convert it to an
  interface-typed ID with *TemplateName*``.toInterface``.
CHANGELOG_END
@S11001001 S11001001 self-assigned this Sep 7, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
component/js-ecosystem TypeScript and React.js bindings roadmap/interfaces https://digitalasset.atlassian.net/browse/DAML-56 team/ledger-clients Related to the Ledger Clients team's components.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant