Skip to content

V25.0

Compare
Choose a tag to compare
@thsfs thsfs released this 24 May 14:32
· 1261 commits to develop since this release
8dad120

CHANGELOG

Release V25.0

Full Changelog

Major Changes

Pull Request Title
#4158 Add the ascending bootstrap client
#4111 Optimistic elections

Node Configuration Updates

Pull Request Title
#4215 Bootstrap dynamic throttle
#4182 Add config classes for ascending bootstrap
#4163 Lowering block_processor max transaction duration
#4104 Add tip on optimizing cpu usage

RPC Updates

Pull Request Title
#4228 Quality improvements for accounts_balances RPC
#4223 QoL improvements for accounts_frontiers & accounts_representatives RPC
#4066 Return unopened accounts

CLI Updates

Pull Request Title
#4105 Remove the UDP channel implementation from the network
#4123 Fix missing peering port doc when running --generate_config node

Deprecation/Removal

Pull Request Title
#4219 Remove live updating bandwidth limits
#4142 Remove the stat types related to the removed UDP functionalities
#4141 Remove message buffer class and its manager class
#4127 Remove external boost references from CI build
#4107 Remove UDP test network.self_discard
#4043 Remove nano pow server

Ledger & Database

Pull Request Title
#4131 Add LMDB and RocksDB upgrades to v22: Remove unchecked table
#4216 Remove the unchecked table code from the store classes
#4028 Upgrading RocksDB to stock 7.8.3.

Fixed Bugs

Pull Request Title
#4230 Fix access without lock in active_transactions::confirm_block function
#4225 Fixes intermittent test failures in several RPC tests when querying setup blocks.
#4221 Converting legacy bootstrap shared_ptr's referencing nano::node to weak_ptr's
#4205 Add throttling functionality to the ascending bootstrapper
#4110 Bugfix: max counting had reversed polarity, it counted successes not fails
#4103 Fixes an issue where token_bucket::last_refill would update even if there were no tokens to add.
#4093 Fix race condition in unchecked_map
#4082 Fix processing_queue stop
#4080 Fix active_transactions stop
#4079 Fix hinted_scheduler stop
#4018 Specify whether bootstrap pull should start at block hash or account
#4019 Locking around read/write to peering_endpoint.

Implemented Enhancements

Pull Request Title
#4211 Convert node-wide request rate limiter to a per-channel outstanding request limiter.
#4202 Socket write queue fixes and improvements
#4192 Applies a number of cleanups to rpc tests.
#4164 Verify work inside blockprocessor
#4160 Decouple message deserializer from the TCP socket
#4159 Small processing_queue improvements
#4161 Internally check if the block processor needs to drop blocks.
#4151 Add stats for election_scheduler
#4149 Cleaning up stat counters for active_transactions.
#4148 Add unchecked_map stats
#4119 Refactor election vote
#4130 Remove requeuing of blocks with invalid signature
#4126 Avoid unnecessarily held lock in backlog_population
#4121 Add ledger::head_block query which returns the head block for a given account.
#4113 Fix magic enum slow compilation times
#4026 Telemetry refactor
#4094 Fix magic_enum range
#4090 Add start & stop to election_scheduler
#4087 Add ledger::pending_info as interface to access pending information
#4081 Add ledger::account_info as interface to access account information
#4078 Extract epoch upgrader out of node
#4065 Use 'magic_enum' library for static reflection for enums
#4074 Add include_only_confirmed option to rpc accounts_balances
#4068 Move websocket initialization code out of node constructor
#4062 Submodule2
#3999 Continuous backlog population
#4017 Updating to use c++20
#4030 Adding boost as a submodule rather than depending on external references.
#4022 Change election scheduler to consider previous balance
#4015 Unchecked map sequenced index

Build, Test, Automation, Cleanup & Chores

Pull Request Title
#4229 Update rep weights for V25.
#4220 Fix blake2 and argon2 building on Windows ARM
#4204 Small cleanup of threading related code
#4203 Fix thread names in nano::thread_pool
#4166 Migrate tests from the old message_parser to test the message_deserializer class
#4140 Move from boost spawn/yield coroutine on load_test to async callbacks
#4114 Fix bootstrap server thread name typo
#4091 Fix fork publish inactive
#4100 Introduce nano::test::start_election method
#4076 Extract common code for setting up unit test chains
#4073 Add comment for NANO_DEFAULT_PEER environment variable
#4067 Fix several sign comparison mismatches identified by msvc.
#4063 Removing WIN32_LEAN_AND_MEAN define from global project settings.
#4056 Increasing minimum required OSX version to 10.15
#4051 Fixing build error, linking load_test to boost_process.
#4049 Removed all unnecessary usings
#4045 Disambiguity of all the implemented locks
#4027 Updating cryptopp from 8.5.0 to 8.7.0
Commit Title
cff1dbde Connect handshake v2 messages to the node.
427fded3 Give messages v2 ability.
89baf79c Giving random_pool the ability to construct random-filled objects.
76dcdacc Clean up syn_cookies class and add syn_cookies::cookie method which gets the cookie associated with an endpoint and erases that cookie from this container.