You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Provider ID, opcode and auth type are represented in our contracts as unsigned integer. The interface converts the integer to the Rust native enumerations and return ProviderDoesNotExist, OpcodeDoesNotExist or AuthenticatorDoesNotExist if the integer can not be mapped to one of the variant.
I see two problems with that:
if the client is older than the service and does not contain the variant returned by the service in ListProviders, ListOpcodes or ListAuthenticators those operations would fail. That happened in Execute e2e tests with an old version of client parsec#445
when ProviderID become dynamic this will just fail (related with Rename ProviderID #36)
ProviderID should maybe not be an enum but a new type over an integer instead.
Opcode and AuthType should maybe contain an Unknown(u32) variant to represent the one that the interface does not yet know. That would also be good as these enums are not exhaustive (new opcodes/auth types will always be added).
The text was updated successfully, but these errors were encountered:
Provider ID, opcode and auth type are represented in our contracts as unsigned integer. The interface converts the integer to the Rust native enumerations and return
ProviderDoesNotExist
,OpcodeDoesNotExist
orAuthenticatorDoesNotExist
if the integer can not be mapped to one of the variant.I see two problems with that:
Unknown(u32)
variant to represent the one that the interface does not yet know. That would also be good as these enums are not exhaustive (new opcodes/auth types will always be added).The text was updated successfully, but these errors were encountered: