Stay up to date on releases
Create your free account today to subscribe to this repository for notifications about new releases, and build software alongside 40 million developers on GitHub.
Sign up for free See pricing for teams and enterprises
argakiig
released this
Change Log
Release V20.0 (2019-11-12)
Major Changes:
- Add ability to start pow server as child process [#2331]
- Support epoch 2 [#2310]
- Active elections loop tuning [#2306]
- TOML config file support and migration [#2221]
- Adds RocksDB support [#2197]
- RPC publish optional work_watch flag to add to work_watcher [#2168]
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:
- Improve bootstrap for accounts with public key = existing block hash [#2400]
- Improve bootstrap frontiers confirmation [#2394]
- Lazy bootstrap memory usage improvements [#2385]
- Vacuum after upgrade [#2370]
- Use std::condition_variable_any with timed locking [#2365]
- Lazy bootstrap retry limit [#2362]
- 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]
- Add ability to start pow server as child process [#2331]
- 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]
- Fixing some unused variable warnings. [#2285]
- 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]
- Adds RocksDB support [#2197]
- 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]
- RPC publish optional work_watch flag to add to work_watcher [#2168]
- 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]
Fixed bugs:
- Update live bootstrap_weights [#2404]
- Node id handshake container not protected during push [#2402]
- Warn if control is enabled with non-local bind address [#2401]
- [ASAN] UPNP url memory leak [#2397]
- Updates to TOML generated docs [#2396]
- update dockerfile to use cached rocksdb [#2395]
- [TSAN] Data race in active_difficulty.recalculate_work test [#2393]
- Fix occasional failures for core_test.distributed_work* tests [#2392]
- use cached build artifacts [#2391]
- Incorrect total memtable size used with RocksDB [#2390]
- [Valgrind] Various uninitialized data accesses [#2389]
- Fix early return preventing mutex lock in attempt_restart_check [#2387]
- Prevent concurrent bootstrap populate_connections () [#2386]
- [Valgrind] Uninitialized memory in distributed_work.no_peers test [#2384]
- Add mutex lock to RPC bootstrap_status [#2383]
- Fix lazy mutex unlock via mutex [#2382]
- Target osx 10.12 deployment [#2381]
- RPC block_create fixes [#2380]
- [ASAN] memory leak between tcp channels and sockets [#2378]
- Add error handling to RPC process without json_block [#2377]
- Stop work generation before stopping threads waiting for work [#2375]
- regex check for beginning of string -v allowing --vacuum to fall through [#2374]
- Fix link ordering issue in core_test (ubuntu/boost 1.71) [#2373]
- allow for updated TARGET usage by updating cmake in nano-env:base [#2372]
- Adjust single-hash confirm requests [#2371]
- Improve distributed_work stopping with ongoing worker tasks [#2369]
- Fix non-restarting timer in vote processor log [#2368]
- Badge URLs [#2367]
- Do not increase pull attempts counter after network errors [#2366]
- Latest release, latest tag and discord badges [#2364]
- move min bootstrap and traffic to v16 [#2363]
- Docker USER support [#2361]
- ASAN leak when exiting node [#2360]
- Improve sample configuration file [#2359]
- Update travis beta-osx job with cached qt [#2358]
- Update Argon2 to release 20190702 [#2357]
- ASAN error in vote_by_hash test [#2356]
- Distributed work test failures under ASAN [#2355]
- Add upnp port mapping description [#2354]
- TSAN error in node.peers test [#2353]
- Add support for launch flags passed to nano_wallet [#2352]
- TSAN error with block work [#2351]
- Update beta network bootstrap weights for v20, cutoff 14M [#2350]
- Fix link ordering issues [#2348]
- Fix bootstrap attempt not stopping [#2347]
- Suppress RocksDB TSAN warnings with Clang [#2345]
- create build cache for mac qt in external repo and pull in for testing and artifacts. [#2344]
- Fix disabled ongoing unchecked cleanup [#2342]
- RPC unchecked json_block option [#2341]
- Output error message with qt wallet if RocksDB is enabled in config but is unsupported [#2340]
- Fix active difficulty calculation [#2338]
- Update from_multiplier () overflow checks [#2337]
- tsan: fix race in inactive_votes_cache_multiple_votes [#2334]
- include nano_pow_server as a submodule and build into ci framework for tagged releases [#2333]
- Fix work_pool.opencl test hanging [#2332]
- Secondary list of peers for generating work [#2330]
- Fix UPnP [#2329]
- Object stats for work watcher container [#2328]
- Profile work validation [#2322]
- generate sample node and rpc toml after building nano_node target [#2321]
- Add confirmation request count to election_status [#2320]
- Account creation refresh in qt wallet [#2318]
- Fix init order warning [#2317]
- Add some RocksDB TOML config options to tune memory usage [#2316]
- Don't comment toml tables in generate_config [#2314]
- Set NANO_ROCKSDB define even when set to OFF [#2313]
- Snapshot/Vacuum should use the rocksdb config option [#2311]
- Classify traffic stats correctly [#2309]
- Quality of life updates for distributed work [#2308]
- ws keepalive [#2307]
- Active elections loop tuning [#2306]
- Make generate_config produce commented-out entries by default [#2305]
- Checking for frontiers only if necessary [#2302]
- Verify pubkey against special keys in wallet [#2299]
- Fix a bug in the rep_block -> representative conversion [#2297]
- Support --config option in Qt wallet [#2295]
- Fix rpc.work_peer_bad [#2294]
- Websocket subscription for work notifications [#2289]
- Build RocksDB library as portable in docker [#2288]
- Add --config option to rpc process [#2287]
- Improve bootstrap attempt locking [#2286]
- docker
--cache-from
set as single string argument with = [#2284] - Fix off by one in broadcast_confirm_req_batch [#2280]
- Fix active transactions difficulty update for state blocks [#2279]
- Fixing test to use unique_path each time. [#2278]
- Use distributed work in work watcher [#2277]
- add master tag for beta and caching for subsequent artifacts_beta builds [#2276]
- add rocksdb to build artifacts lacking it [#2275]
- Fix possible issue in active_transactions.adjusted_difficulty_overflow_min test [#2273]
- Fix delay in stopping the node [#2271]
- Non-blocking work watcher loop [#2264]
- Prevent supurious wakeup in active transactions request loop [#2263]
- Set USE_RTTI before building RocksDB in docker [#2261]
- Cache cemented count [#2259]
- No longer need enable_control when getting the cemented count [#2258]
- Post to worker thread in qt wallet when doing write tx's on io threads [#2256]
- Remove preferred TPC response channels [#2254]
- Extend toml default-configs test [#2252]
- Fix some time-related configs being overriden with 0 [#2251]
- Lambda formatting that works across clang-format versions [#2250]
- Update weights following beta refresh distribution [#2249]
- Use defaults for amounts in toml [#2248]
- Move protocol versions to network_params [#2246]
- No required options in TOML parsing [#2245]
- Fixes account_history RPC to include receive blocks when filtering accounts. [#2244]
- update beta network header_magic_number to finalize beta network reset [#2243]
- Docker changes for new TOML config [#2241]
- Fix TSAN error in adjusted difficulty test [#2234]
- Simplify process_loop log timing by using nano::timer [#2229]
- Set application/json as header content type for work peer requests [#2227]
- Header 'Content-Type': 'application/json' not set in work peer requests [#2224]
- Remove landing store [#2223]
- TOML config file support and migration [#2221]
- Fix failing slow_tests [#2219]
- Cache rep weights [#2217]
- Make some changes suggested from cppcheck [#2213]
- Add mdb database test from v14 to v15 [#2212]
- Increase lifetime of temporary rep variable [#2209]
- Simplify vote generator logic with a dual sleep [#2203]
- Deprecate nano- and xrb- address support [#2201]
- Fix rpc.node_id test [#2200]
- Only use -Werror by default with ci [#2199]
- Add support for election info in websocket confirmations [#2195]
- Wallet actions can take a long time due to flush() being called [#2194]
- Use node_ prefix for node ID [#2191]
- Fix building error caused by #2151 [#2189]
- boost 1.70 requires log_setup component specifically updated CMAKE 1.… [#2185]
- RPC version network label and identifier [#2184]
- Fix lazy bootstrap balances insert [#2183]
- Principal representative factor as a network constant [#2182]
- Update node ID to use node_ instead of nano_ prefix [#2181]
- escaping regex for deployment on master or releases/v* branches [#2180]
- fix boost downloads [#2178]
- More preparation for new database backends [#2177]
- Extract confirmation height to its own database [#2174]
- Move alarm/operation out of node [#2173]
- add git commit hash and compiler info to logging and version calls [#2170]
- Travis/streamline [#2169]
- Allow the RPC server to be run on a different system [#2162]
- Update entry script [#2160]
- Fix compile errors in release mode after warning->error change [#2158]
- Add RocksDB to the build system [#2157]
- Remove querying pending confirmation height in various operations [#2156]
- Fix node_id assign for bootstrap_server [#2152]
- Remove extra core utilised during docker deployment build [#2150]
- Fix unused variable error in deployments [#2147]
- [Valgrind] Check if running under valgrind before doing death tests [#2145]
- Refactor ledger database code for reuse with different backends [#2136]
- Suggestion: allow docker container to die when broken [#2123]
- Remove compiler warnings (incl from third party headers) [#2072]
- Fix slow_tests [#1923]
- Show active network in RPC version [#1884]
- Migrate config.json to reference and override files in TOML format [#1878]
- Do not rewrite config.json on node boot [#1781]
- Docker Image - Redirect logs output to Docker logs [#1612]
Additional binary releases:
Hashes and GPG Signature (kesy located in source etc/gpg/
).
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
Below are sha256sum hashes for version 20.0
Signature verification can be done against the signature for argakiig in the source
code repository (etc/gpg/)
f762b74b209aae4d0e8b41b87cb39224c58600bfe693d8c4b417a70ed32e8a7b *nano-20.0.tar.gz
c4bd90aba5ce18f69f2335a6e268e8f0708b83cd1ec1ce1ad1ecb0846518ec95 *nanocurrency-20.0-19.el7.src.rpm
111b3540e6508267d77e3a042e6195057c02c00928ebf985fd6bd9bb74f22db2 *nanocurrency-20.0-19.el7.x86_64.rpm
977e07268f9da89debfa4dba0ff6575ac6d8379d5d9cf9d6e29adc00d607e176 *nanocurrency-debuginfo-20.0-19.el7.x86_64.rpm
b770c78e7bbce29604b9d83edf36498319b3d568f1d1a9132acdb004f3e20ce4 *nano-node-V20.0-Darwin.dmg
ab03b67acf7114fce73a8ff0582bf375f959311b4b8b85938164149e21dce5a4 *nano-node-V20.0-Linux.tar
353010b60631ee7af898792f5d8ef6d19330284497985effc7985fa3bec308e3 *nano-node-V20.0-win64.exe
92f730c20e11ee7d12c6c9c6f5b68b2d25c8c491a797a74bf6aea3500db54325 *nano-node-V20.0-win64.zip
-----BEGIN PGP SIGNATURE-----
iQEzBAEBCAAdFiEEiV3g3/hlCzeiBTTjgERoJPn9OloFAl3LWKcACgkQgERoJPn9
OlqJ7wgAjrSm5/I1lhriFkPsetigaoZnF3SWf/nNE+9neiXoSzMl1J0z5b1eA8cT
XolvkiBoYsBuRKbC3JuKSoFlv84OePKCJZvuhxgApCNdKw7C6g1KQ/TQnOoopAY6
Q+fzUSMKmX5u7wcRD/0f4Y1vgdqoopj6eILpzw3zvOoNGeX0oMwpOPkJp9xkRVxL
AcUUkpy6uz64SdjCMuLxMBSjmZaNr2M7nsOPQvonR7trjjd833qLhCyr808PfLuW
88R3XgMc+/wICVSPOVkV2BNZ+Q03juTK4vi93si82rPm/+MnYAtRRDth5O6OtkBL
lq5zoRIjGvUtPpHvn/Q47ck27KZR9g==
=dCo6
-----END PGP SIGNATURE-----
Assets
11
nano-20.0.tar.gz
15.4 MB
nano-node-V20.0-Darwin.dmg
22.4 MB
nano-node-V20.0-Linux.tar
72.5 MB
nano-node-V20.0-win64.exe
27.7 MB
nano-node-V20.0-win64.zip
33.8 MB
nanocurrency-20.0-19.el7.src.rpm
15.4 MB
zlib1.dll
83 KB