Releases: ava-labs/subnet-evm
v0.6.2
The AvalancheGo dependency is updated to v1.11.2 in this release, making it compatible with RPCChainVM Protocol Version 34 (changed from previous release).
Updates
- Update AvalancheGo to v1.11.2
- Remove Legacy Gossipper
- Tune default gossip parameters
- Switch from ANR to tmpnet fixtures
- Remove unused journaling configs (
tx-pool-journal
, (tx-pool-rejournal
) - Add new tx pool lifetime config (
tx-pool-lifetime
)
Fixes
- Remove allowlist events from generated precompiles
What's Changed
- Update codeowners by @aaronbuchwald in #1103
e2e
: Switch to the tmpnet fixture by @marun in #1027- add event to readme by @ceyonur in #1110
- remove allowlist events by @ceyonur in #1107
- Coreth sync v0.13.1 rc.5 by @ceyonur in #1111
Full Changelog: v0.6.1...v0.6.2
v0.6.1
The AvalancheGo dependency is updated to v1.11.1 in this release, making it compatible with RPCChainVM Protocol Version 33 (unchanged from previous release).
This version mainly fixes the issue with transaction re-push gossip in the p2p SDK (through AvalancheGo update).
Updates
- Update AvalancheGo to v1.11.1
- Add the compatibility error to genesis config verification check error logs.
What's Changed
Full Changelog: v0.6.0...v0.6.1
v0.6.0
The AvalancheGo dependency is updated to v1.11.0 in this release, making it compatible with RPCChainVM Protocol Version 33 (changed from previous release).
The Subnet-EVM activates the following upgrades at the same time as the Durango Upgrade:
AWM in Subnet-EVM (ACP-30)
Events in Precompiles (PRs #961, #963, #967, #968)
Manager Role (PR #801)
Non-strict mode unpack (PR #1023)
Shanghai Upgrade (ACP-24)
Note: Warp Precompile must be explicitly activated through upgrade configs for AWM support in Subnet-EVM. See here for more information.
The changes in the upgrade go into effect at 11 AM ET (4 PM UTC) on Wednesday, March 6th, 2024 on Mainnet.
All Mainnet Subnet-EVM nodes must upgrade before 11 AM ET, March 6th 2024.
What's Changed
- bind_test: remove auth.GasFeeCap by @darioush in #1063
- eth/tracers/native: migrate fix for memory read in prestate tracer by @darioush in #1066
- Remove block builder test by @darioush in #1065
- avago bump: Bloom filter metrics + Durango time by @darioush in #1064
- bump npm versions by @ceyonur in #1070
- Add error handling to Warp by @minghinmatthewlam in #1068
- Align with coreth by @darioush in #1067
ci
: Add shellcheck step to lint job by @marun in #1061ci
: Upgrade all workflow actions to versions using Node 20 by @marun in #1072- Update README.md by @Andyvargtz in #1074
- Sync coreth 0.12.11 rc.3 by @ceyonur in #1075
- fix cancun banner release by @ceyonur in #1076
- Add line of stars to comment header by @darioush in #1084
- add comments for useStrictMode to exported ABI functions by @ceyonur in #1071
- Add Warp Audits by @JacobEverly in #1078
- take slice of cmd/utils from upstream by @darioush in #1082
- run release workflow for all tags by @ceyonur in #1081
- eth/filters: move check for unfinalized queries by @darioush in #1085
- Update minimum golang version to v1.21.7 by @dhrubabasu in #1088
- improve metrics by @ceyonur in #1093
- prepare v0.6.0 release by @darioush in #1101
New Contributors
- @marun made their first contribution in #1061
- @Andyvargtz made their first contribution in #1074
- @JacobEverly made their first contribution in #1078
Full Changelog: v0.5.11...v0.6.0
v0.6.0-fuji
Please note that this release is unable to run mainnet - and will display "mainnet is not supported" if attempted to run with a mainnet configuration.
The AvalancheGo dependency is updated to v1.11.0-fuji in this release, making it compatible with RPCChainVM Protocol Version 32 (changed from previous release).
The Subnet-EVM activates the following upgrades at the same time as the Durango Upgrade:
- AWM in Subnet-EVM (ACP-30)
- Events in Precompiles (PRs #961, #963, #967, #968)
- Manager Role (PR #801)
- Non-strict mode unpack (PR #1023)
- Shanghai Upgrade (ACP-24)
Note: Warp Precompile must be explicitly activated through upgrade configs for AWM support in Subnet-EVM. See here for more information.
The changes in the upgrade go into effect at 11 AM ET (4 PM UTC) on Tuesday, February 13th, 2024 on the Fuji testnet.
All Fuji Subnet-EVM nodes must upgrade before 11 AM ET, February 13th 2024.
What's Changed
- bind_test: remove auth.GasFeeCap by @darioush in #1063
- eth/tracers/native: migrate fix for memory read in prestate tracer by @darioush in #1066
- Remove block builder test by @darioush in #1065
- avago bump: Bloom filter metrics + Durango time by @darioush in #1064
- bump npm versions by @ceyonur in #1070
- Add error handling to Warp by @minghinmatthewlam in #1068
- Align with coreth by @darioush in #1067
ci
: Add shellcheck step to lint job by @marun in #1061ci
: Upgrade all workflow actions to versions using Node 20 by @marun in #1072- Update README.md by @Andyvargtz in #1074
New Contributors
- @marun made their first contribution in #1061
- @Andyvargtz made their first contribution in #1074
Full Changelog: v0.5.11...v0.6.0-fuji
v0.5.11
This release includes Durango related changes (events, ABI updated) and optimized gossip mechanism.
The AvalancheGo dependency is updated to v1.10.18 in this release, making it compatible with RPCChainVM Protocol Version 31 (changed from previous release).
Updates
- Introduced ABI package as a standard input/output encoding/decoding mechanism in existing precompiles. It will be activated with Durango
- Added events (logs) to precompile generation tool and existing precompiles and allowlist functions. Existing precompiles will start emitting events after Durango activation
- Added new p2p sdk gossip mechanisms
- Added
warp-off-chain-messages
config option for off chain warp message support to warp backend - Added support for returning unsigned Warp messages via
GetMessage(messageID)
to the Warp API - Cleaned up non-modified EVM packages in favor of using them as a dependency from upstream
- Updated AvalancheGo from v1.10.17 -> 1.10.18
- Updated minimum Golang version 1.20.10 -> 1.20.12
Fixes
- Fixed enforced strict mode in
Unpack
decoders, making it compatible with other tooling for extra padded bytes. It will be activated with Durango - Ported the fix for negative bigint topic packing from upstream
- Fixed passing config params in tracers
What's Changed
- Replace old packers by @ceyonur in #857
- Refactor allowlist by @ceyonur in #1011
- Fix abi get inputs by @ceyonur in #1023
- Fix typos by @omahs in #1025
- add event packing/unpacking to contract template by @ceyonur in #949
- x/warp: update warp log gas cost to reflect number of topics by @aaronbuchwald in #1026
- Precompile events - Fee Config by @abi87 in #967
- Precompile events allow list by @abi87 in #968
- Precompile events - Reward Manager by @abi87 in #961
- Precompile events - Native Minter by @abi87 in #963
- Add
TestSnowContext
util by @dhrubabasu in #1030 - Add support for warp off chain messages by @aaronbuchwald in #1028
- Update Predicater interface comment by @aaronbuchwald in #1039
- bump min go version by @ceyonur in #1032
- rename DUpgrade to Durango by @ceyonur in #1029
- move warp to precompiles package by @ceyonur in #1034
- Split load test by @ceyonur in #1041
- fix negative bigint topics by @ceyonur in #1045
- Add ChainConfig to ethclient by @cam-schultz in #1040
- pass configs to StateAtBlock by @ceyonur in #1046
- P2p sdk handlers by @ceyonur in #1031
- Remove big2 library by @darioush in #1056
- Fix large block requests in state sync by @darioush in #1057
- Expose GetMessage in Warp API by @cam-schultz in #1062
- Remove ethdb by @darioush in #1051
- Remove state_prefetcher.go by @darioush in #1058
- Update acceptor tip before sending chain events to subscribers (#392) by @darioush in #1060
- refactor: move AllowUnfinalizedQueries out of vm.Config by @darioush in #1052
- move trie generation helper out of trie/ by @darioush in #1053
Full Changelog: v0.5.10...v0.5.11
v0.5.10
This release includes Warp related cleanups and fixes for Tracer API.
The AvalancheGo dependency is updated to v1.10.17 in this release, making it compatible with RPCChainVM Protocol Version 30 (unchanged from previous release).
Updates
- Added subnetID argument to warp APIs
- Changed
VerifyPredicate
interface function signature to take a single predicate input and return an error as output (was a boolean) - Bumped AvalancheGo dependency to v1.10.17
Fixed
- Continued fixing Tracer APIs like TraceCall, TraceTransaction
- Fixed invalid network upgrade timestamps in startup log
What's Changed
- warp/handlers: update duration greater than assertion to pass on windows by @aaronbuchwald in #991
- remove unnecessary locks by @ceyonur in #998
- remove specific folders by @ceyonur in #990
- remove unnecessary avalanchego version from script by @ceyonur in #989
- add WaitForResult by @ceyonur in #1002
- Cleanup warp related code by @aaronbuchwald in #995
- Add subnetID arg to warp APIs by @aaronbuchwald in #1008
- downgrade p2p network logs from debug to trace by @aaronbuchwald in #1007
- cmd/simulator: refactor simulator to support warp load test by @aaronbuchwald in #1009
- Trie stress test by @nytzuga in #981
- Apply upgrades after state at block by @ceyonur in #999
- refactor warp e2e tests into ginkgo table entries + add warp load test by @aaronbuchwald in #1010
- remove unnecessary assignment by @ceyonur in #1015
- fix pointers in err string by @ceyonur in #1016
- verify single predicate by @ceyonur in #960
- prepare release v0.5.10 by @ceyonur in #1019
Full Changelog: v0.5.9...v0.5.10
v0.5.9
This release includes upstream code (Coreth) updates and various fixes to APIs.
The AvalancheGo dependency is updated to v1.10.15 in this release, making it compatible with RPCChainVM Protocol Version 30.
Updates
- Migrated upstream changes (Coreth 0.12.4-rc.0 -> 0.12.7)
- Added block details to accepted warp message logs
- Bumped AvalancheGo dependency to v1.10.15
Fixes
- Fixed precompile activations in tracer APIs
- Fixed Admin API duplicate service registration
What's Changed
- use cgo in mockgen by @ceyonur in #974
- remove extra service registration by @ceyonur in #978
- Fix tracer precompile upgrade by @ceyonur in #979
- warp: add details to accepted message log by @darioush in #984
- bump avalanchego to v1.10.15 by @darioush in #988
- coreth sync: 0.12.4-rc.0 -> 0.12.7 by @darioush in #975
Full Changelog: v0.5.8...v0.5.9
v0.5.8
This release includes a fix for an incorrect error log regression in v0.5.7 and a bump to the latest AvalancheGo release v1.10.14.
The AvalancheGo dependency is updated to v1.10.14 in this release, making it compatible with [v1.10.13-v1.10.14] (Protocol Version 29).
What's Changed
- Fix invalid error log regression from v0.5.7
- Bump AvalancheGo dependency to v1.10.14
Changelog
v0.5.7
This release mostly includes Warp related improvements and changes.
The AvalancheGo dependency is updated to v1.10.13 in this release, making it compatible with [v1.10.13] (Protocol Version 29).
Warp Updates
- Fixed event packing of Warp
sendWarpMessage
function - Added unsigned messageID to event topics and return value of Warp's
sendWarpMessage
function - Improved documentation and code organization of Warp package
- Added Warp block signature request handler
- Improved Warp handler metrics
- Documented predicate results size cap
- Introduced HardHat tests for Warp precompile contract
- Bumped AvalancheGo dependency to v1.10.13
- Moved AWM payload components from Subnet-EVM to AvalancheGo
- Update predicate results to encode verification failures in bitsets instead of successes
- Removed unnecessary
ParsePredicateResults
call when verifying unexpected predicate results
Bug Fixes
- Addressed flaky tests and updated dependencies
- Fixed deadlock issue in network handler on shutdown
- Fixed type cast of precompile config to type in error logs
What's Changed
- Update IWarpMessenger interface name by @minghinmatthewlam in #892
- rename WarpAPI to API by @danlaine in #864
- Update warp.json by @irfanevrens in #902
- core/bloombits: fix deadlock when matcher session hits an error by @msmania in #899
- enforce warpIndex is <= MaxInt32 by @darioush in #876
- verify warp is not activated before dupgrade by @ceyonur in #872
- Place stricter bounds on warp codec by @dhrubabasu in #900
- Update preparePredicateStorageSlots doc by @minghinmatthewlam in #891
- Consolidate predicate prepare storage slots function by @minghinmatthewlam in #908
- SetTxPredicateResults: Consistent overwriting by @darioush in #895
- removed code duplication by @abi87 in #912
- Fixed config type cast by @abi87 in #913
- Fixed some golang links. by @irfanevrens in #911
- NewEVMBlockContext: more explicit err path by @darioush in #897
- Invalidate block when missing predicate context by @StephenButtolph in #901
- Change from parsing predicate bytes to checking they equal expected value by @abi87 in #914
- add early return by @ceyonur in #916
- add get predicate result bytes helpers by @ceyonur in #906
- clear messageCache on backend.Clear by @danlaine in #918
- Signature Aggregation Refactor by @danlaine in #883
- Predicate results docs by @aaronbuchwald in #882
- replace
time.After
with timer; add max retry backoff by @danlaine in #919 - Update README.md by @meaghanfitzgerald in #926
- move predicate package and merge with predicate utils by @ceyonur in #907
- Update release checklist to include deploying to WAGMI by @aaronbuchwald in #931
- bump golangci-lint by @darioush in #927
- mark flaky test by @ceyonur in #917
- Remove destinationAddress and destinationChainID from Warp Message by @nytzuga in #920
- Rename network signer by @danlaine in #885
- Add contexts by @danlaine in #874
- t8ntool: tiny bugfix for difficulty field by @tactical-retreat in #933
- Add Unit Test for Test Aggregate Signatures by @anusha-ctrl in #936
- fix warp event packing by @ceyonur in #939
- move setup to beforesuite by @ceyonur in #940
- warp: use bitset in predicate results to encode indexes of failures instead of success by @darioush in #942
- remove flaky flag from golangbindings test by @ceyonur in #951
- warp: refactor warp handler stats by @aaronbuchwald in #944
- predicate: document predicate results size cap by @aaronbuchwald in #943
- bump avalanchego to v1.10.12 by @ceyonur in #952
- add hardhat tests for warp by @ceyonur in #935
- Move warp payload to avalanchego by @nytzuga in #923
- Fix test by @danlaine in #954
- rename stuttering files by @ceyonur in #957
- Remove outdated readme by @aaronbuchwald in #955
- Return message ID by @ceyonur in #930
- plugin/evm: update type cast to skip call to Bytes() by @aaronbuchwald in #958
- Improve TPS on E2E Load Test by @anusha-ctrl in #947
- x/warp: update PredicateGas to require warp message contains a valid payload by @aaronbuchwald in #945
- bump subnet-evm and avalanchego versions by @ceyonur in #965
- warp: add block signature handler by @aaronbuchwald in #962
New Contributors
- @irfanevrens made their first contribution in #902
- @msmania made their first contribution in #899
- @abi87 made their first contribution in #912
- @StephenButtolph made their first contribution in #901
- @meaghanfitzgerald made their first contribution in #926
- @tactical-retreat made their first contribution in #933
Full Changelog: v0.5.6...v0.5.7
v0.5.6
Updates
- Add Manager AllowList Role to activate in the DUpgrade
- Add Bloom Filter Based Tx Gossipping
- Add warp verification results into the block header
Fixes
- Fixes hanging requests on shutdown that could cause ungraceful shutdown
What's Changed
- precompile/precompileconfig: Add IsDUpgrade to precompileconfig ChainConfig interface by @aaronbuchwald in #825
- add loglevel to server conf to generate anr logfile by @felipemadero in #829
- accounts/abi/bind: mark TestGolangBindings as flaky by @aaronbuchwald in #827
- contracts: fix tx allow list test func name exmaple -> example by @aaronbuchwald in #837
- import gomock in test templ by @ceyonur in #840
- warp/validators: add unit test for warp wrapped validator state by @aaronbuchwald in #832
- add mock ci by @ceyonur in #838
- override network upgrades by @ceyonur in #839
- Warp stapling block context by @aaronbuchwald in #823
- x/warp: add predicate test for warp message from Primary Network by @aaronbuchwald in #831
- plugin/evm: Add ExampleWarp tests to vm warp unit tests by @aaronbuchwald in #836
- x/warp: add warp message handler interface within warp contract by @aaronbuchwald in #830
- Add manager allowlist role by @ceyonur in #801
- rename
WarpBackend
toBackend
by @danlaine in #863 - rename WarpClient to Client by @danlaine in #865
- Add SDK Router message handling (#316) by @ceyonur in #858
- P2p sdk pull gossip by @ceyonur in #861
- reduce duplicate code in OnSignatureRequest by @danlaine in #870
- pass warpSigner instead of snow context into backend by @danlaine in #869
- readability nits by @danlaine in #873
- bump versions by @ceyonur in #880
Full Changelog: v0.5.5...v0.5.6