Releases: erigontech/silkworm
Releases · erigontech/silkworm
C API v0.22.0
What's Changed
- rpcdaemon: fix gas cost in case of early failures by @lupin012 in #2378
- rpcdaemon: generate transaction receipts on-the-fly by @lupin012 in #2375
- capi: fork validator fixes by @JacekGlen in #2373
- rpcdaemon: undefined opcode gas cost by @Sixtysixter in #2397
Full Changelog: capi-0.21.1...capi-0.22.0
C API v0.21.1
What's Changed
- Adding accountRange spec by @bzawisto in #2224
- rpcdaemon: make TraceEx optional to match Erigon output in OUT_OF_GAS case by @lupin012 in #2232
- rpcdaemon: debug account range - updated spec by @bzawisto in #2239
- rpcdaemon: fixes on debug_accountRange by @lupin012 in #2247
- rpcdaemon: fix on determine staticcall type by @lupin012 in #2256
- rpcdaemon: fix STATICCALL type on ots_traceTransaction and recipient for CALLCODE by @lupin012 in #2257
- rpcdaemon: add STOP opcode as last opcode in specific success cases by @lupin012 in #2262
- third-party: update erigon-snapshot to da5d0f5 by @bzawisto in #2265
- rpcdaemon: fix on format to have one error for each block not found by @lupin012 in #2264
- rpcdaemon: fix trace state diff with CREATE and SELFDESTRUCT by @lupin012 in #2278
- rpcdaemon: fix gas_cost and memory of last STOP opcode in debug API by @Sixtysixter in #2281
- rpcdaemon: some fixes after porting erigon 2.60 by @lupin012 in #2287
- rpcdaemon: add blob gas fields on tx by @lupin012 in https://github.com/erigontech/silkworm/pull/2295310
- doc: erigon++ platforms by @battlmonstr in #2309
- sentry: handle errors when accessing socket endpoints by @canepat in #2306
- rpcdaemon: remove base fee from to_transaction by @lupin012 in #2305
- rpcdaemon: new gas bailout handling by @lupin012 in #2322
- rpcdaemon: add eth_estimateGas extra field for gas limit by @lupin012 in #2323
- rpcdaemon: gas cost from EVMONE for debug family API by @Sixtysixter in #2325
- rpcdaemon: fix memory size 0, special case on SELF_DESTRUCT by @lupin012 in #2326
- rpcdaemon: fix in case of receipts size mismatch by @lupin012 in #2338
- rpcdaemon: fix response in case no tx present by @lupin012 in #2339
- rpcdaemon: DebugTracer code refactoring and cleanup by @Sixtysixter in #2341
- Use the same block executor for both CAPI and StagedSync by @bzawisto in #2307
- node: fix revision check for tx type in stage Senders by @canepat in #2351
- rpcdaemon: trap einval exception to manage block not found by @lupin012 in #2352
- rpcdaemon: fix block and block_from_tx_hash providers in RemoteStorage by @lupin012 in #2356
- rpcdaemon: add catch invalid argument in debug_accountStorageAt, trace_filter, eth_estimateGas by @lupin012 in #2357
- node: fix Execution stage unwind after invalid block by @canepat in #2360
- core, rpcdaemon: move gas+funds bailout mechanism into evm by @bzawisto in #2354
- rpcdaemon: gas cost in trace_replay* API by @Sixtysixter in #2353
- capi: Fix batch size control by @JacekGlen in #2308
Full Changelog: capi-0.21.0...capi-0.21.1
C API v0.21.0
What's Changed
- rpcdaemon: if gas bailout subtract only if there is enough balance by @lupin012 in #2178
- rpcdaemon: fix cost, used-gas in case of EVMC errors by @lupin012 in #2181
- rpcdaemon: fix debug/trace API family gas cost step 2 by @Sixtysixter in #2172
- rpcdaemon: fix trace gasCost for opcode EXP in case of stack fault by @lupin012 in #2190
- db: reduce copies in KV gRPC remote cursor by @canepat in #2197
- rpcdaemon: fix trace_* API family gas cost by @Sixtysixter in #2187
- capi: fork validator by @JacekGlen in #2201
- rpcdaemon: use optional instead of unique_ptr by @bzawisto in #2203
- rpcdaemon: fix memory gas cost in call by @Sixtysixter in #2211
- rpcdaemon: fixing fuzzer tests by @bzawisto in #2214
- third_party: update evmone to v0.12.0 by @yperbasis in #2217
- rpcdaemon: fix data storage access in local state by @lupin012 in #2221
New Contributors
Full Changelog: capi-0.20.1...capi-0.21.0
C API v0.20.1
What's Changed
- rpcdaeomon: static call in gas cost for debug API endpoints by @Sixtysixter in #2167
Full Changelog: capi-0.20.0...capi-0.20.1
C API v0.20.0
What's Changed
- rpcdaemon: tx ID in client-side local/remote transaction by @canepat in #2068
- snapshots: refactor SnapshotRepository by @battlmonstr in #2056
- snapshots: move DAL code and tests by @battlmonstr in #2065
- snapshots: fix build on Apple clang 14 by @canepat in #2077
- rpcdaemon: refactor chain and state access layer by @canepat in #2084
- rpcdaemon: fix ots_getContractCreator by @lupin012 in #2082
- rpcdaemon: walk/for_prefix as functions by @canepat in #2087
- rpcdaemon: fix eth_getStorageAt location as hex string index by @lupin012 in #2085
- node: support splitted BackEnd and KV servers by @canepat in #2088
- node: move KV API client/server to db by @canepat in #2089
- node, db: adjust BackEnd and KV API namespaces by @canepat in #2090
- rpcdaemon: update ignore list and add subtest ignore list in I/O tests by @lupin012 in #2093
- rpcdaemon: restore effective gas price computation in EVMExecutor::call by @lupin012 in #2094
- rpcdaemon: use block base fee as max fee if max fee not specified by @lupin012 in #2092
- rpcdaemon: extract BackEnd out from Transaction hierarchy by @canepat in #2098
- rpcdaemon: extract receipts out from chain by @canepat in #2100
- rpcdaemon: introduce WorkerPool alias by @canepat in #2101
- rpcdaemon: move read_chain_config to chain storage by @canepat in #2104
- execution: fix OOM crash due to db::Buffer::accounts realloc (#2064) by @battlmonstr in #2081
- rpcdaemon: post EIP1559 balance check done on max_fee_per_gas and max_blob_per_gas by @lupin012 in #2063
- rpcademon: remove erigon_cumulativeChainTraffic by @lupin012 in #2109
- build: upgrade grpc to 1.54.3 by @yperbasis in #1619
- node: main chain db txn management by @JacekGlen in #2112
- rpcdaemon: SuicideAction implementation in trace API by @Sixtysixter in #2111
- rpcdaemon: remove erigon_watchTheBurn by @lupin012 in #2110
- rpcdaemon: update JSON-RPC spec to fork 0502b44 by @canepat in #2113
- rpcdaemon: rename json_rpc::JsonRpcValidator by @canepat in #2114
- rpcdaemon: refactoring to use db::storage_prefix utility by @canepat in #2116
- rpcdaemon: refactoring to separate SplitCursor from Cursor by @canepat in #2125
- rpcdaemon: refactoring ContextTestBase as infra test utility by @canepat in #2127
- rpcdaemon: refactoring state access by @canepat in #2129
- rpcdaemon: fix eth_feeHistory by @lupin012 in #2115
- rpcdaemon: remove optional in read chain config by @canepat in #2130
- rpcademon: fix is_replay_protected and parse raw transaction by @lupin012 in #2135
- rpcdaemon: move transaction/cursor hierarchy to db by @canepat in #2136
- db: use ByteView in KV StateCache by @canepat in #2141
- rpcdaemon: enum values for protocol error codes by @canepat in #2146
- rpcdaemon: avoid copy of receipts and tx by @lupin012 in #2147
- capi: depend on silkworm_db rather than silkworm_node by @yperbasis in #2152
- rpcdaemon: fix debug/trace API family gas cost by @Sixtysixter in #2153
- rpcdaemon: fix debug_storageRangeAt by @lupin012 in #2155
- doc: update JSON RPC API partial comment by @lupin012 in #2161
- rpcdaemon: support compression on HTTP streaming by @lupin012 in #1932
- core: introduce overflow-safe num_words by @yperbasis in #2164
Full Changelog: capi-0.19.0...capi-0.20.0
C API v0.19.0
What's Changed
- rpcdaemon: fix eth_estimateGas error handling by @lupin012 in #1969
- rpcdaemon: improve JWT handling in HTTP connection by @canepat in #1982
- rpcdaemon: add safe and finalized blocks in BlockNumberOrHash by @lupin012 in #1984
- rpcdaemon: fix block header serialization for erigon_getHeaderByHash by @lupin012 in #1985
- rpcdaemon: fix warning in StateChanges stream unit test by @canepat in #1988
- rpcdaemon: compatibility flag in trace_get API by @Sixtysixter in #1983
- rpcdaemon: erigon_getLatestLogs fix retrieving latest block by @lupin012 in #1996
- rpcdaemon: fix JSON for empty logs in erigon_getLogsByHash by @lupin012 in #1997
- rpcdaemon: fix crash in trace_replay* API by @Sixtysixter in #1995
- rpcdaemon: add blob check on evm executor by @lupin012 in #1990
- rpcdaemon: fix retry logic in eth_estimateGas by @lupin012 in #1991
- rpcdaemon: fix check for excess blob gas in EVM executor by @lupin012 in #1998
- rpcdaemon: add missing fields in ots_getBlockTransactions by @lupin012 in #1999
- db: missing length errors in access layer by @canepat in #2001
- rpcdaemon: eth_createAccessList shouldn't modify input Call by @lupin012 in #2005
- rpcdameon: fix erigon_getLatestLogs with logCount by @lupin012 in #2007
- rpcdaemon: add optional blob fields in ots_getBlockDetails by @lupin012 in #2009
- rpcdaemon: fix on withdrawals in ots_getBlockDetailsByHash by @lupin012 in #2011
- docs: add Erigon++ section in README by @canepat in #2014
- rpcdaemon: undefined instruction error message in TraceTracer by @Sixtysixter in #2010
- rpcdaemon: fix block issuance and upgrade rpc-tests by @lupin012 in #2012
- rpcdaemon: fix undefined instruction error in trace_call by @canepat in #2020
- rpcdaemon: fix eth_call without sender by @lupin012 in #2019
- rpcdaemon: fix on create failure trace by @Sixtysixter in #2021
- rpcdaemon: out of gas error message by @Sixtysixter in #2006
- core, rpcdaemon: gas bailout in EVM by @Sixtysixter in #2031
- sentry: add exception handling for main tasks by @canepat in #2032
- rpcdaemon: fix ots_searchTransactionsBefore + ots_searchTransactionsAfter by @lupin012 in #2022
- rpcdaemon: fix in ots_getTransactionError by @lupin012 in #2034
- rpcdaemon: Fix ots get internal operation by @lupin012 in #2038
- snapshots: optimize BodyTxsAmountQuery using skip by @battlmonstr in #2045
- rpcdaemon: fix ots_traceTransaction by @lupin012 in #2043
- rpcdaemon: fix result as error in some ots API by @lupin012 in #2053
- sentry: improve reconnect_channel logging by @battlmonstr in #2054
Full Changelog: capi-0.18.0...capi-0.19.0
Fixes
C API v0.18.0
What's Changed
- capi: fix Windows build after PR 1968 by @canepat in #1975
- rpcdaemon: improve close of state-changes stream after server-side termination by @canepat in #1973
- rpcdaemon: improve error handling in HTTP server by @canepat in #1976
- rpcdaemon: enable fuzzer tests on GitHub Actions by @JacekGlen in #1974
- capi: fix C99 compilation by @canepat in #1978
- capi: fix sanitizer build after PR 1978 by @canepat in #1981
Full Changelog: capi-0.17.0...capi-0.18.0
C API v0.17.0
What's Changed
- perf-workflow: generate and save json result file by @lupin012 in #1951
- integration-workflow: use rpc-tests v0.8.2 by @lupin012 in #1954
- rpcdaemon: extract awaitable async task run by executor by @canepat in #1953
- capi: fix sample Golang client by @canepat in #1956
- rpcdaemon: add config flag to toggle response dump in interface log by @canepat in #1959
- rpcdaemon: extract JSON-RPC handler out of transport by @canepat in #1962
- rpcdaemon: fix Clang Tidy after PR 1962 by @canepat in #1963
- core, rpcdaemon: add check on NoPreMergeConfig and terminal total difficulty by @lupin012 in #1949
- rpcdaemon: fix Clang in sanitizer build after PR 1949 by @canepat in #1966
- rcpdaemon: error messages in TraceTracer by @Sixtysixter in #1960
- rpcdaemon: author value in trace_block reward action by @Sixtysixter in #1961
- rpcdaemon: fix state access in eth_estimateGas by @lupin012 in #1967
- rpcdaemon: yParity field not conditioned to Erigon compatibility flag by @lupin012 in #1965
- perf-workflow: remove copy of reference binary data by @lupin012 in #1971
- third_party: remove unused picohttpparser by @canepat in #1972
- capi: export RpcDaemon configuration settings by @canepat in #1968
Full Changelog: capi-0.16.0...capi-0.17.0
C API v0.16.0
What's Changed
- cmd: improve JSON embedding by @canepat in #1920
- tests: use controllable Erigon datadir by @mriccobene in #1925
- cmake: no_warn_duplicate_libraries by @battlmonstr in #1926
- sync: remove old flag to force PoW consensus by @canepat in #1927
- mdbx-go: no_warn_duplicate_libraries by @battlmonstr in #1928
- ci: macOS job - use Xcode 15 by @battlmonstr in #1929
- perf_test_workflow: enable http compression on rpcdaemon startup by @lupin012 in #1930
- rpcdaemon: change http compression default value by @lupin012 in #1933
- rpcdaemon: fix Engine API V3 in JSON-RPC spec by @canepat in #1924
- rpcdaemon: increase max HTTP request body limit by @canepat in #1934
- snapshots: index builder refactorings by @battlmonstr in #1922
- snapshots: fix Windows build after PR 1922 by @canepat in #1937
- perf-workflow: long name options for run_perf_test by @lupin012 in #1935
- qa-tests: always save the result by @mriccobene in #1938
- core: merge BaseRuleSet with IRuleSet by @yperbasis in #1941
- rpc, sync: support Engine API V3 by @canepat in #1931
- tests: add Erigon RpcDaemon in perf workflow by @canepat in #1942
- infra: setup signal handling with SA_ONSTACK flag by @canepat in #1943
- db: match batch_state_size calculation with Erigon by @JacekGlen in #1944
- rpcdaemon: compression on separate thread by @lupin012 in #1936
- rpcdaemon: fix debug_storageRangeAt response for non-existent block hash by @Sixtysixter in #1948
- perf_workflow: add eth_createAccessList pattern test by @lupin012 in #1946
- perf-workflow: fix eth_createAccessList pattern name by @lupin012 in #1950
Full Changelog: capi-0.15.0...capi-0.16.0
C API v0.15.0
Key Change
- capi: split
silkworm_execute_blocks()
into functions with ext and int txns by @JacekGlen in #1917
What's Changed - Full list
- db: decouple db module by @battlmonstr in #1885
- rpcdaemon: fix in http response failed by @lupin012 in #1888
- stagedsync: do not share global node_settings with stages by @battlmonstr in #1889
- stagedsync: fix Clang Tidy warnings after PR 1889 by @canepat in #1891
- stagedsync: add CallTraceIndex stage by @canepat in #1892
- rpcdaemon: print address on error in execution pre-checks by @lupin012 in #1886
- rpcdaemon: fix interface log settings for Engine RPC end-point by @canepat in #1898
- rpcdaemon: fix Windows build after PR 1898 by @canepat in #1899
- rpcdaemon: fix position of logs folder by @canepat in #1900
- cmake: use absolute path when applying exclude regex by @lupin012 in #1902
- node: refactorings related to NodeSettings and stages by @battlmonstr in #1890
- stagedsync: unit test for CallTraceIndex stage by @canepat in #1895
- node: fix Clang Tidy after PR 1890 by @canepat in #1903
- sentry: fix unhandled exception in peer handshake close by @canepat in #1897
- sentry: cleanup handshake_promise shutdown handling by @battlmonstr in #1904
- db: move db to the root level by @battlmonstr in #1894
- rpcdaemon: fix account state in debug_accountAt by @Sixtysixter in #1893
- evmone: disabled warnings about C++ attributes by @chfast in #1908
- cmake: detect sublibraries by @battlmonstr in #1905
- capi: fix SAN builds by @battlmonstr in #1910
- db/mdbx submodule by @battlmonstr in #1906
- rpcdaemon: add HTTP gzip compression (no streaming) by @lupin012 in #1909
- rpcdaemon: fix Clang Tidy after PR 1909 by @canepat in #1913
- rpcdaemon: add http_compression flag by @lupin012 in #1912
- cmd: better command options in snapshots tool by @canepat in #1915
- snapshots: less false-positives feature in recsplit by @canepat in #1916
- snapshots: fix unit tests on Windows after PR 1916 by @canepat in #1918
- db: replace HeadInfo with ChainHead by @battlmonstr in #1907
- snapshots: refactorings by @battlmonstr in #1911
- infra, db: fix Clang Tidy and Win build after PR 1911 by @canepat in #1919
- rpcdaemon: negotiation and validation of HTTP compression scheme by @lupin012 in #1914
- rpcdaemon: simplify HTTP gzip compression handling by @canepat in #1923
- tests: pause/resume Erigon, save test results by @mriccobene in #1921
- capi: split
silkworm_execute_blocks()
into functions with ext and int txns by @JacekGlen in #1917
Full Changelog: capi-0.14.0...capi-0.15.0