Skip to content

Remove Asset Code Types 4 and 12 #296

Open
@JeremyRubin

Description

@JeremyRubin

The two existing current non-native Asset Code types are currently guaranteed to be non-overlapping without the enum tag by length.

Given that there are no functional differences between asset code types, I propose deprecating the distinction between the types by allowing either tag to refer to up to 12 bytes of asset code.

This should simplify the handling of this both internally (and help ensure that treatment of asset types is uniform) and externally for consumers of the API.

This should be forwards compatible as old clients should produce XDR which is binary compatible with the new semantics, but may break backwards compatibility as new clients may produce XDR which is incompatible with old clients parsings. While breaking backwards compatibility is not great, it may be a worthwhile cleanup to remove this distinction.

The motivation for such a change is that stellar core's rules should not be enforcing UX-layer invariants.

Metadata

Metadata

Assignees

No one assigned

    Labels

    CAPRepresents an issue that requires a CAP.enhancementCAP that adds or changes functionality as opposed to a fix.needs draftThis an issue that has no corresponding draft, and as such has not entered the CAP/SEP process.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions