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
v4 transactions should always be encoded or decoded using the transaciton extensions under version 0 in the metadata. Currently, they would use the latest available version (which is ok at the moment because there only exists one version anyway; 0).
This is more complicated than just setting which version we'll look at, because V4 and V5 transactions will differ in their behaviour.
V4 transactions should always use version 0
V5 transactions should tend to using the latest version, but really should look for the version that lines up with the configured transaction extensions for the chain, and use that.
In the event that there is a version change, but the transaction extension names remain identical (only the properties of one or more of them change), we would have a dilemma as to which version to select. Thus, perhaps we should allow the user to explicitly configure which version of extensions to try to use, falling back to a sane default (use the latest that matches?) otherwise. Names changing would be an issue though and so I would expect that this wouldn't happen, so we can probably just be clever and pick the latest matching set.