Digix Core Dev Weekly Update — Mar 1st 2017

KC Chng (CEO)

Ropsten Hiccup

On 24th Feb 2017, Ropsten, Ethereum’s public test net, was under a denial a service attack (“spam attack”). Average block propagation time slowed to a crawl as a large miner has decided to deploy several zero-value high-gas transactions to spam the test network continually. The attacker’s intentions are unknown, but the result is that Ethereum developers who rely on Ropsten to test their contracts no longer have a stable public testing environment to deploy and test their smart contract code prior to deploying to production.

The use of Proof-of-Work (PoW) for testnets presents a fundamental game theoretical problem: the only significant economic incentive to mine on testnets using dedicated GPU resources is to launch an attack and reduce stability and the viability of the testnet (and thus hamper development for the mainnet chain).

This means that testing on Ropsten may no longer be viable as these attacks will come continually / sporadically. We are working out alternatives as we speak, and will make a separate announcement soon.

Chris will be giving a presentation tomorrow at SG Innovate, together with Attores and Otonomos. Please tune into our channel for more information.

Digix Live Stream

Chris Hitchcott (Digix Core Dev)

This week I’ve been working on Spectrum. I completed the web3-redux refactor, and have implemented `redux-orm` as the main datastore for the core project. This gives us the ability to have dynamic keystore ‘plugins’ with custom creation, editing and signing components. In simple terms, this means that adding new signing types (like uPort or 2FA) can be done in a decoupled way, and the ‘dapplet store’ can not only list dapplets, but also custom keystore providers.

Weekly Git Commits

## core2-storage-library-contracts
### git@github.com:DigixGlobal/core2-storage-library-contracts.git

- b95c7a4 — [maint] refactor into single storage contract
- 586ecbf — [wip] Auditor and Custodian functions
- 729f490 — [wip] Vendor related functions
- 9b2e271 — [wip] participant interfaces and controllers
- 0aa8724 — [maint] rename User library to Token library
- 3f85527 — [wip] Asset contracts

## simple-faucet
### git@github.com:DigixGlobal/simple-faucet.git

- 6bc5add — [maint] add example start script for localhost server
- a44052c — [feature] resolve ip in new version of nginx, document
- a8ac441 — Merge branch ‘master’ of github.com:DigixGlobal/simple-faucet
- 0c5217c — [feature] simple faucet — initial commit
- 2c0cf57 — Initial commit

## spectrum
### git@github.com:DigixGlobal/Spectrum.git

- a9a0f25 — [wip] offline signing
- b19c9c7 — [wip] modular hooked signing providers 😆
- 9b44e38 — [wip] parse balances with bignumber
- 5e3e6d9 — [wip] more sensible v3 editor
- 6f83fd0 — [wip] web3 integration
- 156ddaa — [wip] tokens refactoring
- 34ad1e3 — [wip] working baseToken tx signing 🍻
- 033ed79 — [wip] full CRUD for v3 and cold
- 5a307a6 — [wip] create `keystore_modal` that wraps creation and editing
- d168303 — [wip] hook up web3-redux and keystore_edit modularity
- 66c6bbd — [wip] token and balance listings
- c5c3621 — [wip] network chain ID & blockchain prefix
- ff11555 — [wip] Sexy token CRUD
- 83dcd6f — [wip] minor UX fix
- 42cee34 — [wip] better hot loading
- 424f0d7 — [wip] UI tweaks
- 947b914 — [wip] generate v3 wallets
- 44434c1 — [wip] modular keystore creation 👏
- 8744304 — [wip] major clean up
- 902c837 — [wip] bump iteration count
- 63b8997 — [wip] relational keystores, keystoreTypes & networks
- a26b975 — [wip] implement redux-orm for networks
- 14ba3df — [wip] web3-redux base token transactions
- 34d510e — [wip] implement pending requests
- 1644df9 — [wip] full network sync with web3redux

## web3-redux
### https://hitchcott@github.com/DigixGlobal/web3-redux.git

- e5fbc40 — [bugfix] merge contract calls
- 65f96f5 — [bugfix] ensure waitForMined has a blockNumber
- a6ac364 — [wip] merge transaction data
- 54c9c10 — [wip] implement total & networks pending
- 3ed5861 — [wip] implement connection status
- bc63ede — [wip] contracts completed
- c6b2b6b — [wip] reactor action creators
- 6d9308e — [wip] generateContractApi
- cd8c9c9 — [wip] getTransaction
- 11739d6 — [wip] implement transaction creation
- efb29d5 — [wip] implement web3 setter/getter
- 99cba45 — [wip] allow passing actions, cached generateNetworkApi setup
- e9c5710 — [wip] implement basic connect model
- ea90350 — [wip] boilerplate example project for v2

## sui-react-ezmodal
### https://hitchcott@github.com/hitchcott/sui-react-ezmodal.git

- 456dcc6 — [feature] setFormData
- 9aab1c0 — [feature] onReset
- fdca4ec — [feature] error message
- 3929cfb — [feature] add `resetFormData`

## report-script
### git@github.com:DigixGlobal/report-script.git

- 41093ac — [bugfix] show repos with 1 commit
- b20131f — [feature] initial commit — git report script