mzhu25
89948b360c
Add checkAllowance flag to LibTokenSpender.spendERC20Tokens ( #39 )
2020-11-18 12:23:13 -08:00
Lawrence Forman
561b60a24d
EP Native Orders ( #27 )
...
* `@0x/contracts-zero-ex`: add limit orders feature
`@0x/contracts-utils`: add `uint128` functions to `LibSafeMathV06`
* `@0x/contract-addresses`: Update ganache snapshot addresses
* `@0x/contracts-zero-ex`: Mask EIP712 struct hash values.
* `@0x/contracts-zero-ex`: Add more limit order tests
* `@0x/contracts-zero-ex`: Fix typos
* `@0x/contracts-zero-ex`: Compute fee collector address after protocol fee zero check.
* `@0x/contracts-zero-ex`: Remove WETH payment logic from fee collector fixin
* `@0x/contracts-zero-ex`: Convert all ETH to WETH in `FeeCollector`.
* `@0x/contracts-zero-ex`: Address review feedback
* `@0x/contracts-zero-ex`: Export more utils
* `@0x/contracts-zero-ex`: Rename `LimitOrdersFeatures`, `LibLimitOrders`, etc. into `*NativeOrders*`.
`@0x/contracts-zero-ex`: Emit `protocolFeePaid` in native order fill events.
`@0x/contracts-zero-ex`: Refactor to get around stack limits.
`@0x/contracts-zero-ex`: Use different storage mappings for RFQ and limit order pair cancellations.
* `@0x/contracts-zero-ex`: Add `getProtocolFeeMultiplier()` and `transferProtocolFeesForPools()` to `NativeOrdersFeature`.
* `@0x/contracts-zero-ex`: Fix broken tests
* update orders docs
* `@0x/contracts-zero-ex`: Add more tests to `NativeOrdersFeature`
* rebuild after rebase
* `@0x/contract-addresses`: Fix changelog booboo
* `@0x/contracts-zero-ex`: Add method selectors output to generated artifacts
* `@0x/contracts-zero-ex`: Add maker address to order cancel events.
`@0x/contracts-zreo-ex`: Remove `UpTo` suffix from order pair cancellation functions.
`@0x/contracts-zreo-ex`: Address misc review comments.
* `@0x/contracts-zero-ex`: More SafeMath in native orders
* update orders docs
Co-authored-by: Lawrence Forman <me@merklejerk.com>
2020-11-17 15:39:40 -05:00
mzhu25
7403c0255a
Feature/liquidity provider sandbox ( #16 )
...
* Update liquidity provider feature to use sandbox
* add support for liquidity provider feature in the exchange proxy swap quote consumer
* Move to off-chain liquidity provider registry
* Update ILiquidityProvider interface
* Remove some unused artifacts and wrappers
* Consolidate ILiquidityProvider
* prettier
* lint
* Address PR feedback
* Add failover to sandbox
* Add test for failover behavior in LiquidityProviderSandbox
* Update changelogs
* Emit events for the new LiquidityProvider scenarios
* Fix swap quote consumer bug
* post-rebase fixes
* `@0x/contracts-zero-ex`: bump feature versions
* Add default field to TokenAdjacencyGraph
* update addresses
Co-authored-by: Lawrence Forman <me@merklejerk.com>
2020-11-13 12:22:21 -08:00
Steve Marx
afd4805421
rewrite ZeroEx in Yul ( #23 )
...
rewrite ZeroEx in Yul
2020-11-06 22:03:07 -05:00
Steve Marx
861871134b
add LibTokenSpender and convert to using that ( #3 )
...
add LibTokenSpender and convert to using that
This skips the allowance target. Allowances are instead just set on the
exchange proxy itself. There is a fallback, though, to try spending from
the allowance target if the original transfer fails.
2020-10-23 10:45:46 -04:00
Michael Zhu
1c15ecacb0
add tests for LiquidityProviderFeature
2020-10-05 10:09:06 -07:00
Michael Zhu
78e3cd39d1
@0x/contracts-zero-ex
: Add LiquidityProviderFeature contracts
2020-10-05 09:43:19 -07:00
Lawrence Forman
9f7840e12b
@0x/contracts-zero-ex
: Remove only
from tests.
2020-09-02 21:22:07 -04:00
Lawrence Forman
889b58a914
@0x/contracts-zero-ex
: Add RFQT taker enforcement to FQT.
...
`@0x/contracts-zero-ex`: Remove redundant event from `BridgeAdapter`.
`@0x/contracts-zero-ex`: Treat all calldata as signed if quote signer is not in `TransformERC20Feature`.
`@0x/contracts-zero-ex`: Update bridge adapters
2020-09-02 15:58:38 -04:00
Lawrence Forman
d8844f6970
@0x/contracts-integrations
: Fix broken tests.
2020-09-01 17:32:29 -04:00
Lawrence Forman
1d6aef5cd6
@0x/contracts-zero-ex
: Remove UniswapFeature
...
`@0x/contracts-zero-ex`: Fix broken tests.
2020-09-01 16:05:14 -04:00
Lawrence Forman
228246089e
Merge branch 'feat/exchange-proxy/vip-uniswap' into fix/ep/meta-transactions
2020-09-01 11:59:44 -04:00
Lawrence Forman
2636384ead
Merge remote-tracking branch 'origin/feat/exchange-proxy/post-cd-audit' into fix/ep/meta-transactions
2020-09-01 09:48:17 -04:00
Lawrence Forman
9cda9f69cd
@0x/contracts-zero-ex
: Add reentrancy guard to mtx functions
...
`@0x/contracts-zero-ex`: Add refund mechanism to mtxs
`@0x/contracts-zero-ex`: Pass sender to transfomers.
`@0x/contracts-zero-ex`: Refund protocol fees to `refundReceiver` in FQT.
`@0x/utils`: Add EP flavor of `IllegalReentrancyError`
`@0x/order-utils`: Add `refundReceiver` to FQT transform data.
`@0x/asset-swapper`: Add `refundReceiver` support to EP swap quote consumer.
2020-09-01 09:40:58 -04:00
Lawrence Forman
e7ad7c3af7
@0x/contracts-zero-ex
: Add IUniswapV2Feature
.
...
`@0x/contracts-zero-ex`: Rename all feature contracts to have `Feature` suffix.
`@0x/contracts-zero-ex`: Return an `IZeroExContract` instance from `fullMigrateAsync()`.
2020-08-20 16:54:50 -04:00
Michael Zhu
e078f3d479
Appease CI
2020-08-19 09:50:39 -07:00
Lawrence Forman
5dd686f22f
@0x/contracts-zero-ex
: Add reentrancy guard to mtx functions
...
`@0x/contracts-zero-ex`: Add refund mechanism to mtxs
`@0x/contracts-zero-ex`: Pass sender to transfomers.
`@0x/contracts-zero-ex`: Refund protocol fees to `refundReceiver` in FQT.
`@0x/utils`: Add EP flavor of `IllegalReentrancyError`
`@0x/order-utils`: Add `refundReceiver` to FQT transform data.
`@0x/asset-swapper`: Add `refundReceiver` support to EP swap quote consumer.
2020-08-06 22:28:35 -04:00
Lawrence Forman
145ec8ede1
address review comments
2020-07-22 22:18:41 -04:00
Lawrence Forman
5f5a158060
@0x/contracts-zero-ex
: Update TransformERC20
and MetaTransactions
to handle signed calldata.
2020-07-22 22:18:39 -04:00
Lawrence Forman
a55e8b268c
@0x/contracts-zero-ex
: Fix linter errors.
2020-07-10 02:36:25 -04:00
Lawrence Forman
e8106f04b5
@0x/contracts-zero-ex
: Address review feedback.
2020-07-10 02:36:25 -04:00
Lawrence Forman
297ff10c14
@0x/contracts-zero-ex
: add SignatureValidator
and MetaTransactions
features.
2020-07-10 02:36:00 -04:00
Lawrence Forman
a5a68acfec
Add Exchange Proxy to Ganache snapshot ( #2612 )
...
* `@0x/contracts-zero-ex`: Expose migration tools.
* `@0x/contract-addresses`: Update ganache snapshot Exchange Proxy addresses
* `@0x/migrations`: Add Exchange Proxy migration
2020-06-25 13:52:01 +10:00
Lawrence Forman
7dffd0a03e
@0x/contracts-zero-ex
: Use transformer utils from order-utils
.
2020-06-17 01:23:08 -04:00
Lawrence Forman
09b8d7cfc9
@0x/contracts-zero-ex
: Flip TransformERC20.createTransformWallet()
to onlyOwner
.
2020-06-16 18:07:03 -04:00
Lawrence Forman
ebfa62637e
@0x/contracts-zero-ex
: Address audit feedback.
2020-06-08 15:28:27 -04:00
Lawrence Forman
2ba3818b65
@0x/contracts-zero-ex
: Introduce transformer contracts.
2020-05-28 11:56:59 -04:00
Lawrence Forman
af45409959
@0x/contracts-zero-ex
: Revamp TransformERC20.
2020-05-28 11:56:59 -04:00
Lawrence Forman
654abbac25
@0x/contracts-zero-ex
: Introduce the TransformERC20
feature.
2020-05-28 11:56:58 -04:00
Lawrence Forman
2fce332ed7
ZeroEx: TransformERC20, TokenSpender ( #2545 )
...
* `@0x/contracts-utils`: Convert more 0.6 contracts
* `@0x/contracts-erc20`: Add solidity 0.6 contracts.
* `@0x/utils`: Add new `ZeroExRevertErrors` revert types
* `@0x/contracts-zero-ex`: Introduce the `TransformERC20` feature.
* `@0x/subproviders`: Update ganache-core.
`@0x/web3-wrapper`: Update ganache-core.
* `@0x/contracts-zero-ex`: Make `TokenSpender`'s puppet contract a distinct contract type and rename `getTokenSpenderPuppet()` to `getAllowanceTarget()`
* `@0x/zero-ex`: Rebase and use "slot" instead of "offset" language in storage buckets.
* `@0x/web3-wrapper`: Add `getAccountNonceAsync()` to `Web3Wrapper`
* `@0x/contracts-zero-ex`: Revamp TransformERC20.
* `@0x/contracts-zero-ex`: Remove `payable` from `IERC20Transformer.transform()` and disable hex capitalization linter rule because of prettier conflicts.
* `@0x/contracts-zero-ex`: Use `immutable` owner in `Puppet` instead of `Ownable`.
* `@x/utils`: Address review feedback.
* `@0x/contracts-zero-ex`: Address review feedback.
* `@0x/contracts-utils`: Address review feedback.
* `@0x/contracts-zero-ex`: Return deployment nonce in `transform()`.
* `@0x/contracts-zero-ex`: Finish returning deployment nonce in `transform()`.
* `@0x/contracts-zero-ex`: Fix doc-gen bug.
* `@0x/contracts-zero-ex`: Address review comments.
* `@0x/utils`: Add `NegativeTransformERC20OutputERror`
* `@0x/contracts-zero-ex`: Revert if the taker's output amount decreases.
Co-authored-by: Lawrence Forman <me@merklejerk.com>
2020-05-20 22:47:21 -04:00
Lawrence Forman
f1de64dcaf
@0x/contracts-zero-ex
: Make Ownable
feature conform to IOwnable
.
2020-04-28 12:16:30 -04:00
Lawrence Forman
0042e42160
@0x/contracts-zero-ex
: Merge Migrate
into Ownable
2020-04-24 01:06:44 -04:00
Lawrence Forman
12f2250ab5
@0x/contracts-zero-ex
: bootstrap()
is now a temporary feature, registered in the ZeroEx constructor.
...
`@0x/contracts-zero-ex`: `bootstrap()` de-registers itself and self-destructs once it's called.
`@0x/contracts-zero-ex`: `bootstrap()` now takes arbitrary call data, but the callee is fixed in an immutable.
`@0x/contracts-zero-ex`: `bootstrap()` caller is fixed in an immutable.
`@0x/contracts-zero-ex`: `bootstrap()` only calls a single target.
`@0x/contracts-zero-ex`: Renamed `BasicMigration` to `InitialMigration`.
`@0x/contracts-zero-ex`: `InitialMigration` is now the bootstrap target and multiplexes to the initial features.
`@0x/contracts-zero-ex`: Add `Migrate` feature and tests.
`@0x/contracts-zero-ex`: Re-organize contract locatins (remove `interfaces` folder).
2020-04-21 22:29:46 -04:00
Lawrence Forman
72908b02fe
@0x/contracts-zero-ex
: Address review feedback.
...
`@0x/contracts-zero-ex`: Add target implementation address to `rollback()`.
`@0x/contracts-zero-ex`: Add storage ID uniqueness test.
`@0x/contracts-zero-ex`: Add rollback history querying functions to `SimpleFunctionRegistry`.
2020-04-21 22:29:46 -04:00
Lawrence Forman
c11d661b39
@0x/contracts-zero-ex`: Create ZeroEx (proxy) contracts
2020-04-21 22:29:46 -04:00