b742e92502
optimistic swaps ( #53 )
...
* alternative flash lending (renting) design
* add rent interface
* fix stack too deep error
rearrange order of k condition math
ignore erroneous out of gas errors in tests
* try removing rent in favor of monolithic swap
IUniswapV2Borrower -> IUniswapV2Callee
update tests
* fix implementation
* clean up math a bit
* amount{0,1}In -> amount{0,1}InNet
* charge on all inputs, not just net
* removed unnecessary safemath
* add to != token check
don't indent in scope
rename reserve{0,1}Next -> reserve{0,1}Adjusted
* > instead of >=
simplify algebra
reserve{0,1}Adjusted -> balance{0,1}Adjusted
add comments
* add some optimistic swap test cases
2020-02-17 15:06:43 -07:00
55ae25109b
MINIMUM_TOTAL_SUPPLY -> MINIMUM_LIQUIDITY ( #51 )
...
* MINIMUM_TOTAL_SUPPLY -> MINIMUM_LIQUIDITY
make selector private
2020-02-07 10:38:46 -05:00
5c042758e8
fee to 5 bips
2020-02-06 15:38:58 -05:00
0e5d00f491
add transfer event tests for burn
2020-01-31 17:19:38 -05:00
1df07b3844
test for transfer events on swap
2020-01-31 17:11:13 -05:00
2d84a7f5f5
improve stability of tests in CI environment
2020-01-30 12:43:16 -05:00
cfc9eecff7
add more robust tests for price{0,1}CumulativeLast
2020-01-30 11:01:59 -05:00
452b531205
fix stale cache bug from SLOAD optimization
2020-01-27 18:13:43 -05:00
3e228282d3
clean up tests
2020-01-24 13:56:46 -05:00
a55aa4bfed
block.number -> block.timestamp
...
tweak timing tests
make tests even better
2020-01-23 12:30:39 -05:00
002b82d723
fix permit test
2020-01-22 15:43:14 -05:00
1a4837bffa
reorder ERC20 functions, clean up naming
2020-01-22 13:14:55 -05:00
ea5e63c427
improve code quality of tests
2020-01-22 12:16:55 -05:00
b972227df8
update to solc@0.5.16
...
update waffle version and fix deprecations
move CI from circle to github actions
2020-01-22 11:47:24 -05:00
cbe801b54f
remove forfeit{,from}
...
make name + symbol + decimals constant
add GenericERC20
rename some contracts
update tests to reflect all of this
2020-01-13 15:59:07 -05:00
9f15d75925
fix tests related to bytecode
2020-01-08 13:04:01 -05:00
83ad498995
add getReserves to wrap single SLOAD
...
put a trailing _ on private variable
2020-01-06 14:52:46 -05:00
3d2493ef2c
change variable name
2020-01-06 13:00:57 -05:00
a589b65bd5
remove unused dependency
2020-01-06 12:39:35 -05:00
b8655fee9f
add "to" parameter to relevant functions
2019-12-30 17:54:02 -05:00
cdd379079d
burn -> forfeit
...
burnFrom -> forfeitFrom
make -> mint
made -> burn
move -> swap
make deadline check >= insteand of >
2019-12-30 15:07:49 -05:00
e9e087c328
remove getTokens from the factory
2019-12-30 13:30:15 -05:00
203795277e
add istanbul support for testing environment
2019-12-20 14:26:52 -05:00
49882ab99b
forfeit -> burn
...
mint -> make
burn -> made
2019-12-19 18:02:49 -05:00
9e80c55338
try out fees on swap
...
rework admin/fee stuff in the factory
2019-12-19 10:40:26 -05:00
20ae6d1195
unsafeBurn{,from} -> forfeit{,From}
...
expiration -> deadline
2019-12-19 08:45:37 -05:00
c9d0ba6198
prefix burn/burnFrom in ERC20 with unsafe
...
fix tests for new contract code
2019-12-18 17:51:25 -05:00
5b15d59773
approveMeta -> permit
...
call factory for fee logic
fail on balances > max112
add skim
use reserves in burnLiquidity
2019-12-13 17:25:04 -05:00
467e15b931
mineBlocks and increase default timeout
2019-12-13 14:48:03 -05:00
f263dab9b5
add more tests
2019-12-13 14:39:09 -05:00
4c77c630fb
bulk out fee implementation
2019-12-12 18:12:23 -05:00
4e4546d0a9
bump solc to 0.5.14
...
chainId implementation (commented out for now)
improve events
move safeTransfer in UniswapV2
tweak error messages
2019-12-12 14:52:15 -05:00
12b269d686
small tweaks
2019-12-09 16:24:59 -05:00
fd95caea17
squash errors
2019-12-09 02:33:18 -05:00
401d8e1e51
fix tests
2019-12-08 16:11:44 -05:00
b284b63118
don't pack prices as much
2019-12-05 13:28:23 -05:00
7f7169fec4
fix tests
2019-11-21 13:26:57 -05:00
43dfc8c567
add exchanges data structure
...
fix tests
2019-11-19 18:17:11 -05:00
b9c105c962
712 signatures
2019-11-19 10:26:03 -05:00
4534a99f87
changes
2019-11-07 17:47:55 -05:00
710adc3254
changes
2019-11-06 17:23:03 -05:00
8cb70d07b2
tweaks
2019-10-31 17:46:25 -04:00
88b63ccee0
add getOtherTokens
...
rework function order
test tweaks
2019-10-31 12:43:51 -04:00
fbaf1f992a
more specific error
2019-10-31 11:29:33 -04:00
73940c6d38
repo cleanup
2019-10-31 11:13:18 -04:00
2c5a1afd39
add uint128 where applicable
...
remove mapping in exchange
add example oracle
syntax changes
2019-10-30 18:56:12 -04:00
976ac977e9
testing improvements
...
added fixtures, utilities, constants
modularized and cleaned up code
2019-10-30 13:27:10 -04:00
58755fc362
fix burn logic/visibility
...
add getters for reserves + data
fix first-time accumulator bug
add more tests
2019-10-29 15:18:48 -04:00
b6e403ed14
add downcast helpers
...
add safe transfer for bad tokens
reorder updateData order
refactor tests to be more explicit
2019-10-28 16:24:29 -04:00
3f9418e486
finalize 191 signatures
2019-10-28 14:33:47 -04:00