Note-worthy release: Burrow 0.20.1 - 'All The Things'
tl;dr we've just released a new Burrow, and it's a good one, grab it here: https://github.com/hyperledger/burrow/releases/tag/v0.20.1
Over the past year Burrow has been refactoring itself into a fast (well for an EVM) and light Tendermint-based blockchain. We had a certain amount of technical debt to eliminate and we had a lot of tooling to consolidate.
Version 0.20.1: https://github.com/hyperledger/burrow/releases/tag/v0.20.1 is something of a milestone to that end. For changes leading up please see full changelog: https://github.com/hyperledger/burrow/blob/develop/CHANGELOG.md
This release and those releases leading up to it make some significant improvements to the Burrow project, its tool, and the node itself. Most notable are:
- Rewired with protobuf types and GRPC interfaces across the board (see: https://github.com/hyperledger/burrow/tree/develop/protobuf) for robust integration points and RPC layers replacing previous multiple RPCs
- Tendermint 0.22.8 - including a vast number of improvements
- Powerful ETL / execution event service: https://github.com/hyperledger/burrow/blob/develop/protobuf/rpcevents.proto#L23-L35 to drive downstream services from smart contract events
- Integrated key signing daemon that can act as a key-holding delegate for other services: https://github.com/hyperledger/burrow/blob/develop/protobuf/keys.proto#L15-L27
- Burrow helm charts for Kubernetes: https://github.com/helm/charts/tree/master/incubator/burrow and the means to generate cluster config with your own template via burrow configure
- Bos our deployment tool is now part of burrow as 'burrow deploy': https://github.com/hyperledger/burrow#deploy-contracts this includes an Apache2 licensed ABI that we wrote from scratch that allows us to sever our GPL go-ethereum dependency and put contract deployment all under one roof
- Governance framework transactions GovTx allows mutation of validator set (power), native token, permissions and more: https://github.com/hyperledger/burrow/blob/develop/protobuf/payload.proto#L119-L125 this is just the basis for more on-chain governance policies including committee votes and DPOS style decision making
- Burrow.js has been refactored to use our new GRPC interfaces and the contract experience much improved (and better documented): https://github.com/monax/bosmarmot/tree/develop/burrow.js
- Address-based signing via burrow deploy and transaction server (server-side or client-side signing)
We think this is a good base to build on our focus for future releases is:
- Chain stability (we're eating our own dogfood: https://agreements.network/) and operability (i.e. better cluster debugging, diagnosis)
- EVM / Tendermint / Smart contract bridge - i.e. EVM code that can call non-EVM code, tx escrow to/from public Ethereum, and participation in the wider Cosmos ecosystem
- On-chain governance primitives - smart contract upgrades by popular vote, validator set control of permissions and token distribution.
Feedback, contributions, and possible maintainers very welcome: https://chat.hyperledger.org/channel/burrow