Lawrence Forman f84b375cde
UniswapFeature (#2703)
* Minimal Uniswap accessor.

* Add comments

* Safe math

* mainnet gas benchmark

* Assembler Uniswap

* Selectors and addresses

* Fix bugs in ABI encoders

* Typo

* AsmUniswap test

* Fix wantAmount computation

* Golfing

* Bypass AllowanceTarget

* Generalized asm uniswapper

* Implement ordering

* Fix pair computation

* #6 Golfing Iron

* Remove 'to' argument (saves 377 gas)

* New contract api

* `@0x/contracts-zero-ex`: Add `UniswapFeature`

* `@0x/contract-artifacts`: Regenerate artifacts

* `@0x/contract-wrappers`: Regenerate wrappers

* `@0x/asset-swapper`: Add Uniswap VIP support.
`@0x/asset-swapper`: Add `includeSources` support.

* `@0x/contracts-zero-ex`: Fix misleading comments in `UniswapFeature`.
`@0x/asset-swapper`: Fix linter errors.

* `@0x/asset-swapper`: Fix source filter bugs.

* `@0x/contracts-zero-ex`: `UniswapFeature`: Reduce calldata size for AllowanceTarget call
`@0x/asset-swapper`: Fix failing test.

* `@0x/contracts-zero-ex`: Fix ETH buy tokens not being normalized to WETH.

* `@0x/asset-swapper`: Fix multi-hop weirdness with source filters.

* `@0x/asset-swapper`: Fix failing test.

* `@0x/asset-swapper`: Really fix that broken AS test.

* `@0x/asset-swapper`: use filter objects instead of source array for valid buy and sell sources/

* `@0x/asset-swapper`: Move some source filtering logic into the sampler operations.

* `@0x/contracts-zero-ex`: Address PR feedback

* `@0x/contracts-zero-ex`: Fix feature version bug.

* `@0x/asset-swapper`: Did I actually fix AS tests this time? Who knows.

Co-authored-by: Remco Bloemen <remco@0x.org>
Co-authored-by: Michael Zhu <mchl.zhu.96@gmail.com>
Co-authored-by: Lawrence Forman <me@merklejerk.com>
2020-09-23 16:27:48 +10:00
..
2020-07-14 21:48:14 -07:00
2020-07-14 21:48:14 -07:00
2020-07-14 21:48:14 -07:00
2020-07-14 21:48:14 -07:00
2020-07-14 21:48:14 -07:00
2020-07-14 21:48:14 -07:00
2020-07-14 21:48:14 -07:00
2020-07-14 21:48:14 -07:00
2020-08-27 08:20:09 +10:00
2020-07-14 21:48:14 -07:00
2020-07-14 21:48:14 -07:00
2020-08-27 08:20:09 +10:00
2020-09-23 16:27:48 +10:00
2019-11-27 17:50:24 -08:00

Deployed Contract Packages

Contract Package Version Git Tag
AssetProxyOwner @0x/contracts-multisig v1.0.2 @0x/contracts-multisig@1.0.2
ERC20Proxy @0x/contracts-asset-proxy v1.0.1 @0x/contracts-asset-proxy@1.0.1
ERC721Proxy @0x/contracts-asset-proxy v1.0.1 @0x/contracts-asset-proxy@1.0.1
Exchange @0x/contracts-exchange v1.0.1 @0x/contracts-exchange@1.0.1
DutchAuction @0x/contracts-extensions v1.0.2 @0x/contracts-extensions@1.0.2
Forwarder @0x/contracts-exchange-forwarder v1.0.1 @0x/contracts-exchange-forwarder@1.0.1
MultiAssetProxy @0x/contracts-asset-proxy v1.0.1 @0x/contracts-asset-proxy@1.0.1
ZRXToken @0x/contracts-erc20 v1.0.1 @0x/contracts-erc20@1.0.1

Development

Building solidity files will update the contract artifact in {package-name}/generated-artifacts/{contract}.json, but does not automatically update the contract-artifacts or contract-wrappers packages, which are generated from the artifact JSON. See contract-artifacts/README.md for instructions on updating these packages.