Thank you to all the developers and team leaders who contributed to the sections of their projects
During the last month and a half, the Ethereum network underwent rapid growth in use, to the point that it now treats as many transactions per second as Bitcoin. To adapt to the increased load, which has few times reached full capacity of the network for hours, the community has met independently and the minors voted to Increase the gas limit to 6.7 million. At the Foundation, we quickly put additional resources to increase the efficiency of the network, in parallel with the planning of longer -term changes which will considerably increase the scalability of the network.
Research
The Pyethereum client has seen a substantial overhaul and the 2.0 version was published. See to download; In Ubuntu, you can also make “sudo pip install Ethereum”. In addition, we have implemented experimental versions of:
Metropolitan test
Metropolitan tests are progressing quickly. We are actively looking for additional help for finishing tests. See:
We have launched a substantial reward effort to identify the places that most need to improve performance. See some preliminary results for the Opcode bench in Geth here:
The developer meetings Ethereum Core # 15- # 19 took place. The notes and audio / video of the meetings are available here:
Mist team
In May-June, the Mist team had a team meeting: for a week, the team had their face face meetingsSome members for the first time, in which we sat together to share details on the projects on which we worked and to talk about the current code base and the future roadmap. Although we have a long list of features on which we work, we have realized that most of the problems reported on Github were linked to two main problems: slow synchronization and keys / private passwords of lost account. We have described the features that we could implement to help prevent user errors and other related problems, including more options for switching nodes (including Infura support) and better account management options (including HD portfolios and mnemonic seeds – but with torsion).
- Many of these new problems require changes to how the signature process is made to make Geth’s more independent mist, which is under work as an autonomous signatory.
- We have also done research on the parts of refactoring the wall code base to make it more modular and easier to maintain.
- Victor Maia presented research on how to make applications loaded faster and to be more reliable and we are currently testing some of these concepts as basic code elements and / or another web product.
- Progress has been made on ENS integration: we have added an ENT support to our address component, which means that all the applications we have built in Meteor (Wallet and ENS Registrar App will accept a name in any field where it would generally expect an Ethereum address. We are also working on the creation of a web component for generic entry types May use a entry field with the management of ENS, control sum and identical Ethereum.
- The integration of the swarm was tested and is much more stable than it was even a few weeks ago. We predict that he will finally be ready to go out soon.
Web3.js
Web3.js is going well. The new API Whisper has recently been added to the old 0.xx and the new version 1.0.0. Whisper V5 is currently available in geth and must be started to use –shh. We are currently adding Swarm.js and finish the JavaScript account management. If everything is going well, an alpha version will occur soon.
You can already test the new web3.js 1.0 here: https://github.com/ethereum/web3.js/tree/1.0Aand read the new documents to
Security
We have received several bonus bids for vulnerabilities in Ethereumjs, Solidey and CPP-Ethereum. See the classification For current statistics.
We now have Pyethereum on board on the Blackbox consensus crossed in Hive, which continuously performs more than 10,000 tests on each client. See http://hivetetes.ethereum.org. As a light alternative to Hive, we also launched a project to carry out fuzz tests directly on virtual machines, starting with Geth, Parity and Python. In the same vein, we have also set up an automated AFL-Ubage based on solidity.
In preparation of Metropolis, a series of comparative analysis for the GETH EVM has been implemented to ensure that the prices of gas for new opcodes and pre -compiles are within reasonable limits, so as not to constitute back vectors at a later time.
EVM 1.5
The “EVM 1.5” proposals are now EIP projects for “sub-programs and static jumps for the EVM # 615” and “SIMD operations for the EVM # 616”. Discussion and criticism are welcome to And Conversations.
Ethereumjs
The Ethereumjs team is always looking for community contributors To help the JavaScript Ethereum client to reach Metropolis compatibility. A video procedure “Intro for basic development with Ethereumjs-VM“Was released.
Light customer
New algorithms have been designed and implemented in order to improve newspaper search performance in the next version of the them. Promising R&D work has been carried out to obtain rapid initial synchronization and without confidence without hard coded control points. We have made efforts to finalize the protocol for discovery of subjects, which helps customers find servers the appropriates, because it is currently a somewhat weak point of experimental bright customer service.
Remix
Remix’s main function in the last month is the alpha version of Remixd:
Formal verification
The progress of the Eth-Isabelle project was mainly from external contributions. In particular, the best separation logic tactics, which have been brought outside, allow much shorter evidence on Ethereum contracts.
- Better separation logic tactics (contributed)
- Coq Build fixed and added in continuous integration
- Deleting unconverted files and the structure of “annotation” is no longer necessary (PR pending)
- Execute blockchain tests (in progress; ECDSA recover the implementation in Ocaml Wanted).
Bamboo
- The compiler generates bytecode code for all initial examples
- Perfection syntax following comments from the community
- End -to -end test of the compiler (in progress)
Solidity
The Solidity project has been very active in recent months, although most updates are not yet directly visible on the user side. We have seen much more commitment from the community and now have volunteers regularly contributing to the basic code as well as documentation, including translation, mainly in Spanish.
We have added a feature that allows Export of the complete abstract syntax tree With all type annotations, which facilitates the writing of tools that would otherwise need a tailor -made analyzer. The next function will also be reinpirement These data after potential changes, which would allow things like mutation tests.
We have extended the online assembly language with Structured elements (for, switch and functions) and obsolete manual jumps. This new online assembly language will become a new intermediate language (as well as type information), which allows solidity to be more transparent in its compilation, more efficient (we can add much more sophisticated optimizer routines) and more portable (it can already compile at EVM, EVM1.5 and a little Ewasm). We are currently Rewrite the ABI coder In this intermediate language which will include nested structures and dynamic objects.
Finally, we add a Automated compilation auditor in compilation and assertion which will also include an SMT solver for more complicated cases. Oh and of course, we worked on tons of Smaller bugfixes and features.
Swarm
The Swarm team joined new members and organized a Swarm Summit in Person in Berlin in June 2017. The one -week event brought together members of the Ethereum team, community contributors and special guests representing projects and companies interested in Swarm. More than twenty conferences and tutoring sessions have been recorded. The published videos will soon be published on the Summit Swarm website. Our Public Alpha test has seen a large community response allowing us to collect more information on the potential needs of the user base and what could be the typical models of use. The high disabiation rate of nodes requires an explicit distinction between the nodes which can and cannot commit to being available for a longer period to provide sufficient storage and bandwidth resources for the network. To take charge of non -engaging nodes and mobile customers, SWARM will offer various light operating modes.
We have developed a series of examples of applications highlighting the architectural particularities and implementation of distributed web applications hosted by swarm which are completely away from the traditional customer server model. In particular, the constituent elements of a distributed functional equivalent of Dropbox are being developed, such as a web interface providing a volume file system views hosted by swarm, ENS integration, the integration of mist, mounting to swarm volume fuses and confidentiality protection.
We have added a new protocol, PSS (Bzz Whispered) allowing internal messaging with a deterministic routing based on the topology of the Kademlia of the swarm. The protocol uses Whisper envelopes and provides UDP -type protocol communication between nodes that are not directly connected.
In addition, we have developed a network of tests and network simulation in which we can model and compare a wide range of scenarios emerging from the interaction of a potentially large number of nodes. This framework includes both script and visualization capacities.
In cooperation with the Remix team, the implementation of a fully distributed integrated contract development environment is underway.
The next major version, POC 0.3 should go out around Metropolis and include an obscure support for denial plausibleA rewriting of the exchange among others, the accounting of the incitement of the bandwidth.