@travs travs released this Dec 11, 2017 · 1033 commits to develop since this release

Assets 2


  • Ava linter rules
  • Ava test script
  • cap to number of managed assets
  • raise error if request type is invalid (Fund.sol)
  • limitation on ownership of Fund namespace
  • tests/integration for integration/walk though tests
  • tests/mocks (for mocks during testing)
  • tests/fixtures (e.g. data from cryptocompare)
  • limitation of one fund per ethereum address, for simpler migration process of shutting down and creating fund
  • Shares.sol (Asset.sol with information and helper functions for shares, as well as ability to create and annihilate shares)
  • ds-tests for RMMakeOrders and moduleRegistrar
  • Shares as erc223 asset
  • zero-config premined asset


  • toggle type functions
  • dead (unused) code in cancelOrder
  • allow ownership changing (Owned.sol)
  • unnecessary functions used as pre-conditions
  • check asset is registered in pricefeed before allowing updates
  • Sphere.sol
  • EtherToken.sol
  • safeMath.sol, rewards.sol libraries
  • rewards deployment and linking


  • Use Ava as test runner instead of Jasmine
  • move list of managed assets to Fund rather than DataFeed
  • Separated utils from tests
  • Governance tests to Ava
  • integration tests moved to their own directory
  • use ds-math instead of safeMath
  • replace EtherToken with ds-weth
  • allocate sufficient storage for IPFS hash
  • use ds-math (safe math) contract in rewards
  • pay incentive after redeeming shares
  • rename DataFeed.sol to PriceFeed.sol
  • move deployment configuration, information and script to utils/
  • rewritten parts of PriceFeed.sol; adapted (bool isRecent, uint price, uint decimal) return format
  • function visibility from constant to view
  • Shares and fund precision is always 18
  • Move reward calculation into fund
  • Rewrite calcUnclaimedRewards()


  • bug caused by not zeroing openMakeOrderId
  • stop constant methods from trying to modify storage
  • update nameExists mapping when name changed (ModuleRegistrar.sol)
  • bug leading to accounting error
  • bug allowing unlimited votes in ModuleRegistrar
  • error using dynamic key in ModuleRegistrar mapping