lotus/chain/actors/builtin/evm
Phi-rjan f60d4e1208 chore:: backport #11609 to the feat/nv22 branch (#11644)
* feat: api: improve the correctness of Eth's trace_block (#11609)

* Improve the correctness of Eth's trace_block

- Improve encoding/decoding of parameters and return values:
  - Encode "native" parameters and return values with Solidity ABI.
  - Correctly decode parameters to "create" calls.
  - Use the correct (ish) output for "create" calls.
  - Handle all forms of "create".
- Make robust with respect to reverts:
  - Use the actor ID/address from the trace instead of looking it up in
    the state-tree (may not exist in the state-tree due to a revert).
  - Gracefully handle failed actor/contract creation.
- Improve performance:
  - We avoid looking anything up in the state-tree when translating the
    trace, which should significantly improve performance.
- Improve code readability:
  - Remove all "backtracking" logic.
  - Use an "environment" struct to store temporary state instead of
    attaching it to the trace.
- Fix random bugs:
  - Fix an allocation bug in the "address" logic (need to set the
    capacity before modifying the slice).
  - Improved error checking/handling.
- Use correct types for `trace_block` action/results (create, call, etc.).
  - And use the correct types for Result/Action structs instead of reusing the same "Call" action every time.
- Improve error messages.

* Make gen

Make gen

---------

Co-authored-by: Steven Allen <steven@stebalien.com>
2024-03-22 07:00:28 +01:00
..
actor.go.template chore:: backport #11609 to the feat/nv22 branch (#11644) 2024-03-22 07:00:28 +01:00
evm.go chore:: backport #11609 to the feat/nv22 branch (#11644) 2024-03-22 07:00:28 +01:00
state.go.template fix: eth: return the correct nonce from EthGetTransactionCount 2023-02-17 10:51:42 -08:00
v10.go fix: eth: return the correct nonce from EthGetTransactionCount 2023-02-17 10:51:42 -08:00
v11.go feat: Introduce nv19 skeleton 2023-03-29 16:13:41 -04:00
v12.go feat: introduce local nv21 skeleton 2023-08-16 20:01:48 +02:00
v13.go [WIP] feat: Add nv22 skeleton 2024-03-22 07:00:28 +01:00