2.3.0 • Published 2 years ago

@aurora-balancer-labs/v2-deployments v2.3.0

Weekly downloads
-
License
GPL-3.0-only
Repository
-
Last release
2 years ago

Balancer V2 Deployments

NPM Package GitHub Repository

This package contains the addresses and ABIs of all Balancer V2 deployed contracts, for Ethereum, Polygon, Arbitrum and Optimism mainnet, as well as various test networks. Each deployment consists of a deployment script (called 'task'), inputs (script configuration, such as dependencies), outputs (typically contract addresses), and ABIs of related contracts.

Addresses and ABIs can be consumed from the package in JavaScript environments, or manually retrieved from the GitHub repository.

Note that some protocol contracts are created dynamically: for example, WeightedPool contracts are deployed by the canonical WeightedPoolFactory. While the ABIs of these contracts are stored in the abi directory of each deployment, their addresses are not. Those can be retrieved by querying the on-chain state or processing emitted events.

Overview

Deploying Contracts

For more information on how to create new deployments or run existing ones in new networks, head to the deployment guide.

Installation

$ npm install @aurora-balancer-labs/v2-deployments

Usage

Import @aurora-balancer-labs/v2-deployments to access the different ABIs and deployed addresses. To see all Task IDs and their associated contracts, head to Past Deployments.


  • async function getBalancerContract(taskID, contract, network)

Returns an Ethers contract object for a canonical deployment (e.g. the Vault, or a Pool factory).

Note: requires using Hardhat with the hardhat-ethers plugin.

  • async function getBalancerContractAt(taskID, contract, address)

Returns an Ethers contract object for a contract dynamically created at a known address (e.g. a Pool created from a factory).

Note: requires using Hardhat with the hardhat-ethers plugin.

  • async function getBalancerContractAbi(taskID, contract)

Returns a contract's ABI.

  • async function getBalancerContractBytecode(taskID, contract)

Returns a contract's creation code.

  • async function getBalancerContractAddress(taskID, contract, network)

Returns the address of a contract's canonical deployment.

  • async function getBalancerDeployment(taskID, network)

Returns an object with all contracts from a deployment and their addresses.

Active Deployments

DescriptionTask ID
Authorizer, governance contract20210418-authorizer
Vault, main protocol contract20210418-vault
Weighted Pools of up to 8 tokens20210418-weighted-pool
Rate Provider for wstETH20210812-wsteth-rate-provider
Batch Relayer20211203-batch-relayer
Linear Pools for Aave aTokens20211208-aave-linear-pool
Batch Relayer V220220318-batch-relayer-v2
Authorizer Adaptor for extending governance20220325-authorizer-adaptor
Wallet for the BAL token20220325-bal-token-holder-factory
Admin of the BAL token20220325-balancer-token-admin
Gauge Registrant20220325-gauge-adder
Liquidity Mining: veBAL, Gauge Controller and Minter20220325-gauge-controller
Mainnet Staking Gauges20220325-mainnet-gauge-factory
Single Recipient Stakeless Gauges20220325-single-recipient-gauge-factory
Delegation of veBAL boosts20220325-ve-delegation
Linear Pools for ERC4626 Tokens V220220404-erc4626-linear-pool-v2
Gauges on child networks (L2s and sidechains)20220413-child-chain-gauge-factory
Arbitrum Root Gauges, for veBAL voting20220413-arbitrum-root-gauge-factory
Polygon Root Gauges, for veBAL voting20220413-polygon-root-gauge-factory
veBAL Smart Wallet Checker20220420-smart-wallet-checker
Fee Distributor for veBAL holders20220420-fee-distributor
Linear Pools for Unbutton tokens20220425-unbutton-aave-linear-pool
Distribution Scheduler for reward tokens on gauges20220422-distribution-scheduler
Relayer with the fix for the Double Entrypoint issue20220513-double-entrypoint-fix-relayer
Protocol Fee Withdrawer20220517-protocol-fee-withdrawer
Child Chain Gauge Token Adder20220527-child-chain-gauge-token-adder
Preseeded Voting Escrow Delegation20220530-preseeded-voting-escrow-delegation
Stable Pools V2 of up to 5 tokens20220609-stable-pool-v2
Gauge Registrant V2, supporting new networks20220628-gauge-adder-v2

Scripts

These are deployments for script-like contracts (often called 'coordinators') which are typically granted some permission by Governance and then executed, after which they become useless.

DescriptionTask ID
Coordination of the veBAL deployment20220325-veBAL-deployment-coordinator
Coordination of setup of L2 gauges for veBAL system20220415-veBAL-L2-gauge-setup-coordinator
Coordination of veBAL gauges fix (Option 1)20220418-veBAL-gauge-fix-coordinator
veBAL Smart Wallet Checker Coordinator20220421-smart-wallet-checker-coordinator
Tribe BAL Minter Coordinator20220606-tribe-bal-minter-coordinator
Coordination of the double entrypoint issue fix20220610-snx-recovery-coordinator

Deprecated Deployments

These deployments have been deprecated because they're either outdated and have been replaced by newer versions, or because they no longer form part of the current infrastructure. In almost all cases they should no longer be used, and are only kept here for historical reasons.

Go to each deprecated deployment's readme file to learn more about why it is deprecated, and what the replacement deployment is (if any).

DescriptionTask ID
Stable Pools of up to 5 tokens20210624-stable-pool
Liquidity Bootstrapping Pools of up to 4 tokens20210721-liquidity-bootstrapping-pool
Meta Stable Pools with 2 tokens and price oracle20210727-meta-stable-pool
Distributor contract for LDO rewards20210811-ldo-merkle
Relayer for Lido stETH wrapping/unwrapping20210812-lido-relayer
Basic Investment Pools for few tokens20210907-investment-pool
Distributor contract for arbitrum BAL rewards20210913-bal-arbitrum-merkle
Distributor contract for VITA rewards20210920-vita-merkle
Distributor contract for arbitrum MCB rewards20210928-mcb-arbitrum-merkle
Merkle Orchard Distributor20211012-merkle-orchard
Preminted BPT Meta Stable Pools20211208-stable-phantom-pool
Linear Pools for ERC4626 Tokens20220304-erc4626-linear-pool