Skip to content

BitShares Core 3.1.0

Compare
Choose a tag to compare
@jmjatlanta jmjatlanta released this 15 May 15:48
· 2510 commits to master since this release
e3d1226

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

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