V1 → V2 migration

Registry V2 brings two key new features: batch delegation and subdelegations, all while reducing gas costs by 30-60%. Batch delegation lets users create multiple delegations in a single transaction. Subdelegation lets users split up the rights associated with a single token, for example pointing airdrop claiming to wallet B and governance rights to wallet C.

These are expansions on the core featureset of V1; if you simply wish to continue using V1-esque features then a direct migration table is provided below.

Migration

Delegating your wallet

v1

delegateForAll(delegate, value)

v2

delegateAll(delegate, "", value)

We've added the ability to use subdelegations which is what "" is for.

Delegating a contract

v1

delegateForContract(delegate, contract_, value)

v2

delegateContract(delegate, contract_, "", value)

We've added the ability to use sub-delegations which is what "" is for.

Delegating Tokens

v1

v2

In v2, we've added support for fungible tokens and split up the token calls into 3 seperate functions.

v2 - ERC721

v2 - Fungibles

Users can now specify an amount when delegating fungible tokens

Revoke Calls

v1

v2

These functions are removed in favor of using the delegate functions and providing false as the value.

Fetching Incoming Delegations

v1

v2

All enumeration methods now return the same struct, no matter the delegation type

Fetching Outgoing Delegations

v1

v2

These methods have all been rolled into one single enumeration that returns a list of all delegations a vault has issued

Checking Wallet Delegations

v1

v2

Checking Contract Delegations

v1

v2

Checking Token Delegations

v1

v2

v2 - ERC721

v2 - Fungibles

Fungible token queries return a uint256 instead of a boolean representing the amount delegated

Last updated