Skip to content

@rkeene rkeene released this Dec 18, 2018 · 563 commits to master since this release

Change Log

Release V17.0 (2018-12-18)

Full Changelog

Major Changes:

  • [v17] Lazy bootstrap improvements [#1427]
  • Prioritizing transaction processing by difficulty. [#1413]
  • Track VBH Rollout [#1339]
  • Track down high memory usage [#1338]
  • Reply to confirm_reqs with a vote by hash [#1335]
  • Add support for Lazy Bootstrapping [#1332]
  • Exclude confirmed & aborted elections from RPC confirmation_active [#1307]
  • Db abstraction [#1127]
  • Implement a Lazy Bootstrapping Client [#995]
  • Batch state blocks signatures verification [#956]

Implemented enhancements:

  • Improve process_receive_many timing logging [#1476]
  • Add epoch timepoint for election end to confirmation_history [#1454]
  • Do not accept incoming bulk_push requests while bootstrapping [#1452]
  • Verify more state blocks if blocks deque is empty [#1450]
  • Reducing the number of alarms [#1444]
  • Update Confirmation Timers to be ms not sec [#1442]
  • Add max_broadcast_queue for rai::active_transactions [#1440]
  • Lazy fallback to legacy bootstrap [#1437]
  • Extend Confirmation History [#1433]
  • Extend "bulk_pull" to have a count parameter [#1432]
  • Update "bulk_pull" to accept a count parameter [#1431]
  • [v17] Lazy bootstrap improvements [#1427]
  • Differentiate between lazy and non-lazy bootstrap in stats [#1420]
  • Prioritizing transaction processing by difficulty. [#1413]
  • [v17] Replay votes in response to a confirm_req for an active block [#1409]
  • Fix secure rpc build [#1404]
  • Difficulty extraction [#1401]
  • Announce cleanup [#1399]
  • Add vote overflow stats [#1394]
  • Replay votes in response to a confirm_req for an active block [#1393]
  • Moving announcements off conflict_info [#1388]
  • Adding deadlines to RPC tests and checking error codes in some more c… [#1385]
  • Fix formatting on master [#1380]
  • RPC confirmation_quorum: optionally include account/ip/rep weight [#1379]
  • Ensure ".clang-format" works with current clang-format tool [#1378]
  • Update .clang-format to be consistent with new version [#1376]
  • Only observe blocks if callback is configured [#1375]
  • Limit the amount of deduplication items we store [#1371]
  • Dedicate a full r hash block to attacker unknown bytes [#1368]
  • Reduce lock scope in active_transactions [#1359]
  • Block uniquer [#1358]
  • CLI wallet_import force wallet creation if requested [#1357]
  • Make signatures non-deterministic [#1353]
  • Single active_transactions mutex for vote_blocking [#1350]
  • Make config upgrades more robust [#1348]
  • Reduce the amount of time spent holding the active_transactions lock. [#1345]
  • Log vote processing time [#1344]
  • Filter password, wallet, key, seed from RPC logging [#1343]
  • Remove unused local shared_ptr [#1342]
  • Reply to confirm_reqs with a vote by hash [#1335]
  • Log UPnP devices only if configured to do so [#1333]
  • Add support for Lazy Bootstrapping [#1332]
  • Bootstrap traffic stats [#1330]
  • Add unreachable host stats [#1329]
  • Fix formatting on master [#1328]
  • Create a separate tail constructor for distributed work [#1326]
  • Remove unused forward decl [#1325]
  • Use is_epoch_link [#1322]
  • Eliminate numerous warnings [#1319]
  • Fix MSVC linker error using rai_bootstrap_weights [#1317]
  • MSVC linker error rai_bootstrap_weights [#1316]
  • Move out peer container and related types [#1315]
  • Immediate election starts [#1314]
  • Logging vote tallies in a single block instead of separate lines. [#1313]
  • Speed up testing by using run_one_for [#1312]
  • Separate vote generation process [#1302]
  • New unit labels from legacy XRB to NANO style [#1301]
  • Add weight option and account filter to representative_online rpc cal… [#1300]
  • Using QSettings to persist application settings for selected ratio scale [#1299]
  • Implement PoW work-based prioritization [#1298]
  • Factor out node_config [#1296]
  • Revert stack size linking for windows [#1290]
  • Better changelog generation [#1287]
  • Build prep enhancements [#1286]
  • Force macOS wallet to use aqua light mode whilst QT adds support for … [#1279]
  • Log common exceptions before asserting [#1278]
  • Save DB random block read with include_active [#1277]
  • Separate config option for network threads [#1276]
  • Support Mojave dark mode [#1275]
  • Remove process_active from confirm_req [#1265]
  • Move port/address parsing to common, where it's declared [#1263]
  • Factor out logging [#1262]
  • Add vote status stats even when vote logging is off [#1261]
  • Name threads by role [#1258]
  • Iterative amount/balance visitor [#1257]
  • Add a max time to batch processes [#1256]
  • Fix deadlock for elections escalation [#1254]
  • frontier_req_server & frontier_req_client accounts deque [#1251]
  • macOS Build Automation [#1250]
  • Updated script to generate source tarball and changelog [#1249]
  • Better build prep scripts [#1248]
  • Change default desktop config.json [#1247]
  • Remove processing blocks from confirm_req [#1246]
  • Additional message stats [#1234]
  • Add a test for bulk_pull_account [#1227]
  • Release assert on DB failures [#1226]
  • Better error messages [#1225]
  • More counters [#1209]
  • Fix misleading message from lambda spawned from gap\_cache::vote() [#1208]
  • Fix generic error message in network::receive\_action() [#1207]
  • Added support for PENDING_HASH_AMOUNT_AND_ADDRESS to bulk_pull_account [#1201]
  • Enhance version rpc [#1194]
  • Add "latest-including-rc" tag for Docker [#1193]
  • 2 feature requests for the RPC call 'representatives_online' [#1192]
  • Enhancement: Add own protocol version to RPC version action [#1189]
  • Blockstore move visitors [#1186]
  • Initial bootstrap weight for betanet [#1179]
  • Remove generate_hash_votes_at from config [#1170]
  • Add --clear_send_ids CLI option [#1163]
  • Feature request: ability to clear Send Idempotency IDs and force send [#1162]
  • Validate pending blocks [#1160]
  • Support a flag for bulk\_pull\_account for including the account [#1159]
  • Checking for a matching environment when unwrapping a transaction. [#1155]
  • Stop test nodes with deadline expired [#1152]
  • Add _read and _write suffixed versions of tx_begin [#1136]
  • Check for invalid private keys in wallet_decrypt_unsafe [#1128]
  • Db abstraction [#1127]
  • Check genesis on startup [#1124]
  • Add representative weights for the Beta network [#1123]
  • Add tests for "bulk_pull_account" [#1043]
  • Node breakup: port mapper [#1038]
  • Implement a Lazy Bootstrapping Client [#995]
  • Batch state blocks signatures verification [#956]
  • Node ID RPC [#948]
  • rai_wallet does not remember scale display of Mxrb [#511]

Fixed bugs:

  • update bootstrap weights [#1480]
  • Update bootstrap weights [#1479]
  • Investigate periodic bootstrap slowness [#1474]
  • Remove random items from the uniquer sets [#1473]
  • Track down potential memory leak with rai::vote [#1471]
  • Consume future outside of client scope [#1466]
  • Shutdown segfault fix [#1463]
  • Election epoch time start [#1455]
  • Fixed issue with incorrect timing computation [#1449]
  • Count state blocks in rai::block_processor::full () [#1448]
  • Division by zero possible [#1447]
  • Fix RPC shutdown in acceptor loop [#1426]
  • Support RCs for changelogs [#1419]
  • Fix iteration in rai::bootstrap_attempt::lazy_finished [#1417]
  • Update bootstrap weights [#1415]
  • RPC: sending 0 amount is invalid with state blocks [#1408]
  • Update GitLab Arch Linux image [#1398]
  • Restart the RPC connection acceptor in the face of errors [#1390]
  • Fix new tests relying on deterministic signatures [#1363]
  • Fix vote_cache [#1362]
  • ASan heap-user-after-free during node.send_single_many_peers [#1361]
  • Actually use also_publish flag [#1360]
  • removing std::endl from filter_request [#1349]
  • RPC logs blank lines [#1347]
  • Track VBH Rollout [#1339]
  • Track down high memory usage [#1338]
  • Update README.md [#1327]
  • Qt fixes [#1323]
  • Mutex covering wallet::items isn't acquired within wallet_destroy. [#1320]
  • Insert race workaround [#1318]
  • Fix incorrect downcast to send_block &. [#1311]
  • Pass wallet reference in to actions and check for wallet liveness [#1310]
  • Exclude confirmed & aborted elections from RPC confirmation_active [#1307]
  • Using decode_account instead of decode_hex in account_move RPC handler [#1306]
  • No longer decrement the count if the entry is empty during account_history RPC call. [#1293]
  • Fix escalation source block check [#1282]
  • balance visitor assertion failure [#1280]
  • account_history RPC count parameter still considers change blocks even though they aren't returned [#1270]
  • Fix node.password_fanout test with running beta node [#1269]
  • Search pending interval [#1268]
  • Bootstrap blocks cannot initiate elections required for wallet receive [#1260]
  • Extended bulk.offline_send [#1259]
  • v16.1 Windows Desktop keeps crashing [#1244]
  • Fix vote check [#1233]
  • Better --snapshot CLI error messages [#1224]
  • Fix mdb\_store::flush() [#1206]
  • Enable bootstrap weights on betanet [#1182]
  • 16.0.0-RC2-beta keeps exiting automatically on Windows, at apparently random times [#1168]
  • Display error message when snapshot file already exists [#1161]
  • Adding virtual dtor to block_store. [#1146]
  • Fix max vote sequence comparison [#964]
  • [bug]is the judgement true:max_vote->sequence > vote_a->sequence? then it may be a replay, not a vote [#962]
  • account_move is broken [#666]

Additional binary releases:


Source tarball included to replace the broken auto generated github one

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

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

Below are sha256sum hashes for version 17.0 releases.
Signature verification can be done against the signature for argakiig in the source
code repository (etc/gpg/)

9496462293e97e510e7976487af986b424c08a3a9b5582b4eec1b8af97841184 nano-17.0.tar.gz
6583ac991e5a6db0d309aab7d40263be64e0794c05979a78e3b4753ffd2f4b8e nano-17.0-Darwin.dmg
a67bd12971c310bfb9648142bfec9ba7efb2689257d90606d8806c1b055a1dd5 nano-17.0-Linux.tar.bz2
95c812cc955f54986b987decf7286d90d46e036d004aee47efc5920ed8e7db92 nano-17.0-win64.exe
-----BEGIN PGP SIGNATURE-----

iQEzBAEBCAAdFiEEiV3g3/hlCzeiBTTjgERoJPn9OloFAlwZSQgACgkQgERoJPn9
OlrpPQgAhV0v5qHzKTyIxdY61P3AY27l6FLiU+OKFDVWu4cKHyBgKmMFE029yfW6
oqojoRrIG7JocqwumHPHkDlMZeNpx9gt+Mwi1P9GoK3/av29ofHe04SzaRUkcoTB
UaSPqs2Dm1ugRvxo7iFb2qM/w0aT4459ODJHUIp2jBbyCPJFadAhpEQq3G394+K/
bGqRwICZA8MYRiM+cy/ozPvESP9FQTtK3bZ/r0uRmPlvjCqrQxOC7rKbJrSRS9xA
c2d4KgOqg5JESz0IvTd9DqcIA1UV1UsxhJumXah8AbhAFMJPtp9El3o5BtRyv9yZ
DsW2z1LFuBwiGbVqxBVLH95ptKPhGQ==
=lNAA
-----END PGP SIGNATURE-----
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

Below are sha256sum hashes for version 17.0 RPMs.
Signature verification can be done against the signature for argakiig in the source
code repository (etc/gpg/)

2e6ed8b54e7ff0b05dff737baebfdf5698456dfb66bb79a518b632ca339a9194 *nanocurrency-17.0-3.el7.x86_64.rpm
c70483cb6b93ddb342e0137ab4054f246dedc3f57172691d7d53f8a923da31b6 *nanocurrency-17.0-3.el7.src.rpm
-----BEGIN PGP SIGNATURE-----

iQEzBAEBCAAdFiEEiV3g3/hlCzeiBTTjgERoJPn9OloFAlwb6UEACgkQgERoJPn9
Olo0OQgAhpCnVyfqmPGjMWr86DseUBFpZTokyXGS+jxB5S89bo/aCl+yr0VETVeN
BQ6JbmNjStctnh2ogLoYmRhYp6BDTmaF+cVTn46RsSUioITdLkoNyV3zXESAmARm
uS6ZMouh8QFl2YzLlo4+DW5DI9QwvHuGdvGr+EVYChZ+DqcF3/FdQxI2l1IyAESE
b90AFSEroQS9/MdfJQXLWnxmPF9au6xRyIwF3g9kijLUr2+HAaKPSu7dO5AXzG8y
qRgMqya1T4Z0iJd1vvUpd/Om+rN5JGCgjt1QwCByGNr+Y3ak5Yq6pyjS4AFkZK73
gMAFbdtUe/yXeaxDjiaW3qI3BwNMcQ==
=Sgks
-----END PGP SIGNATURE-----
Assets 8
You can’t perform that action at this time.