Mainnet 23
vishalchangrani
released this
30 Mar 23:43
·
13589 commits
to master
since this release
This release includes the following major changes,
- Upgrades to Consensus follower, making it more Byzantine Fault Tolerant (BFT)
- Adding Cadence Compact Format (CCF) as an option for encoding Cadence values.
- Event Streaming API implementation as per this FLIP
- Several updates taking Flow closer to supporting parallel transaction execution
- Further improving the FVM smart cache validation introduced in the last height coordinated upgrade.
- Adding support for the service event-based height-coordinated upgrade.
- Several improvements to the networking layer to make it more resilient to routing attacks.
- Update block time controller to provide higher precision with epoch timings and block production rate.
- Update to Cadence v0.39.3
💥 No Breaking Changes
Access
- Do not copy protobuf messages by @SaveTheRbtz in #3790
- Add BlockStatus to GetBlock REST API by @lolpuddle in #3805
- Fix panic converting execution data to protobuf messages by @peterargue in #3887
- Improve Access API error reporting for results from ENs by @peterargue in #3915
- Add REST API metrics middleware by @diaswrd in #3691
- Export MessageToTrieUpdate converter method by @peterargue in #3897
- Improve api error handling by @peterargue in #3988
- Set message received limits by @peterargue in #3857
- Refactor uploader into separate module by @peterargue in #3676
- Add read leaf nodes from checkpoint file for Archive node use by @koko1123 in #4040
- fix storage by @smnzhu in #3064
- Fix printing trie hash by @zhangchiqing in #3926
- Backport event streaming, enabling exec sync by default by @peterargue in #4188
- Leo/v0.30 add archive address flag by @zhangchiqing in #4222
- Fix execution data cache in state stream - v0.30 backport by @peterargue in #4228
- Fix archive address list flag by @zhangchiqing in #4239
- Enable execution sync by default by @peterargue in #4159
- Add streaming API for BlockExecutionData by @peterargue in #3723
- Fix execution data cache in state stream api by @peterargue in #4197
- Add latest block Height and ID to api responses by @Guitarheroua in #4191
- Integration test for signer indices by @Guitarheroua in #4261
- Add API that return node information such as version, commit, spork Id and protocol version. by @Guitarheroua in #4235
- Added collection_id and block_id to GetTransactionResult arguments by @Guitarheroua in #4263
- Fixed REST API metrics by @Guitarheroua in #4288
- Add response rate limit to streaming endpoints by @peterargue in #4218
- Skip root block when streaming from execution data by @peterargue in #4271
- Update REST get events to return empty BlockEvents for blocks with no events by @peterargue in #4368
- Add metric for highest consecutive height with all collections indexed by @peterargue in #4391
- Implement conversion functions for CCF by @koko1123 in #4415
- disable access rest api metrics by @zhangchiqing in #4453
- revert Chunk structure to maintain consistent hashes by @koko1123 in #4351
- refactor logProgress by @zhangchiqing in #4168
- Fix read leaf nodes by @zhangchiqing in #4212
- add archive address flag by @zhangchiqing in #4199
- fix get tx by @koko1123 in #4458
- Fix AN event decoding in GetTransactionResultsByBlockID by @peterargue in #4462
- Include fix for system tx as well by @Kay-Zee in #4465
BFT
- Reporting basic consensus protocol violations by @durkmurder in #4174
- Compliance engine requires config by @durkmurder in #4372
BFTTesting
- Khalil/3590 libp2psig verification test by @kc1116 in #3689
- fixes CI failure on PR 3564 by @yhassanzadeh13 in #3794
- Gossipsub spam test Framework - IHAVE by @gomisha in #3564
Benchmark
- Prevent PID windup at start by @SaveTheRbtz in #3759
- Support multiple keys by @SaveTheRbtz in #3641
- Match log-level w/ production by @SaveTheRbtz in #3780
- Parameterize docker registry url by @gomisha in #3998
- Update benchnet2 automation by @haroldsphinx in #4057
- Update BN2 automation by @sjonpaulbrown in #4115
- Update BN2 creation, deletion CI workflows by @gomisha in #4177
CI/CD
- Add github action to build boot-tools on demand by @peterargue in #3787
- Remove --ssh flag from docker build for util by @peterargue in #3798
- Update
ci.yml
retry referencenick-invision
=>nick-fields
by @gomisha in #3919 - Add workflow to build individual docker images by @peterargue in #4065
- Only run jobs for selected roles by @peterargue in #4075
- Add retry mechanism to integration tests by @gomisha in #3989
- Remove unnecessary tagging from Makfile by @sjonpaulbrown in #4194
- Enable builds using private repos by @peterargue in #4223
Crypto
- KeyGen improvement by @tarakby in #3788
- Pairing edge case by @tarakby in #3977
- Update math/rand usage in crypto module and improve randomness tests by @tarakby in #4111
- New utils/rand package for non-deterministic true randomness by @tarakby in #4062
- improve usafeRandom and update math/rand in FVM by @tarakby in #4067
- Crypto: code improvement by @tarakby in #3760
- optimize CI tests by @tarakby in #4055
- Update flow go crypto version by @tarakby in #3441
- Update Relic Version by @tarakby in #4113
Randomness
- update math/rand usage in ledger by @tarakby in #4112
- update math/rand usage in /consenus and /engine by @tarakby in #4258
- update math/rand usage in /cmd/bootstrap by @tarakby in #4362
Engine
- Move weight check out of common provider engine by @peterargue in #3923
Execution
Refactoring to enable concurrent Transaction execution
- Fix/simplify value store span attribute setup by @pattyshack in #3738
- Simplify setting transaction procedure result values by @pattyshack in #3740
- Improve verification test's error message by @pattyshack in #3752
- Simplify chunk verifier api by @pattyshack in #3753
- Refactor environment.Tracer into a separate module. by @pattyshack in #3749
- Improve transaction verifier clarity by @pattyshack in #3771
- Set transaction procedure's trace span via context by @pattyshack in #3766
- Improve error code search. by @pattyshack in #3776
- Simplify Start Entity Span. by @pattyshack in #3786
- Remove RecordSpanFromParent from general tracing api by @pattyshack in #3791
- Define vm interface in fvm instead of computer by @pattyshack in #3796
- Pre-populate []transactions into collectionItem by @pattyshack in #3804
- refactor chunk object initialization into flow model by @pattyshack in #3811
- Change RegisterUpdates's return type by @pattyshack in #3797
- remove RegisterIDToKey & RegisterValuesToValues from execution state by @pattyshack in #3821
- Don't recompute txn id inside fvm by @pattyshack in #3819
- Simplify block computer tracing by @pattyshack in #3793
- Remove dead code by @pattyshack in #3827
- Update view's register ids apis. by @pattyshack in #3820
- Convert service event as part of fvm execution by @pattyshack in #3829
- remove MarshalJSON/UnmarshalJSON from delta by @pattyshack in #3847
- Remove Touch/Delete from view interface. by @pattyshack in #3842
- Refactor meter/interaction limits control by @pattyshack in #3845
- Improve computation result pipelining. by @pattyshack in #3840
- Remove UpdatedAddresses from fvm State by @pattyshack in #3853
- Replace meter.StorageInteractionKey with flow.RegisterID by @pattyshack in #3866
- Use RegisterId instead of (owner, key)-tuple as key for accessing register values by @pattyshack in #3867
- Remove dead emulator code by @pattyshack in #3876
- Use RegisterID instead of (owner, key)-tuple for accessing accounts by @pattyshack in #3882
- s/runtime.Address/common.Address by @pattyshack in #3885
- Use RegisterID instead of (owner, key)-tuple for views by @pattyshack in #3883
- Initialize register ids with flow.NewRegsiterId instead of flow.RegisterID{...} by @pattyshack in #3890
- Ensure NewRegisterID initialize 8 byte owners by @pattyshack in #3900
- Simplify SaveExecutionResults arguments by @pattyshack in #3913
- Parallelize saving and uploading computation result. by @pattyshack in #3916
- Clean up access request's address usage by @pattyshack in #3907
- Change delta view to read from StorageSnapshot interface instead of readFunc by @pattyshack in #3933
- Clean up address usage (part 1 of many) by @pattyshack in #3912
- Generate block execution data / id as part of result collection by @pattyshack in #3927
- Generate execution result as part of block computation by @pattyshack in #3930
- Remove dead code by @pattyshack in #3951
- Amortize derived data validation cost by @pattyshack in #3945
- Make ComputeBlock idempotent by @pattyshack in #3944
- Move StorageSnapshot from execution/state/delta to fvm/state by @pattyshack in #3963
- Fix derived transaction to support out-of-ordered validation by @pattyshack in #3966
- change simple view to use delta view internally by @pattyshack in #3964
- Cleanup account freezer address usage by @pattyshack in #3973
- Combine TransactionState & DerivedTransactionData into a single interface by @pattyshack in #3962
- Generate execution receipt as part of block computation by @pattyshack in #3956
- Clean system contracts address usage by @pattyshack in #3974
- Change View merging to operate on execution snapshot by @pattyshack in #3975
- Clean up verification fixture's computation result usage by @pattyshack in #4000
- Remove Proofs/ConvertedServiceEvents from computation result by @pattyshack in #4001
- Replace RemoteView with delta.View by @pattyshack in #4008
- Refactor fvm/utils/cadenceValues.go by @pattyshack in #3992
- Refactor fvm procedure output into a struct by @pattyshack in #4012
- Clean up more address usages by @pattyshack in #3991
- Decouple transaction execution from result collection by @pattyshack in #4018
- Add RunV2 to fvm VirtualMachine by @pattyshack in #4026
- Remove SimpleView + fix account reporter data race by @pattyshack in #4033
- Remove StateCommitments from ComputationResult by @pattyshack in #4046
- Compute/report execution stats inside result collector by @pattyshack in #4041
- Rename some address variables by @pattyshack in #4045
- Replace ExecutionSnapshot interface with concrete implementation by @pattyshack in #4007
- make LedgerStorageSnapshot's readCache thread safe by @pattyshack in #4047
- update vm.Run calls to vm.RunV2 (part 1 of many) by @pattyshack in #4048
- Update fvm GetAccount to use StorageSnapshot as input by @pattyshack in #4064
- Update fvm signature test to use vm.RunV2 by @pattyshack in #4073
- Replace View with SnapshotTree as storage representation by @pattyshack in #4054
- Add a simplified script environment constructor for emulator by @pattyshack in #4083
- Remove derived block/txn data from (most) tests by @pattyshack in #4066
- Update accounts test to use vm.RunV2 by @pattyshack in #4071
- Update fvm blockcontext test to use vm.RunV2 by @pattyshack in #4080
- Switch non-fvm use cases to NewScriptEnvironmentFromStorageSnapshot by @pattyshack in #4090
- Update fvm fuzz test to use vm.RunV2 by @pattyshack in #4081
- Update fvm test to use vm.RunV2 by @pattyshack in #4082
- Move logical time into a separate package by @pattyshack in #4089
- Fix error predicate typo by @pattyshack in #4096
- Rename State to ExecutionState by @pattyshack in #4110
- rm ExecutionStateSyncRequest/ExecutionStateDelta by @pattyshack in #4120
- Update programs test by @pattyshack in #4117
- Update derived data invalidator test to use vm.RunV2 by @pattyshack in #4102
- Remove unnecessary delta view usage in tests by @pattyshack in #4119
- Update computation/testutils to use fvm.RunV2 / snapshot tree by @pattyshack in #4109
- Add FinalizeMainTransaction method to TransactionState by @pattyshack in #4127
- Remove delta usage from badger interactions by @pattyshack in #4128
- Clean up delta view usage in fvm/environment by @pattyshack in #4151
- Change computation result to store ExecutionSnapshot instead of delta Interactions by @pattyshack in #4027
- Clean up script query executor delta usage by @pattyshack in #4130
- Remove bad test by @pattyshack in #4160
- Remove delta view usage in fvm/ tests by @pattyshack in #4150
- clean up engine/execution/state tests delta usage by @pattyshack in #4163
- Misc. delta view cleanup by @pattyshack in #4175
- Update flow-emulator version to head by @pattyshack in #4166
- mv fvm/derived fvm/storage/derived by @pattyshack in #4179
- Simplify transaction preprocessing by @pattyshack in #4200
- Replace delta view with spockState and storageState by @pattyshack in #4182
- Misc state/view usage cleanup by @pattyshack in #4195
- Clean up emulator dead code by @pattyshack in #4183
- rename RunV2 to Run by @pattyshack in #4184
- Change execution state to use storage snapshot as input by @pattyshack in #4210
- Replace RetryableError with RetryableConflictError by @pattyshack in #4241
- Add register id sets intersection function by @pattyshack in #4238
- Change derived snapshot read transaction commit behavior by @pattyshack in #4252
- mv fvm/state fvm/storage/state by @pattyshack in #4242
- Add InterimReadSet method to transaction state. by @pattyshack in #4221
- Simplify snapshot read transactions by @pattyshack in #4255
- Add support data structures for in memory block database. by @pattyshack in #4240
- rename transaction interfaces to transaction preparer. by @pattyshack in #4289
- move snapshot related code into a separate package by @pattyshack in #4262
- Update access handler to use finalized header cache interface object by @pattyshack in #4297
- Simplify derived block data initializer by @pattyshack in #4294
- In-memory MVCC block database. by @pattyshack in #4293
- Add txn index as salt to the random generator seed. by @pattyshack in #4287
- rm module/trace owner by @pattyshack in #4299
- Update emulator version by @pattyshack in #4300
- Clean up todos by @pattyshack in #4307
- Internalize block meter metric logging by @pattyshack in #4308
- integrate primary BlockData into fvm Run execution. by @pattyshack in #4305
- Queue transaction requests instead of returning a slice of transaction requests by @pattyshack in #4314
- refactor procedure state parameters setup into a function by @pattyshack in #4321
- Remove inaccurate transaction memory usage metric by @pattyshack in #4330
- Fix fvm bench test setup. by @pattyshack in #4338
- update VM interface to expose Executor. by @pattyshack in #4336
- Expose transaction snapshot time by @pattyshack in #4337
- Fix testVM data race by @pattyshack in #4347
- fix dummy uploader data race by @pattyshack in #4356
- Fix benchmark error check by @pattyshack in #4345
- Fix testRuntime data races by @pattyshack in #4346
- Change computer to directly invoke fvm transaction / executor by @pattyshack in #4349
- Add computer test to check for internal error by @pattyshack in #4341
- Move txn post process logging into result collector by @pattyshack in #4333
- Include program location in error message. by @pattyshack in #4360
Refactoring to isolate script execution interface
- clean up - remove unused code by @ramtinms in #3980
- removing unused codes part 2 by @ramtinms in #3984
- remove dead code (delta sync) by @ramtinms in #4036
- Break computationResults into sub types by @ramtinms in #4078
- change requirements for chunk data pack requests by @ramtinms in #4005
Smart Programs cache invalidation
- Smart/partial programs cache invalidation by @janezpodhostnik in #3706
- Add cached programs metrics by @janezpodhostnik in #3888
- Add programs chache hit/miss metrics by @janezpodhostnik in #3896
- Fix for double-counting contract imports(onflow/cadence#1684)
- Refactor get or load program by @janezpodhostnik in #3976
- Commit nested transaction on derived value compute error by @janezpodhostnik in #3981
- Use GetOrCompute for programs by @janezpodhostnik in #4002
- Remove unused/usafe Get/Set on Derived data by @janezpodhostnik in #4011
- Remove nil location check in getOrLoad program by @janezpodhostnik in #4031
- Change program dependencies to cadence location by @janezpodhostnik in #4056
- Track script/transaction procedure program dependencies by @janezpodhostnik in #4059
- Remove double counting of imports by @janezpodhostnik in #4060
Add support for height-coordinated upgrade via service event
- Remove obsolete comment by @janezpodhostnik in #4141
- Move test fixtures closer to usage by @janezpodhostnik in #4142
- Add logger to FollowerState by @janezpodhostnik in #4156
- Port version beacons - v0.30 by @janezpodhostnik in #4243
- Cleanup stop control component by @janezpodhostnik in #4165
- Add version beacon service event model by @janezpodhostnik in #4209
- Refactor service event marshalling by @janezpodhostnik in #4220
- Separate integration test for version upgrades by @janezpodhostnik in #4172
- Add version beacon contract by @janezpodhostnik in #4226
- Add additional version beacon tests by @janezpodhostnik in #4236
- Add Version Beacon integration test by @janezpodhostnik in #4250
- Add version beacon badger storage by @janezpodhostnik in #4256
- Add version beacon storage initialization by @janezpodhostnik in #4267
- Add version beacon verify function by @janezpodhostnik in #4283
- Change system transaction to have dual authorizers by @janezpodhostnik in #4298
- Add version beacon to snapshot by @janezpodhostnik in #4285
- Stop Control with Version Beacons by @janezpodhostnik in #4342
FVM
- Log execution intensities even if the transaction fails by @janezpodhostnik in #3755
- Refactor accounts set storage used by @janezpodhostnik in #3865
- Add restriction that program loading cannot write to registers by @janezpodhostnik in #3871
- Split meter into components by @janezpodhostnik in #3870
- Debug log cadence logs by @janezpodhostnik in #3899
- Change interaction metering by @janezpodhostnik in #3874
- Replace contract update key by @janezpodhostnik in #4091
- Change panic to failure in programs by @janezpodhostnik in #4092
- Update flow-core-contracts to v0.12.2 by @sideninja in #4227
- Account local ID generation by @janezpodhostnik in #4416
- Add test for storage iteration with broken values by @SupunS in #4320
- FVM bench test fix by @janezpodhostnik in #4369
- Dependency tracking on load error by @janezpodhostnik in #4474
Dynamic bootstrap
- Add sealed root for dynamic bootstrapping execution node by @zhangchiqing in #4375
Consensus Follower
- Replacing
MutableState
withFollowerState
andParticipantState
by @durkmurder in #3949 - Updated main consensus compliance engine to support batched API by @durkmurder in #4024
- Implementation of
PendingTree
by @durkmurder in #4003 - Follower engine by @durkmurder with contributions by @AlexHentschel in #4094
- Skipping proposals too far ahead of locally finalized view by @durkmurder in #4118
- Update
README.md
for consensus by @durkmurder with contributions by @AlexHentschel in #3863 - Snapshot uses QC storage by @durkmurder in #3947
- Service events processing order by @durkmurder with contributions by @AlexHentschel in #4149
- Use consistent default weight by @jordanschalm in #3783
- Fix data race in DKG integration test by @jordanschalm in #3792
- Merge
feature/active-pacemaker
tomaster
by @jordanschalm in #3895 - Start previous epoch cluster consensus components after epoch boundary by @jordanschalm in #3921
- Re-enable SN epoch integration test by @jordanschalm in #4134
- Port #4063 to master by @jordanschalm in #4086
- Add metric for epoch transition height by @jordanschalm in #4079
- Epoch Height Boundary Index by @jordanschalm in #3903
- Remove unused types from entity.go by @jordanschalm in #4009
- Beacon Key Storage Error Docs / Handling Improvements by @jordanschalm in #3950
- Add explicit exception type by @jordanschalm in #3999
- Pending blocks cache for follower engine by @durkmurder with contributions by @AlexHentschel in #3965
- [Hotfix] Follower engine finalization events by @durkmurder in #4173
- [Backport] Step 1 of Follower optimization by @AlexHentschel in #4176
- Dropping redundant inputs by @durkmurder in #4284
- Connected finalization events to follower engines by @durkmurder in #4389
- Check reference at snapshot creation by @jordanschalm in #4093
- PaceMaker constructor supports QCs and/or TCs recovery as additional recovery information by @AlexHentschel in #4155
- Finality logic supports ingestion of uncertified blocks (using validated QC from unvalidated blocks) by @AlexHentschel in #4190
- Update README.md by @jordanschalm in #4224
- Remove payout flag, arg from resetEpoch cmd by @jordanschalm in #4286
- Compliance Core - clean up extra arg by @jordanschalm in #4292
- Consensus Follower optimization (pt 3) by @AlexHentschel in #4234
- Update cluster config constraints by @jordanschalm in #4185
- Enforce that collection reference blocks are bound to the cluster's operating epoch by @jordanschalm in #4148
- Change default min timeout for LNs to 1.5s by @jordanschalm in #4304
- Add finalized header cache to protocol state by @jordanschalm in #4145
- Extended coding guidelines around usage of
irrecoverable.Exception
by @AlexHentschel in #4021 - Use
ComponentManager
in DKGMessagingEngine
by @jordanschalm in #4219 - Consensus optimization: remaining cleanup by @AlexHentschel in #4315
- Suggestions for PR 4174 by @AlexHentschel in #4317
- Use
ComponentManager
,FinalizationActor
in RPC engine by @jordanschalm in #4313 - Add
FinalizationActor
by @jordanschalm in #4187 - Clean up cluster builder by @jordanschalm in #4296
- Use
FinalizedHeaderCache
andComponentManager
in sync engine by @jordanschalm in #4339 - Remove outdated command from readme by @jordanschalm in #4378
Block rate controller
BlockRateController
: Implement rate and error measurement, initialization, tests by @jordanschalm in #4348- Add
BlockRateController
skeleton by @jordanschalm in #4332 - BlockRateController: Metrics and debug logging by @jordanschalm in #4386
- Hook up BlockRateController to Pacemaker by @jordanschalm in #4385
- Revisions to BlockTimeController by @AlexHentschel in #4392
Network / Routing attacks
- Add protocol metrics label by @peterargue in #3761
- Fix inbound message metrics label by @peterargue in #3767
- Revamps connection manager by @yhassanzadeh13 in #3852
- Refactors test scenarios to comply with libp2p upgrade by @yhassanzadeh13 in #3875
- Enables logging of peer ids together with node id upon connection establishment by @yhassanzadeh13 in #3898
- Bump libp2p v0.23.3 -> v0.24.2 by @SaveTheRbtz in #3701
- Logging of libp2p Resource Limits at Node Startup by @yhassanzadeh13 in #3904
- Topology Tracing and Monitoring for GossipSub by @yhassanzadeh13 in #3970
- Thread-safe and non-blocking notification distributor by @yhassanzadeh13 in #3911
- Introducing Visibility to the GossipSub Scoring Mechanism by @yhassanzadeh13 in #3986
- Refactor GossipSub topology logger with zeroLog dictionary feature by @yhassanzadeh13 in #4035
- Fix CI build for #3585 (abstracts GossipSub-related primitives) by @gomisha in #3592
- Fixes nil issue with router during tests by @yhassanzadeh13 in #3665
- increase GRPC limit to 20MB by @koko1123 in #3635
- Khalil/1846 close conn rate limited peer by @kc1116 in #3799
- Khalil/1855 Remove block listed peers by @kc1116 with contributions by @AlexHentschel in #3762
- Khalil/1844 topic validator skip decoding by @kc1116 in #3831
- Khalil/6441 Blocklist admin command functional test by @kc1116 in #3877
- Khalil/6477 single pairwise connection by @kc1116 in #3902
- 1886 Add worker pool to rpc metrics inspector by @kc1116 in #4132
- Khalil/1883-inbound single pairwise connection by @kc1116 in #4022
- Gossipsub RPC Inspector tracker cache by @kc1116 in #4365
- khalil/1885 Unknown cluster ID spam prevention by @kc1116 in #4189
- Khalil/6474 Gossipsub RPC control message Spam protection: GRAFT & PRUNE by @gomisha in #4103
- Enhancing Load-Balancing and Security through Shuffled Connection Order by @yhassanzadeh13 in #4254
- Spam mitigation of GossipSub ctrl messages by @gomisha in #4306
- Chore: dissolve DefaultLibP2PNodeFactory by @yhassanzadeh13 in #4366
- Chore: refactors the lifecycle management of alsp manager by @yhassanzadeh13 in #4376
Storage
- Storage for Quorum Certificates by @durkmurder in #3928
- Fix cleaner interval units bug by @jordanschalm in #4231
Observer
- Fixed issue with incorrect observer logs by @Guitarheroua in #4178
- Remove unsupported execution sync from observer bootstrap by @peterargue in #4382
StateSync
- Align downloader and execution data store to use a single interface by @peterargue in #4381
- Add caching to execution sync and streaming api by @peterargue in #4383
SpamPrevention
- Implements skeleton of application-layer feedback by @yhassanzadeh13 in #4099
- Gossipsub RPC ihave unknown topic spam detection by @gomisha in #4344
Test
- Move admin tests to integration by @peterargue in #3917
- Fixes race conditions by @yhassanzadeh13 in #3687
- Flaky Test Monitor - run regular tests more frequently by @gomisha in #3741
- Pin benchstat version by @SaveTheRbtz in #3833
- AddObserver adds a node to a suite by @m4ksio in #3746
- Storage layer test refactor by @janezpodhostnik in #4140
- Ignore benchstat on forks by @janezpodhostnik in #4146
- Add step to print results of test monitor by @jordanschalm in #4095
- Fixes flaky
TestGossipSubSpamMitigationIntegration
by @yhassanzadeh13 in #4312 - Move TPS test runs to new VM by @gomisha in #4269
- Cleanup integration test bootstrap by @peterargue in #4121
- Flaky tests for compliance engine by @durkmurder in #4302
- Fixes panic on dividing by zero for TestValidationInspector_ActiveClusterIdsNotSet_Graft_Detection by @yhassanzadeh13 in #4329
Tools
- Add bootstrap command to generate grpc TLS keys by @peterargue in #3789
- Batch removal by @m4ksio in #2535
- Backport v0.31 add read range blocks admin cmd by @zhangchiqing in #4456
- Add contour ingress support by @sjonpaulbrown in #4158
Community
- Test Fixes for emulator API changes by @bluesign in #4419
- Add an extra parameter for runtime config in NewCustomReusableCadenceRuntimePool constructor by @m-Peter in #4126
Misc
- Reporting node info metrics by @durkmurder in #3800
- Herocache reports ejected entites by @durkmurder in #3961
- Badger log files cleaner by @durkmurder in #4108
- Add cli flag for grpc max message size by @peterargue in #3855
- Auto update to onflow/cadence v0.31.3 by @SupunS in #3836
- Avoid oppressive terminology by @turbolent in #3370
- Disable account freezing by @janezpodhostnik in #3982
- Remove account freezing by @janezpodhostnik in #4010
- Add LicensingApproach.md by @Kay-Zee in #3908
- Cleanup codeowners by @peterargue in #4076
- Modify Localnet image-build behaviour, update documentation by @jordanschalm in #4124
- handle limited size of queue for holding incorporated block in sealing logic by @AlexHentschel in #3734
- Use consistent method for creating temp dirs by @jordanschalm in #3846
- Documentation on Sealing Segment (and some minor bug fixes) by @AlexHentschel in #3824
- extend documentation of pending tree by @AlexHentschel in #4114
- move script execution logic to query package by @ramtinms in #4034
- Adding collection result consumer type by @ramtinms in #4049
- Ensure the same runtime config is used by @turbolent in #3768
- Disable limiting storage/computation during bootstrapping by @janezpodhostnik in #3848
- Rename variables and update comments for trie update function by @zhangchiqing in #3922
- Log invalid vote in bootstrap finalize by @zhangchiqing in #3832
- Ignore Inclusion field when verifying trie proof by @zhangchiqing in #3940
- Enable attachments on all networks but Mainnet by @turbolent in #4020
-
- Update
core-contracts
dependency (slot selection) by @jordanschalm in #3837
- Update
- Remove requirement that
weight > 0
inEpochSetup
validation by @jordanschalm in #3934 - Fix OBO and inconsistency in signer indices decoding used in Access API by @jordanschalm in #3906
- v0.30 fix read leaf nodes by @zhangchiqing in #4213
- Add docs for connecting to node using debugger by @peterargue in #4129
- Refactor localnet to clean up port allocation by @peterargue in #4161
- Clean up DKG simulation in bootstrap by @tarakby in #4259
- Fix system contract variable name inconsistency by @janezpodhostnik in #4171
- Remove reporting feature from state extraction by @zhangchiqing in #4401
- log triedir when fail to initialize disk war by @zhangchiqing in #4387
- Move the order of saving state commits by @zhangchiqing in #4316
- Leo/v0.31 add export report by @zhangchiqing in #4430
- Fix system transaction imports by @janezpodhostnik in #4443
- Transaction logging fix by @janezpodhostnik in #4444
- Backport - panic when on executed block error by @zhangchiqing in #4471
- Fix sealed header cache in state bootstrap by @peterargue in #4477
- Backport to v0.31 increase range limit by @zhangchiqing in #4480
- Move StrictMonotonousCounter to module by @peterargue in #4394
Chores
- Upgrade core contracts by @janezpodhostnik in #3733
- Update to cadence v0.31.1 by @SupunS in #3774
- Update to Cadence v0.31.2 by @turbolent in #3777
- Update to Cadence v0.31.5 by @turbolent in #3959
- Upgrade Cadence to latest version (v0.35.0) by @janezpodhostnik in #3884
- Update mockery and mockgen, regenerate mocks by @turbolent in #4025
- Update to Cadence v0.36.0 by @dsainati1 in #4017
- Upgrade Cadence by @janezpodhostnik in #4069
- Update to Cadence v0.37.0 by @turbolent in #4087
- Port account linking test PRs from v0.29 to master by @turbolent in #4097
- Upgrade cadence version to
v0.38.0
by @SupunS in #4157 - Update to Cadence v0.38.1 by @turbolent in #4202
- Update to Cadence v0.39.3 by @turbolent in #4439
- Update to Cadence v0.38.1 by @turbolent in #4201
- [0.31] Update to Cadence v0.39.5 by @turbolent in #4448
- Update to Cadence v0.39.1 by @turbolent in #4390
- Backport v0.31 fix last finalized header cache by @zhangchiqing in #4450
- Backport fix scripts by @zhangchiqing in #4251
- port - [Exec] Use CCF in self-describing mode to encode events (replaces JSON-CDC) by @janezpodhostnik in #4437
- [v0.31] Update to Cadence v0.39.8 by @turbolent in #4469
- Update to Cadence v0.39.9 by @turbolent in #4472
- Update to Cadence v0.39.9-patch.1 by @turbolent in #4487
New Contributors
- @haroldsphinx made their first contribution in #4057
- @m-Peter made their first contribution in #4126
- @Guitarheroua made their first contribution in #4178
- @bluesign made their first contribution in #4419
Full Changelog: v0.29.17...v0.31.9