(This release is the one from the canonical lauch onstage in Bogota. We were missing semantic versioning at the time, but we call this the 1.0.0 release retroactively.)
Deploy commit eda322894a5ed379bbda2b399c9d1cc65aa8c132
- Introduce semantic versioning to the Deployer and RToken
RTokenCreated
event: addedversion
argument
event RTokenCreated(
IMain indexed main,
IRToken indexed rToken,
IStRSR stRSR,
address indexed owner
);
=>
event RTokenCreated(
IMain indexed main,
IRToken indexed rToken,
IStRSR stRSR,
address indexed owner,
string version
);
- Add
version()
getter on Deployer, Main, and all Components, via mix-in. To be updated with each subsequent release.
Deploy commit d757d3a5a6097ae42c71fc03a7c787ec001d2efc
Candidate release for the "all clear" milestone
- Support multiple beneficiaries via the
FacadeWrite
- Add
RToken.issue(address recipient, uint256 amount)
(likeRToken.issue(uint256 amount)
) to support issuance from another smart contract - Add
FacadeRead.primeBasket()
+FacadeRead.backupConfig()
- Switch from price point estimates to price ranges; all prices now have a
low
andhigh
. Impacted interface functions:IAsset.price()
IBasketHandler.price()
- Replace
IAsset.fallbackPrice()
withIAsset.lotPrice()
. The lot price is the current price when available, and a fallback price otherwise. - Introduce decaying fallback prices. Over a finite period of time the fallback price goes to zero, linearly.
- Remove
IAsset.pricePerTarget()
from interface - Selectively sweep rewards from RToken
- Add
safeMulDivCeil()
toITrading
traders. Use when overflow is possible from 2 locations: - Introduce config struct to encapsulate Collateral constructor params more neatly
- In general it should be easier to write Collateral plugins. Implementors should only ever have to override 4 functions:
tryPrice()
,refPerTok()
,targetPerRef()
, andclaimRewards()
. - Add
.div(1 - maxTradeSlippage)
to calculation ofshortfallSlippage
in RecollateralizationLib.sol:L188. - Bugfix: Do not handout RSR rewards when no one is staked
- Bugfix: Support small redemptions even when the RToken supply is massive
- Bump component-wide
version()
getter to 1.2.0