BitShares Core 3.1.0
Release Notes
The BitShares Core software has been updated to the 3.1.0 Feature Release. The Core software is used to build the validation nodes that perform consensus of all transactions on the BitShares blockchain. This release includes additions and improvements 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 now be found at the new BitShares Developer Portal.
Who Should Upgrade?
No upgrade is required by any operator of a validation node. Yet many operators will benefit by upgrading.
Operators of API nodes should upgrade
- to ensure consistent history numbering with other API nodes,
- to provide additional API for HTLC operations,
- to provide missing explanation for failed proposals,
- to provide genesis data if using the ElasticSearch plug-in,
- to configure data limits for certain API calls, and
- a bandwidth reduction while communicating with cooperative clients.
All node operators will benefit from performance improvements (1608,1621, 1662) including during replay.
Users of the command line interface wallet (CLI) will benefit from new getter commands for transaction signers and the ability to add signatures to partially signed transactions.
Upgrade Process
Precautions
A replay will automatically be executed after the upgrade.
Please check the 3.0.1 Release Notes for more information if you are upgrading from a version prior to 3.0.1.
How to Upgrade from Source Code
Obtain the Source Code
The source code may be obtained by checking out the 3.1.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
Binaries
Binaries of the command line interface (CLI) wallet, node software, and delayed node are pre-built and available for download.
Platform | SHA256 Checksum |
---|---|
Microsoft Windows | e1ed61f377a488ebd79d0ad01f24d37eb0f30c3e58ff753bbb042a282e897161 |
Apple macOS | 571aeaca0a32036836febb8f9782ace93a5c1c5d0f03bd8093db3fad53b5fbae |
Linux | 795628456a40e1d00a22e4f92771e740741269cad17ed900baaf845b59d56427 |
Changes
The changes for 3.1.0 Feature Release are summarized below.
API
Description | Issue | Pull Request |
---|---|---|
get_full_accounts includes htlc; New HTLC APIs | 1713 | 1742 |
Fix: ElasticSearch-objects plugin does not load genesis data | 1652 | 1717 |
Add fail_reason to reflection meta of proposal_object | 1730 | 1732 |
Fix: Inconsistent required_approval_index when loading from disk |
1719 | 1720 |
Deterministic numbering of virtual operations in account history | 1675 | 1676 |
Change hard-coded limitations in APIs to configurable | 782 | 1513 |
Fix permessage_deflate | - | WebSocket-2, FC-106, FC-108 |
Node Functionality
Description | Issue | Pull Request |
---|---|---|
Improve performance of markets | 982 | 1608,1621 |
Improve fee_schedule::calculate_fee() performance | 1660 | 1662 |
Skip transaction size check during replay | 1619 | 1716 |
Reduce precision of numbers in replay output | 1666 | 1674 |
Bump fc | - | 1596 |
Node Plugins
Description | Issue | Pull Request |
---|---|---|
Add plugin section headers for auto-generated config.ini | 1407 | 1641 |
Command Line Interface Wallet (CLI)
Description | Issue | Pull Request |
---|---|---|
Fixed saving keys in wallet | - | 1613 |
Add get_signed_transaction_signers and get_key_references commands to CLI |
1210 | 1635 |
Add CLI command to add signatures to a partially signed transaction add_transaction_signature |
867 | 1032 |
wallet info() change participation to int | - | 1666 |
Avoid segfault in CLI bid_collateral command | - | 1649 |
Other Wallets
Description | Issue | Pull Request |
---|---|---|
Improve js_serializer | 1701 | 1702,1741 |
Install debug_witness headers | 1727 |
Software Design
Description | Issue | Pull Request |
---|---|---|
Remove old hardfork checks | 1553 | 1718 |
Removed unused header file | 1219 | 1740 |
Replace smart_ref with shared_ptr | 1548 | FC-109, 1556 |
Make chain_parameters::current_fees const | 1670 | FC-115,1678 |
Add missing typename reflection for flat_map | FC-117 | |
Make static_variant::tag_type public | FC-112 | |
Add missing operator overloads for fc::unsigned_int | FC-107 | |
valgrind inspired fixes | - | 1693 |
Change indentation in quit command | - | 1684 |
Build Process
Description | Issue | Pull Request |
---|---|---|
Recent build errors on Windows platform | 1593 | FC-110,1633,1704 |
Support Boost version 1.69 | 1557 | 1587,1648 |
ld: symbol(s) not found for architecture x86_64 Mac issue | 1545 | 1556 |
Fix compiler warnings | - | 1515,1597,1721,1736,FC-116,1677 |
Unit Tests
Description | Issue | Pull Request |
---|---|---|
Prove owner->active delegation | BSIP-94 | 1601 |
cli_tests memory access violation at address: no mapping at fault address | 1303 | 1626 |
Documentation
Description | Issue | Pull Request |
---|---|---|
Update Documentation for initial_chain_id field when creating example genesis |
1069 | 1628 |
Dynamically linking OpenSSL | 1304 | DevDocs-111 |
Add genesis-dev.json and move genesis jsons out of root source directory | 1591 | 1592 |
Document subscribe_to_market returned values |
1258 | - |
Release Contributors
@abitmore
@btsabc
@cedar-book
@cifer-lee
@crypto-ape
@jmjatlanta
@manikey123
@nathanhourt
@OpenLedgerApp
@oxarbitrage
@pixelplex
@pmconrad
@xeroc
@xloem
@xuquan316