BitShares Core "Splash" ♥ 5.2.0 ♥
Release Notes
The BitShares Core software has been updated to the 5.2.0 Feature Release. The codename of the 5.x releases is "Splash". The Core software is used to build the validation nodes that perform consensus of all transactions on the BitShares blockchain. This release includes additions, improvements and bug fixes but does not include any changes to the consensus protocol.
Documentation for users may be be found at How BitShares Works.
Documentation for BitShares developers may be found at the BitShares Developer Portal.
Who Should Upgrade
It is recommended that all nodes be upgraded, although it is not required.
API nodes will benefit from the new API, performance and stability improvements, and functionality improvements.
Block producers and other nodes will benefit from the stability improvements.
Command-line interface (CLI) wallet users will benefit from the CLI improvements.
How To Upgrade
Precautions
- A blockchain replay will automatically be performed after the validation node software is restarted. This typically takes a few hours on a modern CPU.
How to Upgrade from Source Code
Note:
- The code base requires a compiler that supports the C++ 14 standard
- The minimum supported boost version is 1.58, the maximum is 1.74
- The minimum supported CMake version is 3.2
- For Ubuntu users, it is now supported and recommended to build in Ubuntu 20.04 LTS
Obtain the Source Code
The source code may be obtained by checking out the 5.2.0 tag. Download the source at:
Build the Binaries
The binaries may be built by using your pre-existing process, or by following the standard instructions that can be found in the wiki:
Deploy the Binaries
Your standard process for deploying the node software may be used. No additional requirements or precautions will be required to deploy the new release.
How to Upgrade with Docker
The latest Docker image may be found at BitShares Core Docker page and updated with
docker pull bitshares/bitshares-core:5.2.0
Binaries for download
Binaries of the command line interface (CLI) wallet and the node software are pre-built and available for download.
Note: These binary builds are reproducible and were signed using Gitian. Please check the README if you want to verify and/or contribute.
Platform | SHA256 Checksum |
---|---|
Microsoft Windows | e235de2b70ff12fea5a75621b83fc5050d45b755156bc3ab0ddf6ab18ee421ab |
Mac | b2c85bff171fdd908ea2e001944cb51d5d73f1df4b5133f8712642bc682c7add |
Linux | 68dfc7afc2a3a32c8f5a4491e8956173bd9d4e0151736476bf698670b1ad03a9 |
Changes
The changes for 5.2.0 Feature Release are summarized below.
Node Functionality
Description | Issue | Pull Request |
---|---|---|
Disable p2p network when delayed_node plugin is enabled |
104 | 2040, 2393 |
Fix data error in (virtual) execute_bid_operation |
- | 2363 |
Fix transaction loss after broadcast | 2376 | 2383 |
Node Performance and Stability
Description | Issue | Pull Request |
---|---|---|
Reduce the allowable range of negative latency | - | 2370 |
Improve market ticker read performance via chunks | - | 2358 |
Update seed nodes | - | 2353, 2422, 2423 |
API
Please check the linked pull requests for more info and documentation.
Description | Issue | Pull Request |
---|---|---|
Add database API get_liquidity_pools_by_one_asset to query for liquidity pools by any one asset in the pool |
2356 | 2365 |
Command-Line Interface (CLI) Wallet
Description | Issue | Pull Request |
---|---|---|
Fix brain-key compatibility between bitshares-core and bitshares-ui | 2354 | 2355 |
Fix CLI get_account_history_by_operations ordering |
- | 2359 |
Print more info in account history in CLI | 2296 | 2360, 2384 |
Add CLI commands get_account_name , get_asset_id , get_asset_symbol and get_asset_name |
- | 2364 |
Fix sign_memo command for signing with public keys |
- | 2386 |
Software Design
Description | Issue | Pull Request |
---|---|---|
Support building with Boost 1.74 | - | FC-226, 2406 |
Support building in Ubuntu 20.04 LTS | 2216 | FC-234, FC-236, 2347, 2349 |
Fix assigning instead of comparing | - | FC-232 |
Define related functions only when have editline | - | FC-233 |
Force TLSv1.2 or above when using libcurl | - | 2368 |
Set program options with a template function in tests | - | 2402 |
Fix code smells | 2101 | 2372, 2390, 2392 |
Remove unnecessary include of boost/test/auto_unit_test.hpp |
2414 | 2415 |
Remove unused code | - | 2424 |
Build Process and Continuous Integration (CI)
Description | Issue | Pull Request |
---|---|---|
Fix cache for matrix in Github Actions | - | FC-239, 2366 |
Integrate SonarScanner in Github Actions workflow | 2314 | FC-240, FC-241, 2367, 2391, 2401 |
Fix MinGW build in Github Actions | 2427 | 2426 |
Documentation
Description | Issue | Pull Request |
---|---|---|
Fix typo in docs of serializable _types |
- | FC-235 |
Fix description for the FC namespace in doxygen | 2342 | FC-237 |
Update copyright notices about static_variant |
- | FC-238 |
Update comment about liquidity_pool_exchange_operation market fee sharing |
- | 2382 |
Fix doxygen docs in node_impl.hxx |
2375 | 2403, 2405, 2418 |
Document fees returned by liquidity_pool_exchange_operation |
2346 | 2404 |
Fix broken link in README of performance_test |
- | 2416 |
Update mail map and contributors | - | FC-242, 2426, 2429 |
Unit Tests
Description | Issue | Pull Request |
---|---|---|
Randomize index prefixes in ES tests, fix random failures | 2283 | 2371, 2373 |
Fix two_node_network connection failure in app_test |
39 | 2374 |
Fix two_node_network test case failure after transaction broadcast |
2378 | 2377 |
Fix random HTLC test failures | 2219 | 2381 |
Add uia_tests in cli_test |
- | 2385, 2389 |
Add test cases for liquidity pool APIs | - | 2387 |
Fix random cli_test failure due to conflict on listening ports |
2409 | 2411 |
Release Contributors
@abitmore (https://github.com/abitmore)
@pmconrad (https://github.com/pmconrad)
@sinetek (https://github.com/sinetek)
@xloem (https://github.com/xloem)
@hammadsherwani (https://github.com/hammadsherwani)