Releases: bitshares/bitshares-core
BitShares Core "Splash" ♥ 5.2.1 ♥
Release Notes
The BitShares Core software has been updated to the 5.2.1 Bugfix Release. The codename of the 5.x releases is "Splash". The BitShares Core software is used to build the validation nodes that perform consensus of all transactions on the BitShares blockchain. This release includes fixes about node stability and documentations 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 to benefit from the stability improvements introduced in this release and the benefits introduced in the 5.2.0 Feature Release, although it is not required.
How To Upgrade
Precautions
- For nodes running versions earlier than
5.2.0
, 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 is1.58
, the maximum is1.74
- The minimum supported
CMake
version is3.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.1 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.1
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 | 4e800939886adfad8b5404f6f754d1c90f777a7135f0d7aac0ce43c5d5d9c7a6 |
Mac | 8af13a35e75f7646b4006ea4ca420b6cf16badeee3d0150c1263cb918d7daacc |
Linux | c48e28498f7b062df7e616f402b1ad5526b344f2a26eaf0c9b75b6269eca1bbf |
Changes
The changes for 5.2.1 Bugfix Release are summarized below.
Node Performance and Stability
Description | Issue | Pull Request |
---|---|---|
Fix a node synchronization issue | 2428, 2434, 2438 | 2445 |
Fix P2P log messages appear in console and default.log | 2435 | 2436 |
Add seed nodes | - | 2444, 2450 |
Documentation
Description | Issue | Pull Request |
---|---|---|
Fix Doxygen warnings | 2433 | 2443 |
Update links and wording in README | - | 2439, 2441 |
Update version | - | 2446 |
Update contributors | - | 2452 |
Release Contributors
@abitmore (https://github.com/abitmore)
@technologiespro (https://github.com/technologiespro)
@xiao93 (https://github.com/xiao93)
BitShares Testnet test-5.2.1
Note: this pre-release is for the public test network (testnet) but NOT the BitShares Mainnet.
Please check the draft release notes of version 5.2.1 for more info.
Docker image: docker pull bitshares/bitshares-core:test-5.2.1
.
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](https://github.co... |
BitShares Testnet test-5.2.0
Note: this pre-release is for the public test network (testnet) but NOT the BitShares Mainnet.
Please check the draft release notes of version 5.2.0 for more info.
Docker image is available: docker pull bitshares/bitshares-core:test-5.2.0
.
BitShares Core "Splash" 5.1.0
Release Notes
The BitShares Core software has been updated to the 5.1.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?
Public API nodes should upgrade to support client software that attempt to use the new APIs.
Private API nodes may or may not upgrade depending on the use cases.
Pure validation nodes E.G. block producers and seed nodes are not required to upgrade.
Upgrade Process
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.69
- The minimum supported CMake version is 3.2
Obtain the Source Code
The source code may be obtained by checking out the 5.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:5.1.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 | 161c349f2af47894d9458fe5da7922d192c6be97c3bccf760c505c6866b72c65 |
Mac | fd077811dff087598e3ba84632b786c53037417ab2c3630ba3d0a3e4380a61cb |
Linux | fb14af10e9b59e28d1e9ff78e23c08fe90bdfe07a1ee0d4e2b443819ad7d9cc8 |
Changes
The changes for 5.1.0 Feature Release are summarized below.
Node Functionality
Description | Issue | Pull Request |
---|---|---|
Add current supply and maximum supply to budget object | 2303 | 2304 |
Update seed nodes | - | 2277, 2309, 2315, 2316 |
Node Performance and Stability
Description | Issue | Pull Request |
---|---|---|
Fix a crash related to OpenSSL config file path | 2276 | FC-211, 2288 |
Node Plug-ins
Description | Issue | Pull Request |
---|---|---|
Expand market history plugin to support liquidity pools | - | 2297 |
API
Please check the linked pull requests for more info and documentation.
Description | Issue | Pull Request |
---|---|---|
Add APIs for liquidity pools | 2280, 2284, 2286 | 2285, 2297 |
Add APIs for tickets | 2291 | 2289 |
Add current supply and maximum supply to budget object | 2303 | 2304 |
Software Design
Description | Issue | Pull Request |
---|---|---|
Force 16-byte alignment on optional class | - | FC-219 |
Simplify implementation of account and asset lookup APIs | - | 2308 |
Explicitly convert integers to bools | - | FC-221, 2320 |
Fix compiler warnings | - | FC-212, 2310 |
Build Process and Continuous Integration (CI)
Description | Issue | Pull Request |
---|---|---|
Add a check for project submodules | - | 2329 |
Improve testing in parallel in Github Actions CI | 2274 | FC-217, FC-209, FC-210, 2275 |
Run Github Actions CI in Ubuntu 16 and 18 | - | FC-215, 2317 |
Use Boost 1.69 in Github Actions Actions CI macOS build | - | FC-212, 2301 |
Support macOS 11 Big Sur in Github Actions CI | - | FC-218, 2322 |
Show more log messages in Github Actions CI | - | FC-220, 2320 |
Update build status badges | - | FC-227, FC-228, 2332 |
Stop using Travis-CI | 2312, 2292 | FC-214, FC-213, 2313, 2301, 2294, 2287 |
Documentation
Description | Issue | Pull Request |
---|---|---|
Improve docs of get_trade_history* database API | - | 2305 |
Add comments for operation types and object types | - | 2306 |
Correct a chain parameter's description | - | 2326 |
Add make_new_plugin.sh script in plugin README | - | 2293 |
Fix Doxygen warnings | - | FC-223, 2324 |
Update license year and contributors list | - | FC-225, FC-229, FC-230, 2330, 2335, 2336 |
Unit Tests
Description | Issue | Pull Request |
---|---|---|
Deal with a race condition in logging tests | - | FC-222 |
#...
BitShares Core 5.0.0 "Splash"
Release Notes
The BitShares Core software has been updated to the 5.0.0 Protocol Release. The code name of the release 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 changes to the consensus protocol.
The scheduled protocol upgrade time is Monday, September 28, 2020 17:00:00 UTC
(2020-09-28T17:00:00Z
).
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?
All node operators must upgrade to handle the protocol upgrade.
Upgrade Process
Precautions
- All validation nodes must complete their upgrade prior to Protocol Activation
- 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.69
- The minimum supported CMake version is 3.2
Obtain the Source Code
The source code may be obtained by checking out the 5.0.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 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 | 677d46af75827caccbc08f62eea1225d865ed690cea759a608684a8550877684 |
Mac | 41a50ff84aeef248e66b577cc1a9d1f3cd5c8eb55f33812ac95378adafe54c8e |
Linux | 4ccb45bd871fb821328a1e3e8536de3f97f370811c63c2ca3c5ade37652705be |
Changes
The changes for 5.0.0 Protocol Release are summarized below.
Protocol
Description | Issue | Pull Request |
---|---|---|
Automated Market Making (AMM) / Liquidity Pools | 2260 | 2261 |
Remove voting power from liquid BTS and tickets | 2262 | 2263, 2267 |
Node Functionality
Description | Issue | Pull Request |
---|---|---|
Update websocket to support TLSv1.2 | 2255 | FC-207 |
Improve API logging, especially useful for nodes running behind a reverse proxy | 844 | FC-134, 2167 |
Add voting statistics during maintenance time | - | 2247 |
Fix replay percent calculation | 2020, 2243 | 2246 |
Show "testnet" text when running witness_node for testnet | 1995 | 2257 |
Node Performance and Stability
Description | Issue | Pull Request |
---|---|---|
Implement simple concurrent_unordered_set, potentially fix node crash issue | 1256 | FC-204, 1308 |
Fix websocket crash or hang issues | 1784, 1856 | FC-201, 2204 |
Fix race condition in websocket server close | - | FC-205 |
Fix reconnect of delayed node | 2034 | 2038 |
Node Plug-ins
Description | Issue | Pull Request |
---|---|---|
Add extended history tracking for selected accounts | 2258 | 2259 |
Improve ES plugin logging | 1953 | 2189, 2245 |
Rethrow plugin exception | 2241 | 2242 |
API
Description | Issue | Pull Request |
---|---|---|
Add mto_id to ticker data | - | 2237 |
Improve error messages of history APIs, check if required plugins are enabled | 2021 | 2158 |
Software Design
Description | Issue | Pull Request |
---|---|---|
Support boost 1.72 | - | FC-189, FC-190 |
Update bloom_filter to an new version in FC | - | FC-176 |
Make space+type ids constexpr and get rid of useless definition | - | 2073 |
Fix macOS build warning wrt 'tuple_size' | 2197 | FC-202 |
Fix potential out-of-bounds access in HTTP request parser | - | FC-178 |
Remove some debug code from account_object.cpp | - | 2189 |
Remove useless code | - | 2086 |
Build Process and Continuous Integration
Description | Issue | Pull Request |
---|---|---|
Add GitHub Actions auto-build workflow | 2054, 2110, 2253 | 2062, 2112, FC-180, FC-187, 2170, 2177, 2178, 2179, 2230, 2254, FC-206, FC-208 |
Show more detailed messages when running test cases in CI | - | FC-197, 2148 |
Improve SonarQube scanning in CI | - | 2218, [2221](https://github.com/bitshare... |
BitShares Core 4.0.0
Release Notes
The BitShares Core software has been updated to the 4.0.0 Protocol 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, improvements, and changes to the consensus protocol.
The scheduled protocol upgrade time is Thursday, July 30, 2020 13:55:00 UTC
(2020-07-30T13:55:00Z
).
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?
All operators must upgrade to handle the protocol upgrade and to benefit from performance improvements.
Operators of API nodes will be able to configure custom limitations on their API nodes as described in the API section.
Upgrade Process
Precautions
- All validation nodes must complete their upgrade prior to Protocol Activation:
Thursday, July 30, 2020 13:55:00 UTC
- A blockchain replay will automatically be performed after the validation node software is restarted. This typically takes a few hours on a modern CPU.
Upgrading from Any Version
Delayed Node
The witness_node
program can be configured to serve the features that were previously provided by the delayed_node
program. Therefore the delayed_node
program is no longer supported. Instructions for configuring a witness node to act as delayed node can be found in the Wiki.
Elastic Search Plugin
The default values for the Elastic Search Plugin have been changed. These changes are summarized under Elastic Search Plugin.
Custom Operations Plugin
A new custom_operations
plugin is added in this release which is enabled by default for new nodes. The plugin stores account catalogs of key=>value
data using custom operations. The feature is expected to be utilized by several client applications including the reference UI and the BTS++ mobile App in the near future. Existing public API nodes should enable it.
API Helper Indexes Plugin
The api_helper_indexes
plugin is now required for serving several existing critical APIs. Public API nodes should enable it. Please check the API section for more info.
Upgrading from 3.2.0
Operators of API nodes need to edit their configuration file per the instructions in the 3.3.0 Release Notes API section.
Upgrading from before 3.2.0
Please check the 3.2.0 Release Notes for more information if you are upgrading from a version prior to 3.2.0.
How to Upgrade from Source Code
Note: the minimum build requirements have changed starting from the 3.3.0 Feature Release:
- The code base requires a compiler that supports the C++ 14 standard (previously C++ 11).
- The minimum supported boost version is 1.58 (previously 1.57).
- The minimum supported CMake version is 3.2 (previously 3.1).
Obtain the Source Code
The source code may be obtained by checking out the 4.0.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 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 | 9482f0ef03e4df2fdd08c30e535709940925fd2ac0eccbe19c399316e57f0961 |
Mac | 25a28802d6bd44f9d516ade2b605ea6e5c55fdbddcf801c638be11f1c92ca0a7 |
Linux | 5d62f634633693e0a89dd86fdc0314ac0edb2fdc0d9b1437b84c62c5167270b7 |
Changes
The changes for 4.0.0 Protocol Release are summarized below.
Protocol
Description | Issue | Pull Request |
---|---|---|
Margin Call Fee Ratio (BSIP-74) | BSIP-74, 2129 | 2159, 2180 |
Asset Owner Defines MCR and MSSR Values (BSIP-75) | BSIP-75 | 2176 |
Require Higher CR When Creating / Adjusting Debt Positions (BSIP-77) | BSIP-77 | 2157 |
Simple Maker-Taker Market Fees (BSIP-81) | BSIP-81 | 2136, 2155 |
Maker order creation fee discount (BSIP-85) | BSIP-85 | 2145 |
Share Market Fees to the Network (BSIP-86) | BSIP-86 | 2128, 2140 |
Force settlement fee (BSIP-87) | BSIP-87 | 2151, 2159, 2172 |
Add HTLC related features: HASH160 support, optional memo, optional preimage size | 1967 | FC-143, 1998 |
Share market fees of force-settle orders to the referral program | 1780 | 1842, 2132 |
Redirect market fees sharing to temp-account to committee-account | 1800 | 1870, 2133 |
Asset precision can be updated when asset has zero supply | - | 2176 |
New asset issuer permission and flag to disable updating of maximum supply | - | 2176 |
New asset issuer permission and flag to disable creation of new supply | - | 2176 |
Independent asset creation fee for assets with a prefix | - | 2176 |
Fix 250M supply issue | 2103 | 2104 |
Fix additional authorities checking on custom_operation | 210, 2087 | 1629, 2138 |
Fix overabundant balance check for bid_collateral_operation | 1692 | ... |
Bugfix release 3.3.2
Release Notes
The BitShares Core software has been updated to the 3.3.2 Bugfix Release. The Core software is used to build the validation nodes that perform consensus of all transactions on the BitShares blockchain. This release contains only bugfixes related to the P2P networking layer.
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?
Upgrade is strongly recommended for nodes running the 3.3.x releases, which are known to crash comparatively often. This release should improve the situation significantly.
Versions before 3.3.0 are suffering from a data leak that has also been fixed with 3.3.2. We recommend that these nodes should be upgraded too. Please check the release nodes of all intermediate releases when upgrading.
Upgrade Process
Precautions
None when upgrading from 3.3.1.
Please check the 3.3.0 Release Notes for more information if you are upgrading from versions prior to 3.3.0.
How to Upgrade from Source Code
Obtain the Source Code
The source code may be obtained by checking out the 3.3.2 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 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 | 666af326d833cb1bd13d999cc0b426d0c5eedc18fe783c4a6f3b17207f894e74 |
Mac | 37ad3783b18d711831c7a2edf3082f7ebab506d9ebb5ab70c770f1b3e46f9443 |
Linux | e66e342bee14f64cf0bab88d200c9021a30222a0e690e84cf9a302e808e4556f |
Changes
The changes for 3.3.2 Bugfix Release are summarized below.
P2P layer
Description | Issue | Pull Request |
---|---|---|
Data leak | 1999 | 2002 |
Node stability | - | 1996, FC 165 |
Release Contributors
Bugfix release 3.3.1
Emergency Bugfix Release
This release fixes a chain halt. All nodes must upgrade.
Note: to avoid replay, nodes on older 3.x.y versions might prefer to upgrade to the respective patch versions. We have tagged these with 3.0.2, 3.1.1 and 3.2.2 respectively.
The only change in this release is #1975.
Upgrade instructions from previous versions apply. Docker builds are underway but may take some time to complete.
Binaries
Binaries of the command line interface (CLI) wallet and node software are being pre-built and will be made available for download.
Note: starting with core release 3.3.1, 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 | 4e7087b58b7ba7cc4ad2d9acdae7bb3c01a3454b2030f1c24ba96e296fcac58c |
Mac | 8f16969ec819e0950425405f3eaac84edd0edc95018255cddd821a80d7290907 |
Linux | 30d4b8ddbfea143904d099b78e2083a666b6c0d7e68fb1810fbbdfb841f971af |
Binaries for older versions
Version | Platform | SHA256 Checksum |
---|---|---|
3.0.2 | Linux | 182c9bac3c7a77914918451f6df182f76f35fcfbb535386f792730da43680cb8 |
BitShares Core 3.3.0
Release Notes
The BitShares Core software has been updated to the 3.3.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 support client software that attempt to
- track the total amount in collateral,
- query for active HTLC objects, and
- optionally subscribe to database objects.
Instructions for configuring a node to track the total amount in collateral can be found in the API section.
Operators of ElasticSearch nodes should upgrade to support Get operation by ID and serving get_account_history
API.
Block producing nodes will benefit due to enable to load block signing keys from files.
All node operators will benefit from
Users of the command line interface wallet (CLI) will benefit from the ability to sign messages on behalf of their account (1878).
Upgrade Process
Precautions
This release requires a replay of the blockchain, which will be automatically executed after the upgrade.
Operators of public API nodes should add an entry into their configuration file per the instructions in the API section.
Please check the 3.2.0 Release Notes for more information if you are upgrading from a version prior to 3.2.0.
How to Upgrade from Source Code
Note: the minimum build requirements have changed starting from this 3.3.0 Feature Release:
- The code base requires a compiler that supports the C++ 14 standard (previously C++ 11).
- The minimum supported boost version is 1.58 (previously 1.57).
- The minimum supported CMake version is 3.2 (previously 3.1).
Obtain the Source Code
The source code may be obtained by checking out the 3.3.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.
Note: starting with core release 3.3.0, 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 | 27a983c76ab2f733904925a4bfe2c9368a7f0476152da42282fcc026b01b8737 |
Mac | b19f60589faaca3f6b4f5691a58588f801e0f75c20f319f81bf8033e5e17f4df |
Linux | 08df312085fc536798ef398186f5c08999f78df724bb94c34f952aebf33f312e |
Changes
The changes for 3.3.0 Feature Release are summarized below.
API
Description | Issue | Pull Request |
---|---|---|
Track total amount in collateral | 1089, 1781, 1893 | 1836, 1889, 1894 |
Added get_htlcs API |
1713 | 1849 |
Add optional auto-subscription parameters to APIs: get_objects , get_accounts , get_full_accounts , lookup_accounts , get_assets and get_htlc |
1819 | 1868 |
ES Plugin: Get operation by ID; support get_account_history API |
1682 | 1725 |
Public API Node operators should enable the new api_helper_indexes plugin to track collateral by adding the entry api_helper_indexes
to the plugins
entry of the node's configuration file (config.ini
), typically, if the line looks like this:
# Space-separated list of plugins to activate
plugins = witness account_history market_history grouped_orders
should change it to:
# Space-separated list of plugins to activate
plugins = witness account_history market_history grouped_orders api_helper_indexes
Node Functionality
Description | Issue | Pull Request |
---|---|---|
Suppress p2p logs | 978 | 1875 |
Witness node switch to correct fork on restart if was shut down on another long fork | 1703 | 1832 |
Remove seed node with missing DNS record | - | 1879 |
Node Plug-ins
Description | Issue | Pull Request |
---|---|---|
Fix market ticker volume underflow issue | 1883 | 1885, 1933 |
Witness node accepts block signing keys from file | - | 1812 |
Command Line Interface Wallet (CLI)
Description | Issue | Pull Request |
---|---|---|
Add sign_message command to cli_wallet |
- | 1878 |
Software Design
Description | Issue | Pull Request |
---|---|---|
Put seed nodes into separate file | - | 1809 |
Add htlc parameters to developer genesis | - | 1833 |
Refactor CLI register_account and create_account_with_private_key commands, remove duplicate code | - | 1811 |
Database_api code refactory | - | 1891, 1920 |
Clean up FC, support native 128-bit integers | 998, 1584, 1660,1816 | FC-137, FC-140, 1789, 1917, 1927, 1941 |
Fix optional API argument bug | 1898 | FC-145, FC-146, 1912 |
Build Process
Description | Issue | Pull Request |
---|---|---|
Modified CMakeLists.txt for static linking of libcurl | - | 1872 |
Harden binaries through defensive compilation and linking | - | [1810](https://github.com/bitshares/bitshares-core... |