Skip to content

Releases: nanocurrency/nano-node

V27.1

09 Sep 20:01
Compare
Choose a tag to compare

What's Changed

Networking overhaul

Significant portions of the networking structure have been rewritten to improve reliability, maintainability, and performance.

Fair queuing

Logging and stats overhaul

Election/block handling improvements

Rep handling overhaul

Vote handling improvements

Read more

V26.1

27 Feb 14:11
Compare
Choose a tag to compare

Build run: https://github.com/nanocurrency/nano-node/actions/runs/8048168703

What's Changed

Major improvements

Library updates

CI and Testing improvements

Cleanup

Miscellaneous

New Contributors

Full Changelog: V25.1...V26.1

V25.1

08 Jun 15:50
d710e29
Compare
Choose a tag to compare

Build run: https://github.com/nanocurrency/nano-node/actions/runs/5156809257

CHANGELOG

Release V25.1

Full Changelog

Fixed Bugs

Pull Request Title
#4240 Blockprocessor stall workaround

Build, Test, Automation, Cleanup & Chores

Pull Request Title
#4242 Bump Qt version to 5.15.2 for Windows builds

Other

Pull Request Title
#4243 Log hashes of build artifacts
#4245 Remove the call for signing.ps1 on Windows builds
#4244 Fix cpack on Windows
#4241 Remove assert for null block deserialization
Commit Title
fd07d15a Merge bump-rhel-compatibility branch

V25.0

24 May 14:32
8dad120
Compare
Choose a tag to compare

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
[cff1dbd](cff1dbde7f8b...
Read more

V24.0

20 Jan 13:06
Compare
Choose a tag to compare

CHANGELOG

Release V24.0

Full Changelog

Protocol Changes

Pull Request Title
#3867 Bulk pull ascending flag

RPC Updates

Pull Request Title
#3860 Add populate_backlog rpc command
#3790 Changes the accounts_balances RPC to return per account results
#3791 Changes the accounts_frontiers RPC to return per account results
#3789 Changes the accounts_representatives RPC to return per account response
#3702 Add receive_hash option for the blocks_info RPC
#3753 Pending to receivable renames
#3700 Add optional offset parameter for the receivable RPC

Websocket Updates

Pull Request Title
#3851 Add started_elections topic to websockets
#3698 Add option to include sideband info of confirmed blocks in websocket messages
#3554 Introduce support for binding sockets to ports picked by the OS

CLI Updates

Pull Request Title
#3836 confirmation_height_clear cli account param

Deprecation/Removal

Pull Request Title
#3655 Remove json config code

Developer Wallet

Pull Request Title
#4000 Update qt.cpp to match block_count RPC & fix bug with pruned display
#3627 added cemented, full and pruned to nano_wallet gui
#3586 Update images for README and QT wallet to be new symbol

Developer/Debug Options

Pull Request Title
#3806 open_burn_account errors and comments
#3685 Add collect_container_info to election scheduler and prioritization
#3684 Impove election result logging
#3652 Remove incorrect debug_assert
#3582 Include election.confirmed outcome in log

Fixed Bugs

Pull Request Title
#4003 Fix missing return on non-void function
#4002 Fix use after scope error active_transactions.vacancy test
#3977 Add missing include file for std::atomic (required by slow_test)
#3953 Do not wait for vote processor during AEC processing loop
#3959 Bugfix: properly handle refused bootstrap connection
#3898 Fix bootstrap serving threads regression
#3861 Fix & refactor bootstrap_server
#3850 Fix rocksdb_block_store.tombstone_count
#3849 Fix intermittently failing test gap_cache.two_dependencies
#3853 Fix server_socket close method override
#3745 Fix unit test confirmation_height.conflict_rollback_cemented
#3680 Enable and fix node.unconfirmed_send unit test
#3703 Fix unit tests within active_transactions
#3732 Fix unit test election_scheduler.no_vacancy
#3691 Fix unit tests election.quorum_minimum_flip_*
#3723 Fix unchecked_map destructor.
#3721 fix race condition between bootstrap pull and push
#3713 Minor bugfix for election scheduler thread name
#3696 Fix ipc_client::async_resolve when given invalid endpoint
#3643 Fix telemetry rpc getting stuck if all nodes have bandwidth set to 0
#3679 Investigate and fix some of the disabled unit tests
#3694 Do not ignore socket errors
#3687 Fix node.pruning_* unit tests
#3629 Disable batch of intermittently failing unit tests
#3649 Modifies the silent connection checker to inspect sever-side incoming messages only (develop branch version)
#3602 Disable intermittently failing UT ledger_walker.ladder_geometry
#3604 Disable intermittently failing UT active_transactions.inactive_votes_cache_fork
#3607 Disable intermittently failing UT confirmation_height.election_winner_details_clearing
#3611 Disable intermittently failing UTs
#3610 Fixing slow_test compile error.
#3594 Initializes receive and completion times to always hold a valid value…
#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.
#3572 Unlocking lock in all branch cases.
#3568 Add wallets::start() function for deferred start.

Implemented Enhancements

Pull Request Title
#3980 Rebalancing buckets the reflect natural transaction ranges.
#3957 Replace random_access with sequenced in active_transactions
#3956 Replace random_access with sequenced in unchecked_map
#3955 Replace random_access with sequenced in vote_cache
#3907 Improved inactive_vote_cache
#3865 Bootstrap serving on dedicated thread pool
#3869 Simplifying bootstrap_attempt::mode_text
#3866 Add hashing specializations for nano::hash_or_account.
#3864 Add an observer to block_processor that notifies with the output from block processing.
#3812 Extracting nano::bootstrap::block_deserializer class
#3852 Expands ability for ledger::is_send to accept any block type
#3816 Node ID persistence
#3813 Remove vote-by-block support from vote class
#3811 Adding unhandled case for message_visitor
#3809 Bootstrap cleanup
#3802 Updating rocksdb to 6.29 feature branch and using vanilla rocksdb.
#3644 This demonstrates a speedup in confirmation rate during initial boots…
#3786 Adding details to the DB commit () release_asserts
#3787 Moves the LDMB table handles to their respective type of store class
#3785 Further removal of templates in db classes
#3784 Add db backend namespaces
[#3783](https://github.com/nanocurrency/nano-node/pul...
Read more

V23.3

13 Jun 18:52
33422f4
Compare
Choose a tag to compare

CHANGELOG

V23.3

Full Changelog

Fixed Bugs

Pull Request Title
#142 Improves the vote processor class and limits its flush()
#152 Vote hinting reenable

Other

Pull Request Title
#3835 Unchecked memory
#152 Crypto++ 5.6.5
#145 GUI: seed warnings, several tooltips, balance in Account viewer
#142 RPC receive
Commit Title
17250767 Fix use after delete in cleanup_election()
a17157e0 Merging identical code branches for convenience ::put function.
00610099 Adding a memory container for blocks once the initial bootstrap threshold is reached. Blocks are pruned in fifo order.
9b5bae62 Reimplementing nano::unchecked_store::get in terms of unchecked_store::for_each and removing backend-specific variants.
b4ce6c41 Converting functions on unchecked_map that return iterators to instead use for_each with a functor to execute on each result. This prevents iteration details from being exposed externally.
2fd16c79, 57c2210e Removing unchecked.for_each_par as it's effectively unused.
73a631c3 Remove a debug assert that crashes the node on receipt of zero node ID
65c8ae9e Bugfix: correctly check for magic bytes and network in message header

Additional binary releases:


Hashes and GPG Signature (keys located in source etc/gpg/).

Below are the sha256 sum hashes for version 23.3
Signature Verification can be run against thsfs.asc in source repo (etc/gpg/)

20057926a464c25090d69c9ce783d8211d91ed94fa0e3772340f8fb7ba1604f7 nano-node-23.3.0-Darwin.dmg
de91d92b479da5d97c5934302fc88f66c034c9e3b6dcdc251e4665832eb4c628 nano-node-23.3.0-Linux.deb
5873f160cd4da3ba59267e2f8338a265a294669391529d9b00bf1e0b61a8092e nano-node-23.3.0-Linux.tar.bz2
B62EDE96DD7D980B44AAC10840FAF950104D0C133BE66107DAE13D7D153D2453 nano-node-23.3.0-win64.exe
6F4775BFCF6009221A3C4BE9378B3F2BE2CD14F330CA947F4AC7F44E84EDEF43 nano-node-23.3.0-win64.zip
-----BEGIN PGP MESSAGE-----

owF1km1QFWUUxy8KqFsOjDbYaE6LmkHKvbvP8+wbgnn3viilpKhB4JTP7j4La3Iv
3r1XwHgZM3CgqBxSU8fRNMJohHHSuOLoaE5Ok05NEKaJigPamIovJBRxofWDnxy/
nA/nnP/v/M+Z8+nEsTYqaqxr7K1PPKwRdfamYlMaN8XJZK2/mMYBQgcLCG0WYMDx
tBkqpAuwWUBMWvcH6PUkYBp+Hw2gHVLLjXwfDoYswZskYOiGioOPair20QqhAyEf
jfOx4TODFtDUTTs2Vdrw0aY/FFCtOiny00kkqDryi/IdyRQFGIYTJMBjxCMVcIzE
aLykSioRRKiJgGU1iSWahHTMECgIACJGF3VFUDDLM0gXaB/2+VN8fo2kPLJnZ1Lc
OFBs+OxaYT6lEcnSAwUJkoY5TRJUToIIMkBXRVHneZWBSJUIVHhN1azpLEE8z4kQ
EAWpPBCfhC82fKESu0YUihMFqFseVA1pGCqYs5YQCNBFCEUMeA4DyYJJUGI5IGmS
wjCKzhJG4VksMhIgT2MHccCubACUzAOP2yPxbrfglkRGRsjpdLGMiBiv0ytxDMsg
N+NiIZQ9PM8ygtvpYaHVy3LQDRAHn+RbV+GRnZQQivciQcjmZK/LyzOWGcA6oQvJ
HgkKogy9QPYAl5tFXggZl1NCghc5XVZAHhFZnrzoqfANRhFVMwZG26Io2/SExOj7
FRWx/mMb5ahpo1mPXy9mzKO/s1ET4h9n3uLjbbunDbaGMib8HWyd73htS3pp1r6c
6o8Svk1NnTVQWN6tvFyZd+jOEfk/cmn+lfMNrz9/NPG5zfOKt0zak/v9oviV3YC7
PH1ZdFnlveUdM7eFs29Kdfud8KUbuzJ+bVAW3f1xpDmm7u0+adO2P9jbsVfVVBBo
m/XixsxrTfLqg5Gh8L41rs/opvi5Z7IP739o1lbvPFk+eXfm3L6uazHPzKvJfCim
ZZ5wvNDfc2b9lY3vZ8ddZpWWOVkrby5alZP0ywcc//mQ2ZnRnyv06mur7uPbeSt6
imf0U+Gk8ZFjQx0NF5u45tGr/wz3sg1a9/FgyxFj5pTFK/1d4b3Dk/v22DKOT07r
jG6OWv3qQjm9ftKeJUUpZVNbf9qhXuh42F46byBr4PQ7g0fXiB2mY+rZccPfTRyc
4e7c9WfeG6mHumuFhFJP6o1lS8ehBi5knPqSDS/s4NLiIk3XT92dYr+VAu43Lq6v
XLagOoea2JNe3v7g3TmVjWerxz9orx+5TifvPRXeced3o6L5ZFX7uezRSb0lJ5a8
csk7OJTXtsp/uGJ72Q9r69t+RlPT1S6jcOlw73lb0rProtetqTmY0bhp62/chzPK
085Xd2a1nNmdFBepEh1/4dkfX/jqwQqcmLx8dl3/VriA5H7d9U3kIn33QH/xvZ2e
CKoZ1k7/e+/ce18cqE0uGHWOcAtiV2xv71r4Pw==
=dpMI
-----END PGP MESSAGE-----

V23.1

19 May 21:48
Compare
Choose a tag to compare

CHANGELOG

V23.1

Full Changelog

Fixed Bugs

Pull Request Title
#3828 V23.1 Cumulative patch

Implemented Enhancements

Pull Request Title
#3816 Node ID persistence

Other commits

Commit Title
fef94e36 Setting CPACK_PACKAGE_VERSION_MINOR value to reflect V23.1.0.0

Additional binary releases:


Hashes and GPG Signature (keys located in source etc/gpg/).

Below are the sha256 sum hashes for version 23.1
Signature Verification can be run against thsfs.asc in source repo (etc/gpg/)

556457314eae3dd6cf1538743b8d15aa23fb19169d6c2c3efebdcf9540eb537f nano-node-23.1.zip
7ae22cdfbd4056053bb9bbd733b79e86c2cce849f9ff750118340af612a257c3 nano-node-23.1.tar.gz
e2affdeb9635f7f35fa90c40b60aefc6429ca67f9c97e2748e49bce62f955edc nanocurrency-23.1-1.el7.src.rpm
946a788782bc2be25994a56a2c93038231619544c9273a998a19070eda497c9a nanocurrency-23.1-1.el7.x86_64.rpm
b386eeb85b0c3d8987dbd6ae450a196602dba962583b432a6c8426a64562c865 nanocurrency-debuginfo-23.1-1.el7.x86_64.rpm
94ae49c4869376787cc161ee324d933584725aa820cfad9fc65c2934db6fb028 nano-node-23.1.0-Linux.deb
aa7c67350bb18a232c3c1d083f7a110ad7f177025b821f4fd1266d49b1b374fb nano-node-23.1.0-Linux.tar.bz2
C1C8F86C36480DC1F5AF0602C4877F655205EFE99DCB69264CB38ED3A075FC25 nano-node-23.1.0-win64.exe
8814DB1F621615832F7FBB4C16AC8CD7BF0A2E377B05E323F8FE3EF0E5B31A4A nano-node-23.1.0-win64.zip
922aa8020a4225cd3c1a961badcb5115d9e06ce06dea9b98e1a1d5b243428793 nano-node-23.1.0-Darwin.dmg
-----BEGIN PGP MESSAGE-----

owF1lGuMjFcYx3ddlh13bbfSrc2Qja7qjvfcz0E1cyWNkC6l2N3uOec97+y4zIyZ
HXY1FutSrBShSIOiLtFSl4YEFaxq0FKVVLQN0hZR10UrFbe+K/GhFV/Oh/fJ+/s/
z///nLOwXfMsT3bzYPOrC8Iglv3dFZWl6o/WBcy4xCSvTBlvVaXxpislJNSbzoz3
Vsp0pUl7nUTKO9Gk0rFE3AuRD3iGxqJxWZVxfxhuUjEnpmVVU03LuFcZbyoT98qo
jMXTVS4w7aR9Mq29sbg3nciktFs3yYS3yFTp3tFktHdPj4cQiglDABtpkG1T7QCC
OMNIcRsQKSFyFBCACrcENTKOUbZ2BMGWUQQxxxuX8URxPGGb4qb2fJNjSQ+TBkJt
O8rGFqEWQUoJpWyGkGLC8CaQNhwLRzgOIxYAHGFLOhRAd3qm0f+ZVTLli072GCgd
xzZKUEQc5riHFJbGlqKWNI6mGAotKXOEFsxAhrnBQmlDodsuMbZ+gtWZVMrEdc0T
cjHwmXHMl05pXyo53iMwlYxzxqHSUBlIhMCSUAm1QBbiEAEK3MmxFpAhKQSXQFjM
MrbEgmkhnytQzen7FD/RUIhTYxQnytLI5oIzW9lUGkwsl0apBW0lBYWEI4URlFRz
DKl0Q6JQc0r+q+G6kYnG4k7iOWpu/64JGnMqEKOMM63dGYxBENsCIcIxg27IHFra
kbZwTSQaCoRtRR1lQf7/JKziQbF4ptrn6nqkZJoyRCylAHf3xN0ODWyLI4dJACxp
MwcwZkGiOAQOdmwAKbXdSIBCDDvqeeymtNVk6AmCII9wGkQUcysUBBHij1iuP0HM
GYtQQqBFwpGwEKFggApIcTCAeDiE/BYjkSAkz/InxeKuL6baeDgHOBQAEQpdO1yr
YYRFAgEcBNQf5MEQC0QsPwwjxgKuBoIowiNhFI5YYRJAwI/9z2M3bb+A0HXUgpbE
EBJtu664gQIlba0IAMQWxqLauDfDNlIowQ2QwCYKYoQhZ+KZ9beKQzLl8n32+Khn
bjPUIivbk9U1r1uLW7W1OYm90wPZ+Y9Lnj4sLZs1vSpZntyOT78cf7nDo6IJox82
LIwkN5TlF/ZttbJ119MbztzdWns/70HSVtWfd1zceP7MRfv+sj+H77xyZED/WScy
a1bPKF1dc/vxrpXV9OGlspFFpeZAuNDsr7na4ofyL14L9595FPTofOLooKLpjeVv
9TpRerX04MFf2n9bUtD9k94t6l4oHJAztmDP3mh939JvNvBVU/U8+3KP2ndOF3+9
Hac7HDt1oE1uw46TpYdVIf/+XEHy1pd9Xu+8tW3Px3Pr+4V/m76jblsvdHtLy5oh
FW+c/TivbtSlfg37pl0eyLqtm7fxpwl/tK3ss97nnz+lsWzmiM0Plm0UK268e+if
KeVbFtwRB7tk17QqLwgl0c8fRpbqwZlwu0M6NOTcEDLGnuNpvyLnxfm5g4pfOjVg
T2Vy4oC2m85fgnnT171dkVlyc32nzQNHLP6sAdeOra3LnZofH1TyQWPjpLWpwYvu
gd0l/u73L83dtS3p3HmPJCcc+st3cuboi78u399p37VhP+b3uHU8u2hXz1ZFVxq6
UVKMIrMrzs8u9/6d/GrY9f35M+blv5k+eTh++drVR5seHavfe2d3dv7IaamWyysu
9K8813gwZ1KzDrW3d24curTwRvdX+pKSa2O2rDzbLX6i5M6YXXfDZbMWD2vTJYdd
6P2Rv09ZclzlqkU0umPJzTnHJodebSgYeC+xyckrPFKx5vdPx3lWhwu2bt4+qnXJ
rdFrlyVOX8/9Fw==
=/ugz
-----END PGP MESSAGE-----

V23.0

17 Jan 18:58
a7a44f9
Compare
Choose a tag to compare

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 walki...
Read more

V22.1

11 Jun 18:49
d91016b
Compare
Choose a tag to compare

CHANGELOG

Release V22.1

Full Changelog

Fixed Bugs

Pull Request Title
#3315 Fix TCP accept handling when max incoming connection limit is reached
#3298 Fix UPnP leases not being renewed in case of errors

Implemented Enhancements

Commit Title
ac7a3e26 This change simplifies logic in the election scheduler.
03debef9 Increase soft limit for number of open file descriptors
874f0984 Increase tcp_incoming_connections_max default value

Additional binary releases:


Hashes and GPG Signature (keys located in source etc/gpg/).

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

Below are the sha256 sum hashes for version 22.1 release artifacts
Signature Verification can be run against argakiig.asc in source repo (etc/gpg/)

aa95c0590f9366043a451720dd5c60e07760ba9a3f075b1ce508c59dcaed33bd *nano-22.1.tar.gz
1de53c226724364ba24285b554b714b2b19ace78f1ac28c176d8c40f86029097 *nanocurrency-22.1-25.el7.src.rpm
9ac81a65f6d13d64c5b73614ceba53a2d94ddd108c251ea4c52ee771a41f988b *nanocurrency-22.1-25.el7.x86_64.rpm
b65d150f6720b0e86f2b97be36c8a4f8c7b6f7f4d3691a73ed941b822fad6189 *nanocurrency-debuginfo-22.1-25.el7.x86_64.rpm
ca62f12563244679521fa9f2fdbba5a07e008faabb6e59ced5961cfca1bb9f04 *nano-node-22.1.0-Darwin.dmg
d106cde7a6dae3a71e2ce1f74ab3b47cba1eb119e9e4e6d98cd13a0e6ef76248 *nano-node-22.1.0-Linux.deb
00fcf256f618e68dfb74f0c74f79815245365eb492a5a1482870bca4b5ad76b3 *nano-node-22.1.0-Linux.tar.bz2
6D9DE27F0E1543E4F1AB82F5DFD08E6F177488D51E4F12F149D2639CD22731C3 nano-node-22.1.0-win64.exe
4543A2FFE0DA19AB73673E718F811C9CD37334AE23B40FAB489883AC2D252739 nano-node-22.1.0-win64.zip
-----BEGIN PGP SIGNATURE-----

iQEzBAEBCAAdFiEEiV3g3/hlCzeiBTTjgERoJPn9OloFAmDZ9sUACgkQgERoJPn9
Olq1Jwf/RDWWBpQNoG/ORKc8/Hu/rdchmafvoqKn4xxbpdX0m/2/DTqKWuRCUPI7
+0hVZ4QE9Fp/8d+7uM0DT0CtGwcKgFwgxn81vMHlUnNqj8hXQ57aFQowBtL5deNS
lBLuXupz3jbrZ/l/iRtJ6aXGOeI1W3+JUsL/pxBjNfxxi9qqF4+ONONDV33L5A7/
N74iQcJK6+OVnyiutndx1V+/804XrjL+i532gz1joGa/Hi96lYtrN1foHAdD00iq
ZNUoEE7j45yfba3huUR5HtmZiutw9yTjDgH3/pIx6xEfxzlDEDAelhdZnm9CTMhM
wU1Ul2ujQZkIRLmGLw9ldHqTTovgKg==
=uuH5
-----END PGP SIGNATURE-----

V22.0

14 May 21:23
ef09e55
Compare
Choose a tag to compare

CHANGELOG

=========

Release V22.0

Full Changelog


Major Changes

Pull Request Title
#3208 Election scheduler
#3190 Prioritization
#3134 Final votes
#2881 Experimental ledger pruning

Protocol Changes

Pull Request Title
#3152 Optionally send confirmed frontiers

Node Configuration Updates

Pull Request Title
#3282 specify ip notation for preconfigured peers
#3148 This decreases the confirm_req_batches_max from 20 to 2
#3120 Increase default max LMDB size
#3122 Update online_weight_quorum toml comment
#3052 Update online_weight_quorum default to 67
#2998 Rollback messages config
#2947 [Pruning] Pruning configuration settings
#2855 Simplify RocksDB config options
#2832 Set default bootstrap initiator threads to 1

RPC Updates

Pull Request Title
#2843 BREAKING Change node_id from hash to account in telemetry RPC/websocket
#2977 BREAKING [Pruning] Support pruned chains in RPC & QT wallet
#3015 BREAKING Remove payment RPC
#2884 BREAKING Confirm delta
#3060 BREAKING Pending RPC to sort by absolute amounts when returning a subset
#3237 Change return details for "bootstrap_lazy" RPC
#3276 Default include only confirmed data for RPC supporting it
#3267 Deprecate RPC active_difficulty instead of removing it
#3147 Limit frontier request block count by default
#3080 Optional async for process RPC
#3039 Add confirmed_height in account_info RPC to be consistent
#3022 Add include_only_confirmed to account_balance & account_info
#2916 Fix error with work_cancel RPC request
#2874 Fix inconsistent online representatives list from RPC
#2903 Provide network_receive_minimum in RPC/WS active_difficulty
#2852 Stats RPC to print out rocksdb memory stats
#2829 Merge block databases

Websocket Updates

Pull Request Title
#3260 BREAKING Remove elections difficulty sorting
#3016 Add option to include votes in confirmation websocket

CLI Updates

Pull Request Title
#3050 Update CLI commands missing checks for reading config and overrides
#2979 Migrate LMDB database to RocksDB with new CLI command
#2950 Use multiple threads in CLI debug_account_versions and debug_unconfirmed_frontiers
#2915 Don't delete crash dump files with --debug_generate_crash_report
#2889 Modify CLI --debug_account_versions for epoch upgrade tracking
#2845 Display hardcoded and ledger block height in compare_rep_weights
#2861 Fix CLI test --debug_profile_bootstrap
#2835 Allow unescaped quoted strings with --config CLI
#2685 Improve mutex handling when generating stacktraces with NANO_TIMED_LOCKS/txn tracker
#2822 Prevent CPU usage in --debug_opencl

Developer/Debug Options

Pull Request Title
#3144 The build info shows following description: \
#2765 Allow filtering a specific mutex for tracking with NANO_TIMED_LOCKS
#3077 Add debug/release_assert overloads which output error message strings
#3065 Improve message logging for bulk pull requests
#3031 Remove debug_assert which is hit calling block_confirm on already confirmed block.
#2932 Fix nano::timer tick update after stopping
#2777 Add uncemented frontier output CLI command
#2836 RocksDB tests
#2912 Recognize IPv4-mapped loopback addresses
#2909 Add support for defer_lock in nano::unique_lock
#2888 Make logging election tally an optional config
#2880 Logging exception handler and fix for stable_log_filename on windows
#2877 nano_test_network => nano_dev_network, new nano_test_network
#2844 Add time retrieval latency profile to CLI diagnostics
#2681 Add ASIO completion handler tracking
#2840 Different log when the OpenCL library cannot be loaded
#2839 UPnP basic logging messages are more frequent than intended

Fixed Bugs

Pull Request Title
#3273 Fix active transactions pruning regression
#3274 Duplicated foward-reference declaration
#3269 Fixing 3-cycle possible deadlock
#3265 Election flush
#3252 Fix block processor add issue
#3158 Fix FreeBSD build error: "Cannot find source file: plat/plat/default/debugging.cpp"
#3146 clear_send_ids in vacuum/snapshot is using wrong txn object
#3142 Enable write tx for vacuum operation
#3106 TSAN error in confirmation height unbounded
#3051 Wallet create causing crash when confirming blocks
#3084 Fix online reps live votes update
#3085 Wallet store adhoc keys inconsistency with reps container
#3069 Add --rpcconfig option and fix wallet config bug
#3018 Fix qt wallet hitting a debug_assert when creating blocks
#3072 Removing duplicate roots from the same vote
#3035 Renew UPNP port lease
#3019 Enable OpenCL on macOS
#3020 Properly initialize array of atomics in ws server
#2997 Fix repcrawler loopback channel guard
#2983 Wallets search pending deadlock
#2957 Prevent immediate cleanup of new channels
#2966 Check if awaiting collection is em...
Read more