Description
openedon Oct 2, 2020
Summary
Remove global bech32 prefixes and the rest of the global config before v1.0 (see #7421).
Problem Definition
Global config variables are generally a bad design decision. And in interchain world having more flexibility around bech32 prefixes is probably desirable.
If we are targeting a v1.0 release at some point, we likely want to remove the global Config
and do something better that allows us to keep the core SDK minimal, well-designed and the other parts modular.
#7242 likely brings us closer to being able to do this because address parsing is now happening inside handlers rather than at the encoding level.
Proposal
- Remove bech32 EPIC: Remove bech32 globals #9690 / EPIC: remove global bech32 #13140
- Remove sdk.Config
See initial proposal
In #7242, addresses are now parsed manually using sdk.AccAddressFromBech32
, etc. Instead we can either pass the parameters into keepers (like we do for codecs) or attach them to sdk.Context
and maybe decode address using ctx.AccAddressFromBech32
in keepers and handlers.
Also we may consider removing ValAddress
and ConsAddress
from types/
as they are specific to x/staking.
For Admin Use
- Not duplicate issue
- Appropriate labels applied
- Appropriate contributors tagged
- Contributor assigned/self-assigned
Metadata
Assignees
Labels
Type
Projects
Status
🥳 Done