This is a service release with some significant ethereum/solidity compatibility improvements and new logging features. It includes:
-[Upgrade to use Tendermint v0.9.2](https://github.com/hyperledger/burrow/pull/595)
-[Implemented dynamic memory](https://github.com/hyperledger/burrow/pull/607) assumed by the EVM bytecode produce by solidity, fixing various issues.
- Logging sinks and configuration - providing a flexible mechanism for configuring log flows and outputs see [logging section in readme](https://github.com/hyperledger/burrow#logging). Various other logging enhancements.
- Fix event unsubscription
- Remove module-specific versioning
- Rename suicide to selfdestruct
- SNative tweaks
Known issues:
- SELFDESTRUCT opcode causes a panic when an account is removed. A [fix](https://github.com/hyperledger/burrow/pull/605) was produced but was [reverted](https://github.com/hyperledger/burrow/pull/636) pending investigation of a possible regression.
## v0.16.3
This release adds an stop-gap fix to the `Transact` method so that it never
@@ -67,6 +67,46 @@ Once the server has started, it will begin syncing up with the network. At that
A commented template config will be written as part of the `monax chains make`[process](https://monax.io/docs/getting-started) and can be edited prior to the `monax chains start`[process](https://monax.io/docs/getting-started).
### Logging
Logging is highly configurable through the `config.toml``[logging]` section. Each log line is a list of key-value pairs that flows from the root sink through possible child sinks. Each sink can have an output, a transform, and sinks that it outputs to. Below is a more involved example of than the one appearing in the default generated config of what you can configure:
```toml
# This is a top level config section within the main Burrow config
[logging]
# All log lines are sent to the root sink from all sources
[logging.root_sink]
# We define two child sinks that each receive all log lines
[[logging.root_sink.sinks]]
# We send all output to stderr
[logging.root_sink.sinks.output]
output_type="stderr"
[[logging.root_sink.sinks]]
# But for the second sink we define a transform that filters log lines from Tendermint's p2p module
[logging.root_sink.sinks.transform]
transform_type="filter"
filter_mode="exclude_when_all_match"
[[logging.root_sink.sinks.transform.predicates]]
key_regex="module"
value_regex="p2p"
[[logging.root_sink.sinks.transform.predicates]]
key_regex="captured_logging_source"
value_regex="tendermint_log15"
# The child sinks of this filter transform sink are syslog and file and will omit log lines originating from p2p
[[logging.root_sink.sinks.sinks]]
[logging.root_sink.sinks.sinks.output]
output_type="syslog"
url=""
tag="Burrow-network"
[[logging.root_sink.sinks.sinks]]
[logging.root_sink.sinks.sinks.output]
output_type="file"
path="/var/log/burrow-network.log"
```
## Contribute
We welcome all contributions and have submitted the code base to the Hyperledger project governance during incubation phase. As an integral part of this effort we want to invite new contributors, not just to maintain but also to steer the future direction of the code in an active and open process.