195 Commits

Author SHA1 Message Date
Lawrence Forman
ed8a6bb97b @0x/contracts-staking: Emit CobbDouglasAlphaChanged event when calling setCobbDouglasAlpha(). 2019-09-04 20:18:55 -04:00
Lawrence Forman
c774b98002 @0x/contracts-staking: Remove unused tslint directives. 2019-09-04 20:18:55 -04:00
Lawrence Forman
9a63bea763 @0x/contracts-staking: Update LibFixedMath ln() and exp() input domains and improve precision.
`@0x/contracts-staking`: Add `_invert()` and `_mulDiv()` to `LibFixedMath`.
`@0x/contracts-staking`: Update `MixinExchangeFees._cobbDouglas()` to work with `LibFixedMath`.
`@0x/contracts-staking`: Add unit and fuzz tests for `_cobbDouglas()` and remaining `LibFixedMath` functions.
2019-09-04 20:18:55 -04:00
Lawrence Forman
0c6a6743ab @0x/contracts-staking: Write LibFixedMath unit tests. 2019-09-04 20:18:55 -04:00
Lawrence Forman
1c37334b18 @0x/contracts-staking: Add a bunch of LibFixedMath unit tests. 2019-09-04 20:18:55 -04:00
Lawrence Forman
7b5e3dab17 @0x/contracts-staking: Add rich reverts.
`@0x/utils`: Add `LibFixedMath` `RevertError` types.
`@0x/order-utils`: Add `InvalidCobbDouglasAlphaerror` `RevertError` type.
2019-09-04 20:15:15 -04:00
Lawrence Forman
a09cd03ce6 @0x/contracts-staking: Remove LibFeeMath and just put _cobbDouglas() in MixinExchangeFees.
`@0x/contracts-staking`: Update `LibFixedMath` to existing naming conventions.
`@0x/contracts-staking`: Add `cobbDouglasAlphaNumerator` and `cobbDouglasAlphaDenominator` to `Mixinstorage`.
`@0x/contracts-staking`: Add external `setCobbDouglasAlpha()` function to `MixinExchnageFees`
`@0x/contracts-staking`: Update `_cobbDouglas()` to use the new `LibFixedMath` voodoo.
`@0x/contracts-staking`: In reward calculations, use only delegated stake by pool owner as opposed to both delegated and active stake to compute stake totals.
2019-09-04 20:15:15 -04:00
Lawrence Forman
c1fc454d19 @0x/contracts-staking: Add uintMul() function to LibFixedMath. 2019-09-04 20:15:15 -04:00
Lawrence Forman
93c8284a96 @0x/contracts-staking: Add LibFeeMath library. 2019-09-04 20:15:15 -04:00
Alex Towle
dba0d8469d @0x:contracts-exchange Addressed review feedback 2019-08-29 15:20:52 -07:00
Alex Towle
3432083343 @0x:contracts-staking Updated payProtocolFee trivially to fix the build.
This is not a real to update to `payProtocolFee`. Rather, the interface
was updated to it's finished state. This will be addressed in my next
PR.
2019-08-28 16:15:13 -07:00
Alex Towle
7f17033ce3 @0x:contracts-exchange Added protocol fees to fillOrders and matchOrders 2019-08-28 15:05:13 -07:00
Alex Towle
2c970a0466 @0x:contracts-exchange Added protocol fees to fill order 2019-08-28 15:01:30 -07:00
Alex Towle
749c0354b3 @0x:contracts-staking Added protocol fee functions to IStaking 2019-08-28 14:56:40 -07:00
Amir Bandeali
59ae8d4b86 Fix comments in ZrxVault 2019-08-28 13:56:42 -07:00
Amir Bandeali
b81f6ba685 Fix linting error 2019-08-28 12:51:18 -07:00
Amir Bandeali
16c9d00494 Remove redundant function in MixinZrxVault 2019-08-28 11:20:00 -07:00
Amir Bandeali
1a833d9dfb Remove zrxAssetData param to ensure that it is always in sync with zrxToken 2019-08-28 11:06:46 -07:00
Amir Bandeali
bde6278781 Set 100 to PERGENTAGE_DENOMINATOR constant 2019-08-27 23:42:42 -07:00
Amir Bandeali
e7c4d2171f Update contracts to use 256 bit math 2019-08-27 23:42:42 -07:00
Amir Bandeali
3a096ff0b4 Remove 64 and 96 bit LibSafeMath contracts 2019-08-27 23:42:42 -07:00
Amir Bandeali
9feac6708a Add storage layout tests 2019-08-27 23:42:11 -07:00
Amir Bandeali
aabca97b2d Make most constants and storage vars uint256 2019-08-27 23:42:11 -07:00
Amir Bandeali
9fb933fd06 Remove MixinOwnable 2019-08-27 23:42:11 -07:00
Amir Bandeali
df039f05c2 Update contracts to use new SafeMath functions 2019-08-27 23:42:11 -07:00
Amir Bandeali
d1bed5729d Remove LibSafeMath and refactor 6/96 bit versions 2019-08-27 23:42:11 -07:00
Michael Zhu
9b957524a5 replace abi.encodeWithSelector calls with bytes constant + other nits 2019-08-26 16:58:56 -07:00
Michael Zhu
078b1af04e Binop -> BinOp 2019-08-26 16:06:31 -07:00
Michael Zhu
6827ebfb78 blockchainTests.only -> blockchainTests 2019-08-26 15:58:31 -07:00
Michael Zhu
1d807abe8b lint 2019-08-26 15:49:09 -07:00
Michael Zhu
2c15b3f9bd remove staking RevertReasons from TS types, ExchangeAlreadyRegisteredError -> ExchangeAddressAlreadyRegisteredError 2019-08-26 15:49:09 -07:00
Michael Zhu
0d5e037081 use mocha extensions in staking tests 2019-08-26 15:49:09 -07:00
Michael Zhu
dbda3a04b2 update tests to use RichErrors 2019-08-26 15:49:09 -07:00
Michael Zhu
98e5b26eb7 refactor SafeMath rich errors and use them in staking libs 2019-08-26 15:49:09 -07:00
Michael Zhu
cd1fc6a1f0 fix typos 2019-08-26 15:49:09 -07:00
Michael Zhu
52ef745f7c run codegen script 2019-08-26 15:49:08 -07:00
Michael Zhu
961b09977f replace requires/reverts with rich errors 2019-08-26 15:49:08 -07:00
Greg Hysz
6bb3992c2f
Add files via upload
State transitions for stake.
2019-08-23 11:23:28 -07:00
Greg Hysen
c0acc8dfdf Fixed sorting in artifact generation 2019-08-21 16:30:35 -07:00
Greg Hysen
697e5df52d Added changelog entries and cleaned up merge 2019-08-21 13:05:11 -07:00
Greg Hysen
de26925c13 Solidity 0.5.5 -> 0.5.9 2019-08-21 13:04:20 -07:00
Greg Hysen
47e00ff1a7 Renamed MixinTimelockedStake.sol -> MixinTimeLockedStake.sol 2019-08-21 13:04:20 -07:00
Greg Hysen
d106051ee3 CamelCase for timelocks 2019-08-21 13:04:20 -07:00
Greg Hysen
c939fe2287 moved natspec to above contract definition 2019-08-21 13:04:20 -07:00
Greg Hysen
41b372ffe6 Updates from staking PR review 2019-08-21 13:04:20 -07:00
Greg Hysen
5826825d11 Linter fixes 2019-08-21 13:04:20 -07:00
Greg Hysen
a765e47dca Got staking contracts working after rebase 2019-08-21 13:04:20 -07:00
Greg Hysen
de8b032df9 Removed the unused LibRewardsTest 2019-08-21 13:04:20 -07:00
Greg Hysz
f1b1eb3b58 Added contract registry to kill switch diagram 2019-08-21 13:04:20 -07:00
Greg Hysz
1f334d29ae New architecture images for README 2019-08-21 13:04:20 -07:00