Releases: nanocurrency/nano-node
V20.0RC1
Change Log
Release V20.0RC1 (2019-10-24)
Major Changes:
- RPC publish optional work_watch flag to add to work_watcher [#2168]
- Adds RocksDB support [#2197]
- TOML config file support and migration [#2221]
- Support epoch 2 [#2310]
- Add ability to start pow server as child process [#2331]
- Active elections loop tuning [#2306]
Semantic Changes:
- Classify traffic stats correctly [#2309]
- Verify pubkey against special keys in wallet [#2299]
- Fixes account_history RPC to include receive blocks when filtering accounts. [#2244]
- Use node_ prefix for node ID [#2191]
- Assert for disabled bootstrap modes [#2163]
- Remove querying pending confirmation height in various operations [#2156]
- Accept multiplier in work_generate and work_validate [#2151]
Implemented enhancements:
- Confirm frontiers for bootstrap with multiple failures [#2349]
- Non-blocking UPnP discovery [#2346]
- Attempt to fetch account from block hash in RPC work_generate [#2339]
- Unchecked cleanup tuning [#2336]
- Restart dropped elections for unconfirmed blocks with higher PoW [#2335]
- Basic confirmation request loop enhancements [#2327]
- CLI command to output the total number of (un)opened account versions [#2323]
- Periodic rep crawler weights update [#2319]
- Add lazy bootstrap possible links and accounts [#2315]
- Allow node to work without work generation [#2312]
- RPC epoch_upgrade [#2304]
- Update broadcast_confirm_req_batch to handle PoW priority [#2303]
- Strong types for the various bit unions [#2300]
- Stacktrace with backtrace to display files and lines [#2298]
- Lazy bootstrap cleanup & basic improvements [#2292]
- Some minor cleanup [#2291]
- Add block count cache [#2290]
- Replace account_info::rep_block with representative account [#2283]
- Enhance block processor filter [#2282]
- Handle work generation failure and cancel [#2281]
- Split bootstrap source files [#2274]
- Disable unchecked cleanup if node is not synchronized [#2272]
- Add log when a block difficulty is updated in active transactions [#2270]
- CLI --debug_validate_blocks enhancement [#2269]
- Refactoring epochs [#2268]
- Track length of time mutexes are held for [#2267]
- Add config option to conditionally enable RocksDB backend [#2266]
- Prevent possible from_multiplier () function overflow [#2265]
- Prevent adjusted difficulty overflow for extremly high or low difficulty [#2260]
- Prevent dropping of unchecked on restart if node is not synchronized [#2257]
- Distributed work refactor [#2255]
- Enhancements to OpenCL work handling [#2247]
- Wrap boost::asio::async_write to ensure lifetime of buffers [#2240]
- Start frontiers confirmation after initial bootstrap [#2236]
- Enforce upper case for hashes/signatures string output [#2235]
- Fire callback & add to history after confirmation height is set [#2233]
- Allow Cmake AVX2 builds for Windows [#2232]
- Reduce time holding read transaction in vote processor [#2231]
- Distibuted work fixes [#2230]
- Watch blocks separately in work watcher [#2228]
- Configurable work watcher period [#2222]
- Improve throttled received block for bootstrap [#2220]
- Use max config difficulty internally [#2218]
- Throttled received block for bootstrap [#2216]
- Add counter in stats for number of incoming blocks dropped [#2215]
- Config option for single line logging records [#2214]
- Beta reset with new genesis and lower work threshold [#2207]
- Travis/artifacts to s3 [#2204]
- Provide optional automatic ledger/wallet backups before an upgrade [#2198]
- Process wallet blocks outside of block processor queue [#2196]
- In http callback, don't log any http responses indicating success as errors [#2193]
- Callback response misleading [#2192]
- Add frontiers confirmation modes [#2175]
- Use confirm_req by hash + root for upgraded peers [#2164]
- Assert for disabled bootstrap modes [#2163]
- Cache recently arrived votes [#2159]
- Improve votes caching for same account & increase max cache size [#2155]
- Prioritize node wallet frontiers during background confirmations [#2154]
- Accept multiplier in work_generate and work_validate [#2151]
- Improve docker build speed on multi-core machines [#2148]
- Improve stacktrace output during release_assert [#2142]
- Static type safety for the union types [#2117]
- Provide optional automatic ledger/wallet backups before an upgrade [#1690]
- No write transactions on I/O threads [#1264]
- Logging output can spread multiple lines, which makes it difficult to export [#806]
- Node crashes with no error message if the database can't be opened [#761]
- Lazy bootstrap retry limit [#2362]
Fixed bugs:
Version 19.0
Change Log
Release V19.0 (2019-07-11)
Major Changes:
- RPC server is moved to a new process [#1874]
- Trending active_transactions difficulty for an average [#1858]
- Add confirmation height [#1770]
- Add support for realtime network traffic over the bootstrap TCP port [#1548]
Implemented enhancements:
- Move confirm_frontiers higher up request loop [#2141]
- Cleanup inactive channels from rep crawler [#2132]
- Improve broadcast_confirm_req_batch delays and max size [#2130]
- More aggressive setting confirmation height of frontiers during low tps [#2126]
- Send confirm_req each request_confirm loop [#2125]
- Always notify on active difficulty updates [#2109]
- Fix intermittent test issue and cleanup unused vars [#2108]
- Improve batching multiple blocks pending confirmation height processing [#2105]
- Add observer stats for confirmations [#2100]
- Use default vote_generator_delay if missing (for RC updates) [#2093]
- Web socket subscription for active difficulty [#2091]
- Bidirectional TCP sockets [#2087]
- Move WebSocket confirmation_type into message [#2079]
- Only pass active confirmations to the http callback [#2078]
- Don't start confirm_frontiers () if elections count > active_elections_size [#2076]
- Use correct index when iterating prioritized frontiers [#2069]
- Add launch flag --disable_udp [#2063]
- Use a convenient global instead of passing use_memory_pools explicitly [#2059]
- Add active container observer [#2058]
- Make announcement_long delay 2 rounds [#2056]
- active_transaction.roots bounding by config instead of confirmation rate [#2051]
- Configurable confirmation history container [#2049]
- Don't escalate confirmed previous/source for elections [#2048]
- Attempt to start TCP connections to known UDP peers [#2045]
- Update broadcast_confirm_req to use confirm_req by hash [#2036]
- Move SYN cookies & response channels to separate classes [#2029]
- Add configurable vote generator delay and bundling test [#2028]
- Use a memory pool to reduce block deserialization heap usage [#2025]
- Factor out network [#2024]
- Increase server timeout to receive TCP header [#2022]
- Capture SIGINT and SIGTERM to clean up sockets [#2018]
- Set minimum difficulty for RPC "work_generate" [#2006]
- Fix off by one error in frontier req server [#1992]
- Bounded active transaction [#1990]
- Prioritize frontiers for background confirmation [#1982]
- Finish up difficulty/multiplier semantics in RPC work_generate and work_validate [#1981]
- Move io_threads to rpc process config node [#1980]
- Add specific rpc process config options [#1977]
- Add severity logging levels, and send errors to syslog/Event Viewer (incl failed rollbacks for confirmed blocks) [#1973]
- Framing support for realtime network messages [#1972]
- Move common UDP/TCP channels functions to transport [#1971]
- Fixing dynamic re-work and trend from elections [#1968]
- Makes sure a write lock can be avoided when launching an inactive_node [#1967]
- Send live network messages over TCP [#1962]
- Backup config files when upgrading [#1959]
- Pass command line arguments (network/data_path) to nano_rpc child process [#1957]
- Simple ledger validation CLI command [#1956]
- Reduce length holding read transaction open for in confirmation height processor [#1954]
- Print info about network and path, when running daemon [#1953]
- Allow long running read transactions to be broken up [#1951]
- Fix our warnings [#1942]
- TSAN suppressions file [#1941]
- Make new random_constants class for not_an_account [#1928]
- Try to fix some version-specific clangformat formatting issues [#1927]
- Activate confirm_req_hashes for beta network [#1926]
- Set defaults for block_sideband [#1922]
- Add more information after a segmentation fault [#1921]
- Replace xxHash with blake2b [#1919]
- Add CLI command for dumping any frontier-unchecked key matches [#1915]
- Cleanup test files on Windows after executing test binary [#1910]
- Immediately stop inactive node active_transactions loop [#1909]
- Websockets - subscribe to votes [#1908]
- Websockets - filtering options [#1907]
- Websockets - check for subscriptions before proceeding [#1906]
- Remove delay exiting node in request processor [#1904]
- Add pulls cache for long bootstraps [#1903]
- Update confirmation heights with new async timing [#1899]
- Delete unused rpc.cpp [#1897]
- Recalculate work from wallet [#1895]
- Port config cleanup, allow running tests alongside beta node [#1891]
- Remove vote generator delay [#1889]
- Add copying operation to block builder [#1886]
- Create new node ID on each launch & support keepalive with preferred ports [#1885]
- Reduce work.eco_pow intermittent failure rate [#1882]
- Update confirmation height in another thread [#1877]
- When clearing confirmation heights set the genesis account to be 1 [#1875]
- RPC server is moved to a new process [#1874]
- Refactor preparation for moving RPC out of process [[#1872](https://github.com/...
V19.0RC6
Change Log
Release V19.0RC6 (2019-07-05)
Implemented enhancements:
- Cleanup inactive channels from rep crawler [#2132]
- Improve broadcast_confirm_req_batch delays and max size [#2130]
- More aggressive setting confirmation height of frontiers during low tps [#2126]
- Send confirm_req each request_confirm loop [#2125]
- Docker cache [#2121]
Fixed bugs:
- tsan: missing lock in ws active_difficulty unit test [#2129]
- Improve assert in tcp_channels::process_message () [#2127]
- update default limit to (5 * 1024 * 1024) or 5Mb/s [#2119]
- remove else and always flush if over config.json active_elections_size [#2116]
- only log if blocks have been processed and logging enabled [#2115]
- fix windows installer path [#2112]
Additional binary releases:
- Official Docker Instructions
- Nano CentOS repo
sudo yum-config-manager --add-repo https://repo.nano.org/nanocurrency-beta.repo
sudo yum install nanocurrency-beta
nano_node-beta
installed to bin
Hashes and GPG Signature (keys located in source etc/gpg/
).
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
Below are sha256sum hashes for version 19.0RC5
Signature verification can be done against the signature for argakiig in the source
code repository (etc/gpg/)
6e6ca3aad2546536ee3f864a4df93eec695e6596eb7975479ce1ebdbba0b510a *nano-19.0RC6.tar.gz
40b5f797ad41346ac1d56d4554a322ac65424acbeb27b97b5390cb36603cbdca *nanocurrency-beta-19.0RC6-14.el7.src.rpm
143d37b22bc80cf9702ae1742bda4da19118994d66c3bde5019dbac3cfd06ac7 *nanocurrency-beta-19.0RC6-14.el7.x86_64.rpm
2dc282dc677bc4c8447fe717aa4c79aa9112214c70ef7c77c7a56c4828c355de *nanocurrency-beta-debuginfo-19.0RC6-14.el7.x86_64.rpm
f05000f6eb85190046e3390ab2a17e368012a5014c2fc793f2285bc5a17f7605 *nano-node-19.0RC6-Darwin.dmg
3f60f4721a8cfc3f42fee888a692c207c376663f0b44ae137492db9f53027a52 *nano-node-19.0RC6-Linux.tar.bz2
f0fdfc314d07546ad80e2880c286fa5320f5b3dfb97a3ac86d45981bb82a9403 *nano-node-19.0RC6-win64.exe
c127ec01601fec62be6f08605814a405db60391e21cae9a53334a5a9e54349b7 *nano-node-19.0RC6-win64.zip
-----BEGIN PGP SIGNATURE-----
iQEzBAEBCAAdFiEEiV3g3/hlCzeiBTTjgERoJPn9OloFAl0f6TMACgkQgERoJPn9
OlqPVwf9Grr5OFBKR+xHmjTWS564CvUwGKG71LyQdQTxqOw0HEYT/0MtpaL3Z7Wo
wGLgtjcegBSglOA1djlRkE00w5BMjqPglbv5FD7Nrw2zKqpHO7+rIcz/AJoQbnOO
7r3xGtsRn4khekgbPfmN82xktyMkCmSMG4Xl3H6xqhReX7eAKN7GQdczy51WVjvZ
LHPoJSvbrLJdx0AzILB70XN/itelStJRtnESuCtlggTk2uYL9TcG6Dr9WxbdgxJD
q7/FShO4p3F1mRR8WHaSh1dHCsa1tflfeZqITIkrqBedupkjD0MEtgFbVOEHUKV0
Hz7BNC+/2bG+A+xRZFT1K5jJEoYyFw==
=V+zt
-----END PGP SIGNATURE-----
V19.0RC5
Change Log
Release V19.0RC5 (2019-06-27)
Implemented enhancements:
- Fix intermittent test issue and cleanup unused vars [#2108]
- Improve batching multiple blocks pending confirmation height processing [#2105]
- Flag to disable TCP realtime network [#2103]
- Add observer stats for confirmations [#2100]
- Web socket subscription for active difficulty [#2091]
- Add optional cemented count to block_count RPC command [#2089]
- Fix duplicate iterating in conf height processor with self and circular sends [#2088]
- Bidirectional TCP sockets [#2087]
- Don't start confirm_frontiers () if elections count > active_elections_size [#2076]
Fixed bugs:
- Always notify on active difficulty updates [#2109]
- Minor Readme file updates [#2107]
- Fix locking issue and intermittent failure in rpc.active_difficulty [#2102]
- Test bug introduced by #2090 [#2101]
- Add ability to clear stats from Qt wallet [#2099]
- TCP: Don't connect to or log invalid peers [#2097]
- Fix vote_generator loop inconsistency during high load [#2095]
- Formatting issues on master [#2094]
- Use default vote_generator_delay if missing (for RC updates) [#2093]
- Optional include_trend for RPC active_difficulty [#2090]
- Update slow_test [#2086]
- Use node_flags for delay_frontier_confirmation_height_updating [#2085]
- Prevent multiple observer calls for confirmed block [#2082]
- Provide test for WS topic election_stopped and fix bad topic/content [#2081]
- Move WebSocket confirmation_type into message [#2079]
- Only pass active confirmations to the http callback [#2078]
- Use the MDB_NOMEMINIT flag with the ledger db environment [#2077]
- Remove copies of blocks container from network::flood_block_batch [#2075]
Additional binary releases:
- Official Docker Instructions
- Nano CentOS repo
sudo yum-config-manager --add-repo https://repo.nano.org/nanocurrency-beta.repo
sudo yum install nanocurrency-beta
nano_node-beta
installed to bin
Hashes and GPG Signature (keys located in source etc/gpg/
).
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
Below are sha256sum hashes for version 19.0RC5
Signature verification can be done against the signature for argakiig in the source
code repository (etc/gpg/)
4d66a528afc5b0f16c82222b01659392a49aa954ecee02302134bc904075adb6 *nano-19.0RC5.tar.gz
56b4fe817f9a1556ece4e3b6c55566b86051bdc49a2b6d2ac1106d62d728c214 *nanocurrency-beta-19.0RC5-13.el7.src.rpm
899412416e67da23f08730dac3abaa2bdc1a59a98fb42e41ac5d470a007ad309 *nanocurrency-beta-19.0RC5-13.el7.x86_64.rpm
8e610262fe6615a4f7fc2b2be04dad551674e39bbab90623d39b515ca79b6ac9 *nanocurrency-beta-debuginfo-19.0RC5-13.el7.x86_64.rpm
136e387b6dce6f0a60559d702ba1acd80e4815a8e59a0d7eeb7fa506792ffbc1 *nano-node-19.0RC5-Darwin.dmg
b294c705b19632279e3c9ebcaae7987935918f21cc436fe71d2e4c4b0e29c443 *nano-node-19.0RC5-Linux.tar.bz2
8cca52c4361e718cee00006042cdb86979aee08aa75e6cd8243f044163b3f1e4 *nano-node-19.0RC5-win64.exe
eddb447769931287178db7010c1e7a8b48776514a76d08514e044f95c2614f5c *nano-node-19.0RC5-win64.zip
-----BEGIN PGP SIGNATURE-----
iQEzBAEBCAAdFiEEiV3g3/hlCzeiBTTjgERoJPn9OloFAl0WT9cACgkQgERoJPn9
Olojngf+PB9ukTn/yLr7CUcG88VqKmN1DLhUmiTnhh2Tqeajs15Dytd/2GJEIWiA
gqFT3ba+0IkIkZLgDIGVG9ta9DHRVJcyRM2A5pTSEys1He7kUxk8tTRDxekOcZNb
oaQCKAkqEvNw6lRM8fiXh4u91O1gz51SwWxhHrdPY2qs9ut6nnBWl8yoC7ugSlhg
30LZ1uDhGb+OyNODQ7sU6Nk8SXQDXVHcjqm5v8Hrqu5/upTgbhkif0nWFdj03AmL
rN3S30owbncP1hELHM2BRETESdatY+Ae1tDDhEK6B1BuusqbddXqtk9IES8fCVvq
ZZDwtfSwLPRHDLc1Dqi/v4IMPonE+w==
=V/U6
-----END PGP SIGNATURE-----
V19.0RC4
Change Log
Release V19.0RC4 (2019-06-11)
Implemented enhancements:
- Use correct index when iterating prioritized frontiers [#2069]
- Add launch flag --disable_udp [#2063]
- Use a convenient global instead of passing use_memory_pools explicitly [#2059]
- Add active container observer [#2058]
- Make announcement_long delay 2 rounds [#2056]
- active_transaction.roots bounding by config instead of confirmation rate [#2051]
- Configurable confirmation history container [#2049]
- Don't escalate confirmed previous/source for elections [#2048]
- Update broadcast_confirm_req to use confirm_req by hash [#2036]
- Move SYN cookies & response channels to separate classes [#2029]
- Add configurable vote generator delay and bundling test [#2028]
- Use a memory pool to reduce block deserialization heap usage [#2025]
- Factor out network [#2024]
- Increase server timeout to receive TCP header [#2022]
- Capture SIGINT and SIGTERM to clean up sockets [#2018]
- Prioritize frontiers for background confirmation [#1982]
- Add more information after a segmentation fault [#1921]
Fixed bugs:
- Fix ASAN issue in ws unit tests [#2074]
- [Valgrind] Increase deadline timer in the rpc.simultaneous_calls test to account for valgrind slowness [[#2073](https://github.com/nanocurrency/
nano-node/pull/2073)] - Fix assorted compiler warnings [#2071]
- Factor out online_reps and gap_cache [#2070]
- Disable memory pools when running on Mac [#2067]
- Websocket/extended confirmation support [#2066]
- Consistently send TCP keepalives [#2064]
- Limit socket queue_size [#2062]
- Fix TSAN error with work_watcher [#2061]
- TSAN error for send_node_id_handshake test [#2060]
- Reduce lock time in UDP ongoing keepalive [#2057]
- Check if existing block is already confirmed in active_transactions add [#2055]
- Handle accounts which have the same number of uncemented blocks when prioritizing frontiers [[#2053](https://github.com/nanocurrency/nano-node/
pull/2053)] - Ledger tests related to epoch conflicts [#2052]
- Fix deadlock in tests (Continued) [#2050]
- Use a pool allocator for shared_ptrs with blocks, elections and votes [#2047]
- Remove count byte from confirm_req by hash [#2046]
- Remove unused std::expected library [#2044]
- Fix deadlock in tests [#2043]
- Fix initialization order bug in nano::node [#2042]
- Factor out vote processor [#2041]
- Add node_constants half_period [#2040]
- Change gap cache voters to use a vector [#2037]
- Bandwidth limiting [#2035]
- Support for boost 1.70 in load tester [#2034]
- Remove node dependency from secure library [#2033]
- Include ordering fix [#2031]
- Factor out election [#2030]
- Remove unnecessary copies when using lmdb cursors [#2026]
- Sort includes by category using clang-format [#2023]
- Increase tcp_io_timeout for test TSAN/ASAN builds [#2019]
- Bump protocol version [#2017]
- Update stringstream test sink to bounds check the strings [#2016]
- remove sleep from test [#2015]
- Add threshold optional to RPC unopened and ledger [#2014]
- Websockets: prevent re-sub [#2001]
- Print info about network and path, when running daemon [#1953]
- Add blocks_not_found in RPC blocks_info response rather than an error [#1950]
Additional binary releases:
- Official Docker Instructions
- Nano CentOS repo
sudo yum-config-manager --add-repo https://repo.nano.org/nanocurrency-beta.repo
sudo yum install nanocurrency-beta
nano_node-beta
installed to bin
Hashes and GPG Signature (keys located in source etc/gpg/
).
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
Below are sha256sum hashes for version 19.0RC3
Signature verification can be done against the signature for argakiig in the source
code repository (etc/gpg/)
1f96bbf2fd8b7fbda53517ed73e3b08588b3085c1189abac4bb7dc8849f8216d *nano-19.0RC4.tar.gz
b1e7b556279bbb84467fca7d8550603302032ee37c661ddbadaa9a4c5ca599a6 *nanocurrency-beta-19.0RC4-12.el7.src.rpm
a789b368d4042d6c747c6062189b07d8fba475dcb57532f08b5ea5453a540894 *nanocurrency-beta-19.0RC4-12.el7.x86_64.rpm
71bfc1bf45a014607e8f5d04a7f110d967ed5ede16a604c6a741b833c15bd584 *nanocurrency-beta-debuginfo-19.0RC4-12.el7.x86_64.rpm
3fb64c4cfcd3a07dd67f19ac4d9847a35d4ddffc56f2c977b8320d619d7dbbe9 *nano-node-19.0.RC4-Darwin.dmg
7ff54717d4579e5bd3ecfffe905f494523d7ebcd3b876dcb8749fd554b7407bf *nano-node-19.0.RC4-Linux.tar.bz2
eeb315c8fdca1aa0edee1f523165d15ee3c12bcc610729c0f1d4ceacac3f0911 *nano-node-19.0.RC4-win64.exe
7d8a05147dce9c3f97dacbdb51ff276d46e491953b1788a935f105cdccf3d261 *nano-node-19.0.RC4-win64.zip
-----BEGIN PGP SIGNATURE-----
iQEzBAEBCAAdFiEEiV3g3/hlCzeiBTTjgERoJPn9OloFAl0ACWIACgkQgERoJPn9
OlpuKQf/eDj/cm7rSLc70cbkGUIiBPJeh9Y4FDOyXqdLI2qgfyEeZPv+4eMY10EM
EE/w8YeHCNvY+hFImULLEBv6qgWSrSS4QygeX1eBYuGgS70T6WSuIieG5H7U8+yE
sRH9/9eDMVljSh+wCAq+uhxEPUDke36G0+HuGYbgqzXKi5+TRl61Us/0wk794ZHD
df09Yxfk07/LbC/Tv1l8DylLtA0t3Ccjlxdv041+nKfB3TgeE7HHrXm/GxN41vZ8
+dcfZqByz6bZMQcn9acBeQk6R+tZa58kL+dijxE3RxmQFTyr1AvJ47I8gs+/aLkS
LpqfeDcDRVfnCIG1daipBiaMJI3aOA==
=8WJc
-----END PGP SIGNATURE-----
V19.0RC3
Change Log
Release V19.0RC3 (2019-05-22)
Major Changes:
- Add support for realtime network traffic over the bootstrap TCP port [#1548]
Implemented enhancements:
- Fix off by one error in frontier req server [#1992]
- Bounded active transaction [#1990]
- Add severity logging levels, and send errors to syslog/Event Viewer (incl failed rollbacks for confirmed blocks) [#1973]
- Framing support for realtime network messages [#1972]
- Move common UDP/TCP channels functions to transport [#1971]
- Fixing dynamic re-work and trend from elections [#1968]
- Makes sure a write lock can be avoided when launching an inactive_node [#1967]
- Send live network messages over TCP [#1962]
- Backup config files when upgrading [#1959]
- Reduce length holding read transaction open for in confirmation height processor [#1954]
- Replace xxHash with blake2b [#1919]
Fixed bugs:
- Fix TSAN error for the rpc.database_txn_tracker test [#2013]
- active_transactions test cleanup [#2012]
- Update test script [#2011]
- Join threads in socket tests [#2009]
- generate difficulty was passing hash by ref [#2008]
- WebSocket fixes and improvements [#2007]
- Set minimum difficulty for RPC "work_generate" [#2006]
- Rename active_difficulty RPC response [#2005]
- active_transactions.prioritize_chains timing fix [#2004]
- Decrease logging level for "Reserved sender" message [#2003]
- Fix TSAN error with test confirmation_height.conflict_rollback_cemented [#2002]
- Remove debugging assert from socket [#2000]
- use correct namespace to fix literal usage in active_transactions [#1999]
- Fix load tester for mac with boost 1.69 [#1998]
- Fix RPC secure build [#1997]
- Fix test by disabling confirmation, as a result the block wont be con… [#1996]
- Reinstate debug_rpc command [#1995]
- Apply Blake2b AVX2 changes [#1994]
- Clean up json upgrade code/unused variables [#1993]
- Test peer caching on node restart [#1991]
- Rewrite load tester in C++ [#1989]
- Add unnecessary lambda capture to please VS2017 [#1988]
- Show opencl device memory stats [#1987]
- Fix UDP channels insert [#1986]
- Update config path on macos/boost 1.69 [#1985]
- Work multiplier format and RPC work_validate fix for lower difficulties [#1984]
- Fix race when notifying bootstrap initiator listeners [#1983]
- Finish up difficulty/multiplier semantics in RPC work_generate and work_validate [#1981]
- Move io_threads to rpc process config node [#1980]
- Add modify callback to prevent violating boost multiindex invariants [#1979]
- Prevent (optionally) block processor batched writes from being logged by the lmdb tracker [#1978]
- Add specific rpc process config options [#1977]
- Remove unnecessary --debug_validate_ledger CLI option [#1974]
- Version and allow_unsafe upgrade in ipc config [#1970]
- No longer use bin & lib sub-folders in the installers [#1969]
- Fix tests failing after PR#1939 [#1966]
- Stop node when using an incompatible ledger [#1964]
- Fix RPC block_create error getting overridden [#1952]
- LMDB transaction time tracker [#1947]
- Add work check for ledger::process () in Debug mode [#1939]
- TCP socket rewrite with strand and queueing support [#1938]
Additional binary releases:
- Official Docker Instructions
- Nano CentOS repo
sudo yum-config-manager --add-repo https://repo.nano.org/nanocurrency-beta.repo
sudo yum install nanocurrency-beta
nano_node-beta
installed to bin
Hashes and GPG Signature (keys located in source etc/gpg/
).
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
Below are sha256sum hashes for version 19.0RC3
Signature verification can be done against the signature for argakiig in the source
code repository (etc/gpg/)
d86dee78729455434d5173daac52877145ea39a3b7206343a98a839a0b0c7be1 *nano-19.0RC3.tar.gz
b438f3056e6a3679e96516f0898b3112d1833f506f4197a39e5ab3729f10db75 *nanocurrency-beta-19.0RC3-11.el7.src.rpm
4efa9f79c4a53ab786cfa4b6b487f79e3ae9c31803f86b7b3af9840b7fe10ff8 *nanocurrency-beta-19.0RC3-11.el7.x86_64.rpm
9115fad0f574bb487754a513fb24a46742c164893b35daf89634e3e43005fd01 *nanocurrency-beta-debuginfo-19.0RC3-11.el7.x86_64.rpm
3657f0f2ee1e167ab15841bbeba152ea123de7d50974067a26ba046f4aa3c73c *nano-node-19.0RC3-Darwin.dmg
d4e66438915a4b7b13c9533904202a8073641d6cad8da30da7a07164f9ebb196 *nano-node-19.0RC3-Linux.tar.bz2
5cc7a12462dbe9915000546cf8f6cb87b592edbba4479a2cb8ebcf6cd8c188ab *nano-node-19.0RC3-win64.exe
2729acd6d49d86a3672ae53fe9e73e8afcd96786516e2ffbd620c09b78d36154 *nano-node-19.0RC3-win64.zip
-----BEGIN PGP SIGNATURE-----
iQEzBAEBCAAdFiEEiV3g3/hlCzeiBTTjgERoJPn9OloFAlzlkRYACgkQgERoJPn9
Olomigf/XuXp/Ohjo6v0BsjsiHRufmTbirNzseh3VuxLEkXIR8LwYdxvHzpj2OI2
7gi2yTkuNvBedAYG2wkwP+xe3nPOlflGRacn863fhMYcPyiNKLT4khlo5aRsT1+3
6M+/QLnr2KhrCr48JzLq45CmSNZoq0/pGVRBkXSTNo5M1xZumBLjxKP1RglVafog
y+hkxMZW4uAYB5G/HrzI7x3bfMuQob2gpLI+tN0keSkNhhXn6+OWU5qjuwPhTRR2
zsuNqdMlegsbeARIo0FJO7/I7L/6A4SScvi+F88WkCoPJs9NBH/Y6+1gi/wMc9zS
ke67Xejl3KMNnCJglPZEMHc3/kv1VA==
=3vx9
-----END PGP SIGNATURE-----
V19.0RC2
Change Log
Release V19.0RC2 (2019-05-06)
Implemented enhancements:
- Allow long running read transactions to be broken up [#1951]
- Fix our warnings [#1942]
- TSAN suppressions file [#1941]
- Add CLI command for dumping any frontier-unchecked key matches [#1915]
Fixed bugs:
- nano_rpc included in packaging [#1961]
- updating work_watcher::run [#1960]
- Pass command line arguments (network/data_path) to nano_rpc child process [#1957]
- Simple ledger validation CLI command [#1956]
- Add pull request failure to stats [#1955]
- Fix regression introduced by 100-continue [#1949]
- Fix some websocket test issues [#1948]
- Update Dockerfile [#1946]
- Add nano_rpc to Docker [#1945]
- Work value in RPC work_validate response [#1943]
- Improve receivable_processor.send_with_receive test [#1940]
- Set defaults for block_sideband [#1922]
- Not all versions of GCC support -fsanitize-blacklist [#1656]
Additional binary releases:
- Official Docker Instructions
- Nano CentOS repo
sudo yum-config-manager --add-repo https://repo.nano.org/nanocurrency-beta.repo
sudo yum install nanocurrency-beta
nano_node-beta
installed to bin
Hashes and GPG Signature (keys located in source etc/gpg/
).
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
Below are sha256sum hashes for version 19.0RC2
Signature verification can be done against the signature for argakiig in the source
code repository (etc/gpg/)
a8780c4b3b8dd261c7f6324d08e82c312cb7bf8a865b6a24990186ecd654e780 *nano-19.0RC2.tar.gz
212d111006de03209b4af7bb0dbe39bd1f5e7bd9b89eb51913de0ab42c3b83d9 *nanocurrency-beta-19.0RC2-10.el7.x86_64.rpm
7e59180d979fdc389724c6ad5cd71502e44f6e5f14cca61b9e71da5e666dafed *nanocurrency-beta-debuginfo-19.0RC2-10.el7.x86_64.rpm
2758dfc404131bd10ce1433cb61855f4aafb810166890239d2650f725c74d312 *nano-node-19.0RC2-Darwin.dmg
136250e001e394ca29f60b48e2484f23b31d586ba22c43f8af7bfef0faef0679 *nano-node-19.0RC2-Linux.tar.bz2
566697a4ddd2482cd704cb28f9767696f65b526ffe662d99ffc651fe81cf2fc5 *nano-node-19.0RC2-win64.exe
6ac3a79dd314a6a907eaec95d2c6025570633ba6e838ed8713fdb5aa6591ec2d *nano-node-19.0RC2-win64.zip
-----BEGIN PGP SIGNATURE-----
iQEzBAEBCAAdFiEEiV3g3/hlCzeiBTTjgERoJPn9OloFAlzQsm0ACgkQgERoJPn9
OlpR/Af/RA/58W39WmtNoZslTReyWpr3Ep1GQpfTGh6Hb1Me6nB+Tf4a9gWYbJpU
CrQVu/pnJXp2IrRqD0t40UiVruaZ+kDKKw270+T+Jjr0drWvwLF5ZVJMIrpToUwA
sD8v041Dxy3odHWSvOEOsU3vpyjZI2HXDQjxwMqEPfH5FSPnp5zh0njVWW/vShLp
gFN8OjRgHU8wqq475fVtA2vB6H+NSnedp2ytvs5mkvEiL/+L/vL9HEXlnU+Ihoxt
+0VNMK1IYucwpoAYqdiTNioR5LE5ssYn3oF/z2MnYFJ/nr2jWcU4Mem3KqjwqQS8
7ci/8DQ52DaXUlk3mk/q7U+vKG0Fww==
=8x2J
-----END PGP SIGNATURE-----
Version 19.0RC1
Change Log
Release V19.0RC1 (2019-04-27)
Major Changes:
- Add confirmation height [#1770]
- PoW Client Compute and Resend Work based on network load [#1336]
- Trending active_transactions difficulty for an average [#1858]
- Emit "nano_" prefixed addresses [#1771]
- RPC server is moved to a new process [#1874]
- Websocket support [#1840]
Implemented enhancements:
- Try to fix some version-specific clangformat formatting issues [#1927]
- Activate confirm_req_hashes for beta network [#1926]
- Cleanup test files on Windows after executing test binary [#1910]
- Immediately stop inactive node active_transactions loop [#1909]
- Websockets - subscribe to votes [#1908]
- Websockets - filtering options [#1907]
- Websockets - check for subscriptions before proceeding [#1906]
- Remove delay exiting node in request processor [#1904]
- Add pulls cache for long bootstraps [#1903]
- Update confirmation heights with new async timing [#1899]
- Delete unused rpc.cpp [#1897]
- Recalculate work from wallet [#1895]
- Port config cleanup, allow running tests alongside beta node [#1891]
- Remove vote generator delay [#1889]
- Add copying operation to block builder [#1886]
- Create new node ID on each launch & support keepalive with preferred ports [#1885]
- Reduce work.eco_pow intermittent failure rate [#1882]
- Update confirmation height in another thread [#1877]
- Refactor preparation for moving RPC out of process [#1872]
- Remove ed25519 and lib library circular dependency [#1870]
- Remove circular dependency between secure <-> lib libraries [#1867]
- Various minor coding style updates [#1863]
- Reinstate preconfigured keepalives [#1854]
- clang for travis [#1846]
- Support sending decimals from QT wallet [#1843]
- Allow block_processor variables tuning with launch flags [#1842]
- Add the concept of message channels to the node. [#1837]
- Moving network sizing functions [#1836]
- Separating the concepts of: [#1835]
- Renaming udp_buffer to message_buffer [#1834]
- Removing send_confirm_req functions [#1833]
- Add difficulty limit for RPC "work_generate" in config.json [#1830]
- Clean up and simplify calls to get buffers to messages. [#1829]
- Externally connect to the tcp socket [#1828]
- Move RPC out of node process [#1827]
- Rename republish_x to flood_x to better describe what we're doing. [#1825]
- Remove node_id_version [#1824]
- Remove nano::network::on [#1823]
- RPC account_history add block height and optional reverse [#1822]
- Periodically check for unconfirmed frontiers and start elections [#1821]
- Get account history starting at a block and ending in head [#1820]
- Log wallet lock/unlock [#1817]
- Start elections for all forks of unconfirmed blocks [#1815]
- Output error if lmdb env cannot be opened [#1811]
- Use adjusted difficulty for trees in active transactions [#1810]
- Use to_bytes in bootstrap as well [#1807]
- Require standard layout in mdb_val [#1806]
- RPC accounts_pending - sort by amount [#1804]
- Improve representative crawler [#1803]
- Confirmation height enhancement [#1801]
- Improve CLI --wallet_import [#1800]
- Support difficulty for RPC "work_generate" [#1798]
- Replace nested if/else with map for no argument rpc_handler functions [#1796]
- Add TCP server timeout [#1790]
- Use the error code overloads for socket shutdown/close [#1786]
- Support difficulty for RPC "work_generate" [#1780]
- Support difficulty for OpenCL generate_work () [#1775]
- Add subtype field for state blocks in RPC block_info, blocks_info [#1774]
- RPC config versioning, remove unused options [#1768]
- Cleanup unused member functions in secure library and various other cleanups [#1764]
- Use optimized Argon2 source for all x86_64 builds [#1762]
- Improve rep tracking [#1756]
- Check that full is not empty and assert [#1753]
- Remove implicitly converted argument [#1751]
- Support difficulty for OpenCL PoW [#1749]
- RPC pending - sort by amount [#1748]
- Ability to limit CPU rate for POW [#1734]
- --diagnostics CLI option to check & update config.json file [#1733]
- Network selector [#1729]
- RPC unopened [#1727]
- Investigate supporting the Expect header in RPC [#1671]
- Check if block processor is full in bulk push server [#1668]
- Allow block_processor variables tuning with launch flags [#1660]
- Slight OpenCL improvements [#1634]
- RPC Account history filter [#1355]
- Enhancement Request: Update Ledger RPC action to show unopened accounts with pending balance [#1166]
- Enhancement Request: add optional account_filter option to account_history RPC [#1110]
- Easy way to switch between beta/live network [#1099]
- RPC/CLI inconsistency with wallet_change_seed [#793]
- Official wallet doesn't support decim...
Version 18.0
Change Log
Release V18.0 (2019-02-21)
Major Changes:
- PATCH to indicate RC, Updated Version responses [#1643]
- Splitting wallets from ledger database. [#1610]
- Add sideband information to database. [#1554]
- Deprecate all existing API calls [#1540]
- Disable voting by default [#1509]
- Rename internal project bits from RaiBlocks to Nano [#1504]
- Block builder [#1451]
- Confirm dependent active elections [#1438]
- Support external RPC servers via IPC [#1434]
- Disable voting by default [#1369]
- Zero-terminate all things we refer to as strings [#1223]
- Node ID in RPC & QT wallet peers list [#946]
- Separate DB file for wallets [#210]
Implemented enhancements:
- Make confirm_back () non-recursive [#1754]
- Cli debug online weight [#1744]
- Respond to keepalive messages within a TCP socket [#1742]
- Fix reported by TSAN issues [#1739]
- Make the sideband open block start at a height of 1 [#1737]
- Update CLI --debug_validate_blocks to validate sideband data [#1735]
- Remove unnecessary cast [#1730]
- Cleanup unchecked table after each bootstrap attempt [#1724]
- Use cpack to build zip for win [#1706]
- Exclude miniupnpc install () [#1701]
- Factor out signature checker [#1700]
- Configurable timer clock type [#1699]
- Add alarm operations to memory stats RPC [#1694]
- Add missing beta/live network helper constants [#1693]
- Factor out block processor [#1692]
- CLI to clear online_weight & peers [#1689]
- add CLI switch for adjusting Sideband upgrade batch sizes [#1684]
- Create and use new network helper constants [#1680]
- Improve votes cache usage [#1678]
- Fix our own compiler warnings [#1677]
- Fixing issue where blocks were not being rebroadcast immediately upon… [#1657]
- Improve wallet_history consistency with other RPC [#1654]
- Make nano_wallet for Windows console [#1653]
- Multi-thread the signature checker [#1651]
- Filter outdated_version errors from logging [#1649]
- Long-term online rep weight tracking [#1648]
- Update balance on ratio change [#1647]
- Count processed forks in stats [#1646]
- Add support for getting the current thread's name as a string [#1639]
- Better handling of TCP accept overflow [#1638]
- tsan: blacklist mdb [#1637]
- Memory stats in RPC [#1632]
- Add version info to Info.plist [#1631]
- Improved error message when unable to accept RPC connection [#1626]
- RPC to clear stats [#1625]
- Increase default max log folder size to 128Mb [#1623]
- Add optional "offset" & "reverse" parameters for RPC chain [#1622]
- RPC to clear stats [#1620]
- Increase default max log folder size [#1618]
- RPC uptime [#1616]
- Remove deprecated bulk_pull_blocks [#1615]
- Upgrade preconfigured peers in config.json file to use nano url instead of rai [#1613]
- Splitting wallets from ledger database. [#1610]
- More transaction cleanup in preparation for wallet splitting. NFC [#1609]
- Cache peers in database [#1608]
- Separate transaction sources [#1607]
- Multithread signature_checker [#1606]
- Add existing blocks check for lazy bootstrap pulls [#1603]
- Indicate active network in Qt wallet [#1601]
- Rename announce_votes () to request_confirm () [#1598]
- Update FindBoost.cmake [#1597]
- version numbers missing on macOS [#1596]
- Make asan/tsan link on macOS, add tsan cache variable [#1593]
- Connect to a bootstrap peer only once concurrently [#1590]
- [QT] Automatic determinictic accounts check after leaving the synchronisation state [#1589]
- Change order of block table lookups [#1587]
- Remove bulk_pull_blocks [#1585]
- Convert deserializers to use exceptions [#1584]
- Add size expressions to bootstrap types [#1580]
- Remove checksum table [#1579]
- RPC debug command line option [#1577]
- Remove unnecessary inline specifier [#1572]
- Accept seed in RPC wallet_create [#1567]
- Priority lazy bootstrap for wallet accounts [#1565]
- Disable clang format where versions disagree [#1562]
- Remove gap_previous check from epoch_block_impl [#1559]
- Renaming block_processor::process_x functions. [#1558]
- Add sideband information to database. [#1554]
- Use builder in CLI debug commands [#1553]
- Extracting function to calculate block successor offset [#1552]
- Optional deterministic index in RPC account_create [#1547]
- Local votes cache to reduce CPU usage for representatives [#1542]
- Set outdated-version status on livenet as well [#1538]
- Block method refactor [#1535]
- "update_existing_accounts" option for RPC wallet_representative_set [#1531]
- Adding logging object to mdb_store. [[#1530](https://github.com/nano...
Version 18.0RC3
This is a Beta Network Release -- binaries will only work on the Beta network
Change Log
Release V18.0RC3 (2019-02-18)
Implemented enhancements:
- Cli debug online weight [#1744]
- Respond to keepalive messages within a TCP socket [#1742]
- Fix reported by TSAN issues [#1739]
- Update CLI --debug_validate_blocks to validate sideband data [#1735]
- Remove unnecessary cast [#1730]
- Cleanup unchecked table after each bootstrap attempt [#1724]
- Use cpack to build zip for win [#1706]
- adding support for rpm building [#1175]
Fixed bugs:
- [ASAN] replace junk data with 0 for peer_put () [#1745]
- [ASAN] don't create more wallets in vote_minimum test [#1743]
- Fix some asan issues in tests [#1741]
- Initialize peer_information members [#1738]
- Make the sideband open block start at a height of 1 [#1737]
- block_store.sideband_height test [#1736]
- Update appveyor.yml [#1722]
- Update github issue template bug bounty info [#1720]
- Support both nano_ and rai_ prefixes for unit conversion RPCs [#1719]
- Fix uses of lambdas on GCC < 7.1.0 [#1715]
- Find pthread in CMakeLists.txt [#1714]
- Only blacklist the TSAN file when using clang compiler [#1713]
- Fix wallet import for old JSON files [#1712]
- Appveyor: fix building PRs during CI [#1710]
- Update missed rai:: references to nano:: [#1709]
- ipc: Handle rpc actions doing async ops [#1708]
Additional binary releases:
Hashes and GPG Signature (keys located in source etc/gpg/
).
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
Below are sha256sum hashes for version 18.0RC3.
Signature verification can be done against the signature for argakiig in the source
code repository (etc/gpg/)
bf2682a8a96462ddfae242683b1e5b4bf2884d2b62b279dc1b2cc229a2ab5d48 *nano-18.0RC3.tar.gz
4fab0470fa7a5b0ff7083ed8a1a731578920703d616fca3a4faa018cab7e30e9 *nanocurrency-beta-18.0RC3-7.el7.src.rpm
84e04eb6f037de0108fa6f7fc7895a21e69bffa3c7c327e7a90bf1f58ae4be17 *nanocurrency-beta-18.0RC3-7.el7.x86_64.rpm
b2e45fc806d1e67a7da7e38b745f061b9deb4f2fc59743214c87304e4017015c *nanocurrency-beta-debuginfo-18.0RC3-7.el7.x86_64.rpm
54340cd7afa27ee49a5fc365e8a0db619a5ed72a37deaff7da03a64b20a1b573 *nano-node-18.0RC3-Darwin.dmg
7dc06cb6d510aec42ec3fc746194aa7bda619193613ad4363887ec5201f0bce8 *nano-node-18.0RC3-Linux.tar.bz2
39df37a30c50972f53bf8c7d30d39a92d64fe7dc601b83495875447f93080fb4 *nano-node-18.0RC3-win64.exe
95617bea88e2c8a42d0ad4e39aa83c70765fc8a0f03d3c74f11f8eb8f0d9df7c *nano-node-18.0RC3-win64.zip
-----BEGIN PGP SIGNATURE-----
iQEzBAEBCAAdFiEEiV3g3/hlCzeiBTTjgERoJPn9OloFAlxrIA4ACgkQgERoJPn9
OlqR6AgAnEjhD7xzO9EzHyL8iXzv/OwgMyyafY0pOR3xhX8gRT45Npn8uRHm0Bgv
fsoQODMMrcpt5RgwFbt6NtVDWmX5aMnG1L5QHMKGFB//flxB2HYR6/WNBBjykG88
NMuE6nYdYD37OpcLOYDrb6Yh7au1msIheGTLJHj+/G+WEs0qfiDxzY/f+ltPpQzA
1Nf54qt8ivSJbQP7d6FV/ZbHoHwijWHOHZerrK/xLN0Hs8zljYbyzY9QY2HqKjgh
5IQOFAsDojwEMEhmhksWXbyev3Rg2puzObFc5IqY8tc9WGTklLiSMUbEhTsZR09K
h6HlFk4LlD6XEp8CvnddH5usFX3lTQ==
=8BVj
-----END PGP SIGNATURE-----