hyperweb-io / hyperweb-io/ts-codegen

query and execute messages with same name creates collisions

Ouverte
#26 3 commentaires 0 réactions 0 personnes assignées Voir sur GitHub
Langage dominant
TypeScript
Étoiles
126
Forks
31
Merge moyen
19 min
PR mergées (30 j)
2

Description

Currently we're generating two TS clients as classes with the codegen: one class that is readonly for the queries, and a 2nd that extends via inheritance this class for the execute messages. This essentially means the names currently must be unique.

The issue is that if you have an identical method name on a query and execute, you end up with a naming collision.

One idea is to potentially come up with a recommended convention to keep names unique across queries/executes, This does make some sense, but some have brought up a good point that it is sub-optimal to put constraints on contract message naming.

the current "fix" is to not create name collisions between query and execute messages: https://github.com/DA0-DA0/dao-contracts/issues/369

However, the question remains, should we build a way to split clients into two instead of using inheritance where all contract names are unique?

Guide de contribution

Aucun guide de contribution indexé pour ce dépôt

Piste de recherche

Aucun fichier ni test n’est nommé. Commencez par retracer le client de requêtes readonly généré et le client execute hérité, puis examinez la collision de noms identiques décrite ; le travail sera terminé lorsqu’une approche convenue permettra d’autoriser des noms de requête et execute identiques sans collisions.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
typescript
Domaine
tooling
Type d'issue
Fonctionnalité
Difficulté
5/5
Temps estimé
Plus d'une semaine
Activité
À l'abandon
Clarté
À clarifier
Accessibilité débutants
25/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.