This past week we addressed many bug fixes and tweaks around the app, along with improved unit testing and the near completion of a new system for transaction relaying. A large part of the user actions within the UI have been simplified and refactored, removing nearly 15,000 lines of code. This will be pushed within the next day, and then it’s onto skinning the remaining pages within the front-end.
Joey is working on three remaining tasks before security audits: the contract updating functionality, a new trading system that handles worst case loss appropriately, and changing the system to allow event creation during forks.
Progress is continuing to be made, and if you’d like a real time day by day of what we’re working on, come join us in Slack!
January 10, 2017
- Added an optional “trade-group ID” parameter to all on-contract trading functions: buy, sell, short_sell, shortAsk, and trade, as well as the log_add_tx, log_fill_tx, and log_short_fill_tx events. Also added support for trade group ID in augur.js and the front-end. Trade group ID is a UUID assigned to each trade by the front-end, and is used to track (after-the-fact) which trades were placed as part of the same trade group or “meta-trade” in the UI.
- Updated reveal-reports, load-reports, commit-report, logout, place-trade, short-sell, and trade tests. All previously existing tests have now been updated for the transaction changes!
- Refactored place-trade: the “taker actions” (placeBuy, placeSell, and placeShortSell) are now in a separate file, take-order.
- Added Buffer support to the serialize utility in augur.js.
- The unit test suite for augur.js has been significantly expanded.
- Added loginWithMasterKey to augur.js accounts unit tests.
- Renamed the “web” submodule of augur.js to “accounts”. The old reference will continue to work for the time being.
January 9, 2017
- Added unit tests for the new winning-positions selector.
- Updated price-time-series and claim-proceeds unit tests.
- Changed scrollbars to auto-display when needed.
- Adjusted tooltip padding.
January 8, 2017
- The cash contract now fires a sentCash event when the send or sendFrom functions complete successfully. Supporting code has been added to the front-end listeners, the filters event formatter, and the transaction relay to listen for, parse, and automatically show on the transactions page.
- In-progress transaction messaging for closing out complete sets, “send” funds transactions (ether, real ether, and reputation), and initial order book generation is now handled entirely by the transaction relayer. (Note: initial order book generation is currently not exposed in the UI.)
- Simplified the transactions module by removing two unnecessary methods (updateExistingTransaction and processTransactions).
January 7, 2017
- Removed extraneous description fields from augur.js wrapper functions. Descriptions are now handled by the relayer.
- Added isShortAsk parameter to on-contract sell function and its associated log_add_tx event. The log_add_tx and log_short_fill_tx filters in augur.js autoconvert isShortAsk to a boolean value.
- Fixed final numMarketsToLoad value for descending loadMarkets.
- Added always-in-progress flag to relayed commitTrade transactions.
- Removed duplicate trading fees display in bid/ask/shortAsk transactions.
- Added isShortAsk field to relayed shortAsk transactions.
- Fixed short sell and short ask messaging. Added log_short_fill_tx as a separate relayed transaction label.
- Simplified trade simulation setup by inlining the trade and short sell “transaction” objects. Removed unused add-short-sell-transaction and add-trade-transaction files.
January 6, 2017
- The Transaction component no longer has separate commit-to-buy/sell types. These types now simply use the trade type the user is committing to.
- The transaction relayer now automatically fills in all fields for commit-trade, trade, and short-sell transactions by using the new, more detailed trade info fields attached to the tradeCommitment data store.
- Default “scaffolding” transaction updates have been removed from the relayer.
- Fixed in-progress vs completed messages for log_fill_tx.
- Assignment to the gasFees field now works correctly for relayed and logged trading transactions.
- Removed unnecessary dispatches from placeTrade and its subroutines.
- Added trade arguments and orders to the tradeCommitment datastore.
- The initial funding transaction log is now loaded alongside the registration timestamp transaction log.
- Replaced the ugly monster header with a “regular” header in the transactions view.
January 5, 2017
- The messaging for trade, short_sell, and commitTrade transactions is now handled by the transaction relayer. Deprecated manual transsaction messaging for these functions have been removed.
- Refactored place-trade: removed dispatcher from placeAsk, placeBid, placeShortAsk, and parametrizeOrder functions, and moved these functions to trade/actions/make-order.
- Simplified the selectScalarMinimum function and moved it to market/selectors/market.
January 4, 2017
- Replaced manual transaction processors for trades (buy/sell); refactored and simplified placeTrade.
- Simplified default message generator in registerTransactionRelay.
- Removed unused disableAutoMessage transaction property.
- Fixed bond object in constructMarketCreatedTransaction; fixed constructMarketTransaction parameters; moved marketCreated label out of constructMarketTransaction group.
- Consolidated create market actions into submitNewMarket; removed manual create market transaction updates.
- Fixed adjusted-maker-fee calculation in constructLogAddTxTransaction.
- Added gasFees field to trading transactions in constructRelayTransaction.
- Added missing arguments to cancel in contructRelayTransaction.
– The Augur Team