Over the last month and a half we saw vigorous ongoing research and development on all sides of the Ethereum roadmap, and progress is rapidly starting to translate into real results that can be run and verified inside of an Ethereum client.

On Metropolis:

Agendas for core dev meetings 15 and 16 here: https://github.com/ethereum/pm/issues/13 and https://github.com/ethereum/pm/issues/14

List of accepted EIPs here: https://github.com/ethereum/EIPs/blob/master/README.md (mostly agreed on, though we are still going back and forth on details such as gas costs)

Most of the EIPs have been implemented in C++ and Python and are being implemented in other clients; tests are being actively written and added here https://github.com/ethereum/tests/tree/develop/GeneralStateTests (see the various branches for different tests)

Clients that have not implemented GeneralStateTests could provide a docker image for Hive testing (contact Martin Swende). All GeneralStateTests are being converted into BlockChainTests and run on Hive.

A release date has still not been finalized; the general consensus is to wait until all tests are passing on major clients before setting one. Because of the rapid increases in block difficulty, the ice age continues to be delayed; current prognosis assuming no further increases (arguably a very pessimistic estimate) is that block times will not exceed 20s until July 12, and will not exceed 30s until Sep 12.

The Ethereum blockchain has hit several new all-time highs:

Difficulty (450 TH) and hashrate (28.5 TH)

Transactions per day (187115, or ~2.16 per sec)

Gas usage per day has not yet reached the all-time high of Jun 18, when the blockchain was heavily spammed as part of the DAO attack and various counterattacks, but is nearing it with an 11-month high of 10.7 billion per day. That’s 1991878 gas per block, or ~45% full blocks for the day (reminder: gas limits are dynamically adjusting , so congestion with rapidly increasing fees is not likely) . Uncle rate on that day was only ~7.4%.

On various side projects:

ENS has been deployed, and auctions are ongoing .

Whisper is getting a proper API, which is in alignment with our general RPC, the API should be ready soon and a workable whisper version will be released.

Swarm has made a number of significant improvements, including (i) supporting directory upload and download via the http interface, (ii) full FUSE support, (iii) a new protocol pss for node-to-node messaging, (iv) replacing the chunk hash with a Merkle tree hash to enable more efficient data inclusion proofs. Progress toward POC3 is going at full steam.

Pyethereum development has picked up quickly:

Jan Xie and his team have successfully synced a pyethapp node to the most recent block on the mainnet.

Several bugs in the implementation have been fixed, and the client is now passing all state tests and most pre-Metropolis blockchain tests. Work to find the remaining issues is ongoing.

Most Metropolis EIPs have been implemented, including the four new precompiles .

The tester module has been revamped so that it is fully based on the Chain module, and a new and more convenient interface has been added, including functionality such as creating state tests.

Casper research is now in the process of fine-tuning the incentives for liveness, and implementing the logic inside of pyethereum. This includes:

Other research stuff:

Substantial work has been done on sharding, and specifically the dreaded “data availability problem”; see here: https://github.com/ethereum/research/wiki/A-note-on-data-availability-and-erasure-coding</li>