Skip to content

Proposal - Move ERC20 and other errors to interfaces #57

@cyotee

Description

@cyotee

Intent

Interfaces primarily exist for external users. It is a contract with users consuming your code. Including types needed by external users.

Problem

Custom error are currently buried in libraries. Meaning they're not easily accessible to external users. This makes it impossible for UI developers to have canonical access to those errors. They would have to reimplement those errors elsewhere, introducing the chance for errors, and making it difficult to adopt Compose as a framework.

Solution

Follow the industry standard of declaring errors in interfaces. You don't have to inherit those interfaces into facets. But at least having them present and using those errors in the libraries will ensure consistency while making them externally consumable.

Metadata

Metadata

Assignees

Labels

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions