I’m pleased to announce that version
0.9 of the Eris Blockchain Application Platform has been released.
Now With Moar Blockchains
The highlight of this release (at least for me) is the inclusion of Tendermint into the (growing) list of blockchains which the Eris Platform makes easy for developers to work with.
If you are not familiar with Tendermint definitely give it a look; it is one of the most sophisticated (yet understandable) Proof of Stake consensus algorithms currently available. While it (like many other blockchain technologies) is still in late alpha // early beta stage, it is fully usable from the Eris platform with only a few commands.
epm keys gen --type ed25519 mykey epm new --type mint --checkout epm keys use mykey epm --log 5 run
More (and updated) information regarding running Tendermint chains from eris is available here.
Now With Moar Stability
Most of the effort during the 0.9 release cycle has been in adding resiliency to
epm our (current) command line tool for managing blockchains and smart contract systems.
We have drastically increased our test coverage as well as adding a significant amount of integration testing for the entire stack. This work has been combined with many bug fixes along the way as the technology upstream from the Eris Platform, and Eris itself, continues to mature.
Now With Moar Smart Contract Joy
We have increased the power of the EPM lexer and parser. Now nested includes are available as well as Solidity support (via EPM and the eris:compilers microservice). EPM now can deploy smart contract packages directly from github.com without having to have the contracts directory cloned locally. These additions greatly ease and speed smart contract development workflow.
Upgrading – Docker Installs
docker pull eris/erisdb docker pull eris/decerver docker pull eris/ipfs
It is that easy.
Upgrading – Native Installs
cp ~/.decerver ~/.eris cd $GOPATH/src/github.com/eris-ltd/decerver/cmd/decerver go get -u cd ../../../epm-go git pull origin master make
It is that easy. After you have fully tested Eris then:
rm -rf ~/.decerver
Note for native installations, we are moving our default (working) directory from
~/.eris so ensure you either move or symlink that directory before upgrading.
Beginning the 0.10 Release Sequence
We are currently planning for 0.10 to be our final major release prior to 1.0. What will change in 0.10?
The primary change will be the separation of the blockchain executables from the epm tool along with a namechange of
epm to the
eris tool (which will not be so much of a functionality change, more a name change). Currently the blockchain executables are compiled into epm with the make tool. Underneath the hood
epm figures out which blockchain is checked out and calls the executable. This is a fairly fragile system which we are currently working to add more resiliency to. Part of the challenge is how Go statically links libraries during compilation.
During the 0.10 cycle we will be moving
eris:db over to utilizing Tendermint primitives along with our Doug permission layer. This will be a very powerful and exciting change for commercial and governance blockchain applications who do not want to rely on the excessive energy waste of Proof of Work systems. As part of this change, we are adding a
secure-native smart contract functionality which will be very powerful and increase the speed at which certain actions may be taken with respect to smart contracts.
We will be adding the
eris:worker to the Eris stack which will be a pure node.js based worker that will be an events manager for information and data which need to flow into a blockchain or bubble up from the blockchain for action out of band.
Lastly, we will be reworking
As they say: #watchthisspace
Photo credit: Steve Jurvetson @ Flicker.