feat: Balancer V2 integration (#206)

* add balancer v2

* fetch balancer v2 pools from subgraph

* feat: initial stab at a Balancer V2 Sampler WIP

* feat: add sampling for buys and fix build issues WIP [untested]

* fix: BalancerV2Sampler implementation issues, works on Kovan

* chore: BalancerV2 sampling boilerplate

* fix: update Balancer V2 mainnet address

* fix: consolidate differences between the 2 working branches

* fix: use mainnet Balancer V2 subgraph

* fix: stack too deep by minimizing and inline Balancer V2 vault interface

* fix: address review comments and clean up

* fix: sampler vault interface and pools cache assuming a pool has swaps

* address more review comments

* fix: TS type issues and add a comment about deadline argument

* fix: pools_cache_tests incorrect token addresses, prettier incompat

* fix: make ERC20BridgeSampler support BalancerV2 non view sampler fns

* fix: use a struct for passing encoded bridge data for Balancer V2

* chore: add changelog entries

* fix: improve gas accuracy of gas schedule for Balancer V2 & Maker Psm

* fix: don't exclude sources with stale caches & wait for cache refresh

* rebase

* `@0x/asset-swapper`: Fix stack too deep errors in sampler

Co-authored-by: Kim Persson <kimpersson88@gmail.com>
Co-authored-by: Lawrence Forman <me@merklejerk.com>
This commit is contained in:
Xianny
2021-05-05 02:01:28 -07:00
committed by GitHub
parent a2643674ca
commit f9a794af93
37 changed files with 933 additions and 748 deletions

View File

@@ -1,4 +1,13 @@
[
{
"version": "1.6.0",
"changes": [
{
"note": "Add BalancerV2, remove Smoothy, Component and Saddle in BridgeProtocol enum",
"pr": 206
}
]
},
{
"timestamp": 1619596077,
"version": "1.5.1",

View File

@@ -126,9 +126,7 @@ export enum BridgeProtocol {
CoFiX,
Nerve,
MakerPsm,
Smoothy,
Component,
Saddle,
BalancerV2,
}
// tslint:enable: enum-naming