V23.0
CHANGELOG
Release V23.0
Full Changelog
Node Configuration Updates
Pull Request | Title |
---|---|
#3032 | Secure Websocket support and certificate config improvements |
#3531 | Rep crawler weight minimum |
#3377 | Removing deprecated lmdb_max_dbs config option |
#3282 | specify ip notation for preconfigured peers |
RPC Updates
Pull Request | Title |
---|---|
#3412 | Implement "accounts_representatives" RPC (#3409) |
#3439 | Add receivable along with pending to RPC responses (#3411) |
#3429 | Add "confirmed" field to "account_history" RPC response (#3424) |
#3398 | Add deprecation output to "history" RPC (#3397) |
#3392 | Update RPC & QT Wallet to the new units #3386 |
#3387 | wallet_pending and accounts_pending handle empty results differently |
#3343 | Fix RPC "active_difficulty" returning empty string as "difficulty_trend" (#3323) |
#3337 | Add "successor" field to RPC "block_info" & "blocks_info" |
#3333 | Improve delegators rpc by adding "count", "start", and "threshold" parameters (#3330) |
#3277 | Extend 'wallet_info' RPC command |
IPC Updates
Pull Request | Title |
---|---|
#3446 | Have CMake copy Flatbuffers schema files to output dir to simplify dev |
CLI Updates
Pull Request | Title |
---|---|
#3475 | Node flag to disable calling add_initial_peers function |
#3474 | Add some flags to the command line options list |
#3465 | Fix broken cli commands: wallet_create, wallet_list (issue #3447), diagnostics (issue #3452) and other CLI commands |
#3410 | Network selector |
Developer Wallet
Pull Request | Title |
---|---|
#3619 | Update images for README and QT wallet to be new symbol |
#3546 | Fix crash in nano_wallet when ran with --config option |
#3437 | Replace "pending" with "receivable"/"ready to receive" in QT wallet (#3411) |
Developer/Debug Options
Pull Request | Title |
---|---|
#3582 | Include election.confirmed outcome in log |
#3438 | Replace "pending" with "receivable"/"ready to receive" in node logs (#3411) |
#3369 | Remove 1 sec socket timeout in dev mode (becomes 2 sec as in normal m… |
#3297 | Split election drop stats to be either overflow or expired |
#3310 | Warn if the limit for open FDs is lower than recommended |
Fixed Bugs
Pull Request | Title |
---|---|
#3623 | Modifies the silent connection checker to inspect sever-side incoming messages only |
#3593 | Adding detail string for request_underflow. |
#3590 | Check and track request underflows in bootstrap/realtime message processing. |
#3591 | Specifying macos toolchain explicitly to 10.15 rather than tracking latest. |
#3587 | Fixes the early drops of not yet timed out connections |
#3568 | Add wallets::start() function for deferred start. |
#3563 | Fix a couple issues found with TSAN and add a suppression for Crypto++ |
#3556 | Disable intermittently failing UT node.vote_by_hash_republish |
#3558 | Disable intermittently failing UT bootstrap_processor.push_diamond |
#3560 | Disable intermittently failing UT rpc.send_epoch_2 |
#3550 | Fixes/splits vote_processor.no_broadcast_local |
#3511 | Handle SIGABRT and SIGSEGV on Windows |
#3275 | Fix for RPC stop command (#3191) |
#3500 | Endianess fix for vote timestamp field (does not affect x86) |
#3502 | Fix handling of SIGSEGV and SIGABRT in nano_node |
#3459 | Fix a crash that would sometimes happen in debug builds at handshakes |
#3445 | Fix fill_keepalive_self so the low index entries aren't clobbered. |
#3442 | Remove node_id_handshake_sockets as unneeded. |
#3428 | Fixing QT ratio selection |
#3422 | Fix daemon_config active_network. |
#3380 | Adding 'explicit' specifier to uint256_constructor for strings. |
#3379 | Removing incorrect TCP assert |
#3375 | Updated diskhash repo and code version |
#3340 | Fix counting of voting representatives #3339 |
#3315 | Fix TCP accept handling when max incoming connection limit is reached |
#3311 | Remove election blocks () debug assert |
#3298 | UPnP leases issue |
Implemented Enhancements
Pull Request | Title |
---|---|
#3569 | Refine election scheduler lock. |
#3567 | Turns off sub-network connection limiting for IPv4 |
#3564 | Improve and simplify a number of network limiters |
#3548 | Adding duration to vote timestamps. |
#2921 | Deadline timer cleanup |
#3544 | Vote timestamp encapsulation |
#3540 | Remove election limiter from call site in confirmation height processor |
#3541 | Updating miniupnp to v2.2.3 |
#3507 | Brings back broadcasting blocks on process_live |
#3388 | Refer to empty/null accounts as nano::account{nullptr} |
#3443 | Remove callbacks passed through start_tcp |
#3461 | Fix the bootstrap request queue processing |
#3420 | Remove static instantiation of network_constants |
#3414 | Removing legacy path from nano::working_path |
#3413 | Removing static initialization of nano::network_params |
#3406 | Converting sever static initializations of nano::network_params to references |
#3408 | Removing static mutex for the random pool |
#3403 | Changing nano::block_store_partial to hold nano::ledger_constants by reference |
#3402 | Passing nano::ledger_constants in to nano::ledger |
#3394 | Moving networking related parameters off of the node config |
#3391 | Remove nano::genesis class |
#3383 | Cleaning up genesis_dev constants |
#3368 | Convert static network id code to instance code |
#3324 | Depth-first search ledger walking |
#3364 | Message sink interface |
#3358 | Fix half principal rep check |
#3280 | Remove election restart by difficulty |
#3304 | Increase soft limit for number of open file descriptors |
#3308 | Increase tcp_incoming_connections_max default value |
#3281 | Prevent not processed blocks addition to confirmed elections list |
Build, Test, Automation, Cleanup & Chores
Pull Request | Title |
---|---|
#3670 | Update live rep weights file for V23 |
#3671 | Setting version for release. |
#3566 | Update beta rep weights file for V23.0 |
#3565 | Update live rep weights file for V23 |
#3547 | Removing old (disabled) conflicts.add_two unit test |
#3545 | Fix conflicts.add_two unit test |
#3536 | Disable intermittently failing unit test |
#3532 | Disable intermittently failing unit test |
#3525 | Include <csignal> for std::signal usage |
#3526 | Disable intermittently failing unit test |
#3512 | Disable (intermittently) failing unit tests |
#3510 | Improvements in const correctness and 'const' positioning |
#3509 | Fix Windows build (signal handling) |
#3506 | Formatting rules update -- indentation rules improvements |
#3505 | Add [[nodiscard]] attribute to node::process method |
#3497 | Possible race condition fix in ledger_walker.ladder_geometry test |
#3488 | Cleanup qt_system remnants (#3189) |
#3353 | Update FlatBuffers to release 2.0.0 |
#3492 | Comment on_connection_requeue_delayed |
#3487 | Minor improvements to slow_test |
#3486 | Redesign CI format check/update scripts according to review |
#3470 | Fix cmake-format-all.sh script + friendlier xargs usage |
#3468 | Add systests to CI and fix for rocksdb mode (issue #3447) (issue #3452) |
#3479 | Fix unit test case node.search_pending_pruned |
#3477 | Fix for unit test rpc.epoch_upgrade #3476 |
#3469 | Fix Windows build |
#3467 | Fixing OSX formatting issues. |
#3462 | Improve clang-format detection & enforcement |
#3460 | Make code formatting compliant with clang-format 12 |
#3454 | Require fixed version of clang-format |
#3450 | Fix CI clang-format script: tell if clang-format cannot be found |
#3441 | Removing null checks for nano::bootstrap::socket |
#3440 | Removing unused variable channel_tcp::response_server |
#3435 | Convert nano::bootstrap_connection::connections to a reference |
#3434 | fix failure to build with GCC11 |
#3433 | fix failing build with boost >= 1.76 |
#3416 | Update major version to 23 and add pre release version 99 |
#3418 | Remove qt_system target we dont need it or use it |
#3415 | test_common not required for qt only for qt_test |
#3407 | remove errexit ghcr.io has some edgecase rules, and isnt required for… |
#3405 | Fix typo on CLI online_weight_clear success message |
#3395 | update clang-format checks for full history |
#3396 | Remove wezrule from security policy |
#3393 | Update README.md |
#3384 | Update CMakeLists.txt |
#3055 | Weekly Coverage Runs to coveralls.io |
#3381 | Cleanup of genesis constants within ledger_constants |
#3373 | Remove load_test from github CI |
#3374 | Fix ledger_walker.genesis_account_longer unit test on macOS |
#3372 | Disable compilation/usage of diskhash on Windows |
#3370 | Remove tautology: send_buffer was called on channel so it must be non-null. |
#3371 | Fix build after merging PR 3324 |
#3365 | Fix race condition in unit test websocket.bootstrap |
#3359 | Moving socket type entirely in to nano::socket class. |
#3363 | Double unit test timeout in github CI |
#3361 | Fix for unit test active_transactions.vote_replays #3360 |
#3362 | Fix for unit test bulk.offline_send |
#3332 | System initializer |
#3357 | Removing unused constants from enumeration. |
#3356 | Simplify RPC tests response check |
#3352 | Update GoogleTest to release 1.11.0 |
#3354 | Update Crypto++ to release 8.5 |
#3347 | Simplify RPC tests initialization |
#3351 | This disallows passing in a nullptr socket in to bootstrap_server. |
#3350 | Rename socket::type_t |
#3345 | fix unit test socket.max_connections |
#3336 | Fix for network.peer_max_tcp_attempt |
#3344 | Fix unit test node vote republish |
#3341 | Fix code formatting |
#3338 | Fix unit test deferred dependent elections |
#3328 | Fix for active_transactions.pessimistic_elections unit test |
#3326 | Removing redundant check in telemetry limiter. |
#3329 | Block store break up |
#3334 | Don't reference get_available_port from within the node lib. |
#3331 | Moving the check "using_rocksdb_in_tests" on to rocksdb_config |
#3327 | Test case for max incoming tcp sockets limit |
#3325 | Unchecked store break up |
#3318 | Moves out peer methods from the block store class |
#3317 | Moves out pruned methods from block store class |
#3319 | Moves out confirmation height methods from block store class |
#3320 | Moves out final vote methods from block store class |
#3306 | Account store break up |
#3316 | Online weight store break up |
#3309 | Fix compilation failure on OSX. |
#3307 | Pending store break up |
#3296 | Election scheduler predicates |
#3303 | Fix build issue |
#3286 | Fix last contacted |
#3302 | Election cleanup cleanup |
#3287 | Frontier store break up |
#3283 | Simplify inactive_votes_cache_election_start test |
#3279 | Improve confirmation_height.gap_live core test |
Other
Pull Request | Title |
---|---|
#3595 | Update CPACK_PACKAGE_VERSION_PATCH for V23.0RC2 |
#3378 | Enable blank issue with preference noted for using pre-set templates |
#3278 | Update deploy-docker.sh |
Commit | Title |
---|---|
0176d6c7 | Double max_peers_per_ip and max_peers_per_subnet (5 -> 10 and 20 -> 40) |
242e9e38 | Updating version for V23.0RC1 |
Additional binary releases:
Hashes and GPG Signature (keys located in source etc/gpg/
).
Below are the sha256 sum hashes for version 23.0 release artifacts
Signature Verification can be run against clemahieu.asc in source repo (etc/gpg/)
3ad1b447af41e5c15f0ab593211fd99c05d290ac99f17452d6e7ab87ffe6a64d nano-23.0.tar.gz
626d3859104e1a49a8d0246dfb961675570e87a6d829e14d07e7cbaecaac4037 nanocurrency-23.0-26.el7.src.rpm
aac1ced1c6f1edcd640c5a3df2664b3b961f9fcfaf73647d9aff5c2479c779fc nanocurrency-23.0-26.el7.x86_64.rpm
6c9820e41e8d0dbfdfeda23d1f88ad824138ab5f89e34a51d98edb69b6fde336 nanocurrency-debuginfo-23.0-26.el7.x86_64.rpm
2cd67cfda8b52b445a2173b7b46cbed1d7a60b9fbf46962a80774109b1204e31 nano-node-V23.0-Darwin.dmg
d666f65af1136fe82f126ac5a25900ff680bf1343285566baca0fb1857809c0b nano-node-V23.0-Linux.deb
1f4ee8bffbfc05a843afdfe1711a014ac9003b67e0bd02038a57cc3018e27eca nano-node-V23.0-Linux.tar.bz2
31a1272dcdaa1d74966482ca04f775897204a6a13dc90e5e418a89bb6fadfbef nano-node-V23.0-win64.exe
2d1da2ada3d879dd455a90ff06d13f3c38cef2db6cd27959daeef7a4d66c6b5d nano-node-V23.0-win64.zip
-----BEGIN PGP MESSAGE-----
owF9lD+IXFUUxkcTkX1gSCFTCIEbENRiJ/f/nwgSNAiCRSQQTGM4995zZh6ZfTO8
N7O72S5FYEtBLaxWLCysxEKw0y5gKyZgYWMjWoqgSPTMmq3C2r537/ed8/s+7vvP
nRk14zeW98T9n76OT333Sx7lcx+++jrOF3sCehSrGYphBtp5Max3xAyGGQ6CFr3Y
xX5oF53QZiJFj3OEAfnKqiUoq6G53k47WK1Z4gb2LbUFVpvTBTqRUfTrTsAU2m5Y
iTLHHZi1uJ7AUETbiWGx7gufweVCvIyrcmm6nF56pWkMVJWtDUBWoSvKkYTsktFK
UU2pSFd1klBSIhWs09VjgBwDEXrwtgrRQbfY3gw8WUE/mR40XvtqoktKWlRgE8Qq
tfWVcvLKB+eCxBjA16gTKltlwFAyYAEoVprwn2RZ9z125c6x9Lb2E5yHydCXSb/c
afikKlhV8aSwluqtLA5MJe29zWZjRIkKAQXjbagJiFzRNqQSAv/4H4v96G95e+zi
S4paIoPhDWqmSlhBm6ooRuDprTKRYVFMaCw4VVPEmn3Knioa409cvk2PfSrm9bTt
aHGao+ZVQqEKMTvNsTjQKpgcsvUl876VscmcKJP1yWuIMgSrZMpKM2yjHqfRLSpu
3zj2uAr9XttN6s60qd578g5IKeMJoyalPTA37ZKURD7KTMpYo6Nz3mcoICmr6EKU
XIT8pPjbbbfen/BWjSKLGDPxZFwZiNbABpcKSoFUlvsjpck+oMxcBsncXCjFSBVR
B07+NO1NpfKBbowCpYPmqAGYgk2cc9Q8oKUQXEyB9wcPylR2QseZRYgpcxLAvUN6
Up+pMHTcx0YzV9BQuT8xpFqtc5CYh/RVGTLFxIKkOdhSdUguVUCkAJZ5Fp9dPU37
oF02h+uzo3EzujC+ePby0Tvv/fbs6OJn525eOHkcnnmaX4a3Rs3W+ZMvH1wZ/YNf
jj/furr15/yjv1776sEPf1x/+Ov3P+89+vGF5z++c+vNbz4ZPXrp0y+uvXj44Ghr
73C2a/++f+3K7d3fx7dH9C4d6bsPz/wL
=r6Vg
-----END PGP MESSAGE-----