Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

EPIC: Collections #14300

Closed
62 tasks done
testinginprod opened this issue Dec 14, 2022 · 7 comments
Closed
62 tasks done

EPIC: Collections #14300

testinginprod opened this issue Dec 14, 2022 · 7 comments
Assignees
Labels
T:Epic Epics

Comments

@testinginprod
Copy link
Contributor

testinginprod commented Dec 14, 2022

Summary

Since ADR-062 was accepted, we need to port and adapt collections.

Work Breakdown

Phase 1

Phase 2 (module migration requirements)

requirements

Phase 3 (migrate modules)

Auth

Distribution

Slashing

Staking

Crisis

Mint

Gov

Circuit

Feegrant

Evidence

Proposal Queue

Phase 4 (API improvements)

  • package name: collections might be too long, consider: coll or colls
  • proper PairRange API to cover all the use cases
  • auto query support
@aaronc aaronc changed the title feat: implement collections API EPIC: Collections Dec 14, 2022
@tac0turtle tac0turtle added the T:Epic Epics label Dec 15, 2022
@testinginprod
Copy link
Contributor Author

During experimentation with bank migration, I found other things which are required before we can effectively start migrating modules:

  • Pagination for collections
  • Math IntValue
  • Add store access function in sdk types maybe

@tac0turtle
Copy link
Member

The last bullet point is covered by the store service right?

@testinginprod
Copy link
Contributor Author

@tac0turtle, I'm not currently 100% sure on how the relationship between core and sdk works, but since sdk cannot depend on core/store, then SDK needs to implement a function that given context.Context it converts it into a core/store.Store, this is how I implemented it whilst trialing the bank migration to collections: https://github.com/cosmos/cosmos-sdk/compare/tip/collections-pairkeys...tip/bank_migration?expand=1#diff-10fabc84ecc74a1e1f8383ab56fb83d48a5528658a27ee5373d05a13d294d438R333-R346

@facundomedica
Copy link
Member

@testinginprod you mentioned that you've created a tool for checking differences in state before and after collections, would be nice to have it so we can move faster on this issue

@facundomedica
Copy link
Member

Next step for this would be to use IndexedMap wherever possible

@tac0turtle
Copy link
Member

authz & nft are missing here. Thanks @atheeshp for pointing it out

@tac0turtle
Copy link
Member

going to close this epic, @testinginprod could you create a new epic for schema related work, or update the issue about schema

@tac0turtle tac0turtle unpinned this issue Nov 16, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
T:Epic Epics
Projects
None yet
Development

No branches or pull requests

3 participants