Skip to content
This repository was archived by the owner on May 13, 2022. It is now read-only.

Commit 97c7eda

Browse files
author
Silas Davis
authored
Merge pull request #1486 from hyperledger/call-errs
Get rid of excessively long and generally useless EVM trace from call
2 parents 27572db + 6676e6e commit 97c7eda

File tree

5 files changed

+21
-15
lines changed

5 files changed

+21
-15
lines changed

CHANGELOG.md

+7
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,10 @@
11
# [Hyperledger Burrow](https://github.com/hyperledger/burrow) Changelog
2+
## [0.32.1] - 2021-05-15
3+
### Changed
4+
- [Execution] CallErrors no longer emit very long rather pointless (since there is no tooling to help interpret them currently) EVM call traces
5+
- [JS] Return byte arrays as Buffers from decode (only return fixed-width byteNN types as hex strings)
6+
7+
28
## [0.32.0] - 2021-05-14
39
### Changed
410
- [JS] Significant refactor/rewrite of Burrow.js into idiomatic Typescript including some breaking changes to API
@@ -747,6 +753,7 @@ This release marks the start of Eris-DB as the full permissioned blockchain node
747753
- [Blockchain] Fix getBlocks to respect block height cap.
748754

749755

756+
[0.32.1]: https://github.com/hyperledger/burrow/compare/v0.32.0...v0.32.1
750757
[0.32.0]: https://github.com/hyperledger/burrow/compare/v0.31.3...v0.32.0
751758
[0.31.3]: https://github.com/hyperledger/burrow/compare/v0.31.2...v0.31.3
752759
[0.31.2]: https://github.com/hyperledger/burrow/compare/v0.31.1...v0.31.2

NOTES.md

+2-11
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,4 @@
11
### Changed
2-
- [JS] Significant refactor/rewrite of Burrow.js into idiomatic Typescript including some breaking changes to API
3-
- [JS] Change to use ethers.js for ABI encoding
4-
5-
### Fixed
6-
- [State] Fixed cache-concurrency bug (https://github.com/hyperledger/burrow/commit/314357e0789b0ec7033a2a419b816d2f1025cad0) and ensured consistency snapshot is used when performing simulated call reads
7-
- [Web3] Omit empty values from JSONRPC calls
8-
9-
### Added
10-
- [Tendermint] Added support for passing node options to Tendermint - e.g. custom reactors (thanks @nmanchovski!)
11-
- [JS] Historic events can now be requested via API
12-
- [JS] Contract deployments will now include ABIs via contract metadata so Burrow's ABI registry can be used
2+
- [Execution] CallErrors no longer emit very long rather pointless (since there is no tooling to help interpret them currently) EVM call traces
3+
- [JS] Return byte arrays as Buffers from decode (only return fixed-width byteNN types as hex strings)
134

execution/contexts/call_context.go

+1-2
Original file line numberDiff line numberDiff line change
@@ -229,8 +229,7 @@ func (ctx *CallContext) Deliver(inAcc, outAcc *acm.Account, value uint64) error
229229
ctx.Logger.InfoMsg("Error on EVM execution",
230230
structure.ErrorKey, err)
231231

232-
ctx.txe.PushError(errors.Wrapf(err, "call error: %v\nEVM call trace: %s",
233-
err, ctx.txe.CallTrace()))
232+
ctx.txe.PushError(err)
234233
} else {
235234
ctx.Logger.TraceMsg("Successful execution")
236235
if createContract {

js/src/convert.ts

+5-1
Original file line numberDiff line numberDiff line change
@@ -48,14 +48,18 @@ export function withoutArrayElements(result: Result): Record<string, unknown> {
4848
function abiToBurrow(arg: unknown, type: string): unknown {
4949
if (/address/.test(type)) {
5050
return recApply(unprefixedHexString, arg as NestedArray<string>);
51-
} else if (/bytes/.test(type)) {
51+
} else if (/bytes[0-9]+/.test(type)) {
52+
// Handle bytes32 differently - for legacy reasons they are used as identifiers and represented as hex strings
5253
return recApply(unprefixedHexString, arg as NestedArray<string>);
54+
} else if (/bytes/.test(type)) {
55+
return recApply(toBuffer, arg as NestedArray<string>);
5356
} else if (/int/.test(type)) {
5457
return recApply(numberToBurrow, arg as NestedArray<BigNumber>);
5558
}
5659
return arg;
5760
}
5861

62+
5963
function burrowToAbi(arg: unknown, type: string): unknown {
6064
if (/address/.test(type)) {
6165
return recApply(prefixedHexString, arg as NestedArray<string>);

project/history.go

+6-1
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,12 @@ func FullVersion() string {
4747
// To cut a new release add a release to the front of this slice then run the
4848
// release tagging script: ./scripts/tag_release.sh
4949
var History relic.ImmutableHistory = relic.NewHistory("Hyperledger Burrow", "https://github.com/hyperledger/burrow").
50-
MustDeclareReleases("0.32.0 - 2021-05-14",
50+
MustDeclareReleases("0.32.1 - 2021-05-15",
51+
`### Changed
52+
- [Execution] CallErrors no longer emit very long rather pointless (since there is no tooling to help interpret them currently) EVM call traces
53+
- [JS] Return byte arrays as Buffers from decode (only return fixed-width byteNN types as hex strings)
54+
`,
55+
"0.32.0 - 2021-05-14",
5156
`### Changed
5257
- [JS] Significant refactor/rewrite of Burrow.js into idiomatic Typescript including some breaking changes to API
5358
- [JS] Change to use ethers.js for ABI encoding

0 commit comments

Comments
 (0)