BitShares Core 6.0.0 Release (codename "Mekong")
The BitShares Core software has been updated to the 6.0.0 Protocol Release. The codename of the 6.x releases is "Mekong". 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 Tuesday, January 11, 2022 14:00:00 UTC (2022-01-11T14: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 nodes need to be upgraded to handle the protocol upgrade.
Note: some API changes may break existing client applications, as described in API changes section.
How To Upgrade
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 with Docker
The pre-built Docker image can be found on the BitShares Core Docker page and can be downloaded with the following command.
docker pull bitshares/bitshares-core:6.0.0
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 recommended to build in Ubuntu 20.04 LTS (Focal Fossa). Ubuntu 16.04 LTS (Xenial Xerus) is no longer supported.
Obtain the Source Code
The source code may be obtained by checking out the 6.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.
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 built using Gitian. Please check the README of Gitian if you want to verify and/or contribute.
- Starting from version
6.0.0, pre-built Linux binaries will not run on Ubuntu 16.04 LTS (Xenial).
| Platform | SHA256 Checksum |
|---|---|
| Microsoft Windows | b721383133d56fd2a6469a2aac73c92f7fe518f48a2d6a2484d1dd9dcf6c5527 |
| Mac | c5c2ee313233aa06c42ea08f9dd747261dec61399ff1011b9f93b3553a84b868 |
| Linux | 042740d4e816b80d909d8c82acbefb3ddd20e5b833cace2cfd1816be090eaac1 |
Changes
The changes for 6.0.0 Protocol Release are summarized below.
Protocol
| Description | Issue | Pull Request |
|---|---|---|
| Add no-collateral funding feature (SameT Funds) | 2351 | 2469, 2474, 2476, 2523 |
| Add simple collateralized P2P funding feature (Credit Offers and Credit Deals) | 2362 | 2479, 2502, 2511 |
| Add 3 new black swan response methods | 2467 | 2499, 2510 |
| Add missing asset authorization checks for certain operations | 972, 973 | 2468 |
| Add option for MPA owners to disable collateral bidding | 2281 | 2504, 2536 |
| Allow bitasset options to be updated after GS | 2282 | 2506 |
| Match force-settlements with margin calls at normal margin call fill price | 2481 | 2489 |
| Revive GSed bitassets based on ICR rather than MCR | 2290 | 2505 |
| Skip asset authorization checks for from_account for override_transfer | 2295 | 2465 |
| Update liquidity pool exchange operations to comply with whitelist and blacklist market settings | 2350 | 2462, 2507 |
Fix a bug that some non-UIA asset issuer permission bits (e.g. witness_fed_asset) can be configured on UIA via asset_update_operation | - | 2499 |
| Allow borrowers to close debt positions even when there is no sufficient price feeds | - | 2499 |
| Allow updating an existing debt position or creating a new debt position if to trigger a margin call and the debt position is not fully filled but the remaining debt position's CR is higher than ICR | - | 2499 |
| Debt positions with CR not greater than MCR will pay margin call fees at the time of global settlement | - | 2489 |
Node Functionality
| Description | Issue | Pull Request |
|---|---|---|
| Delete unneeded directories when writing object database to disk | - | 2485 |
Node Performance and Stability
| Description | Issue | Pull Request |
|---|---|---|
| Clear operation_results when generating block | 2527 | 2475, 2528 |
| Remove BSIP-40 support for unused operations | - | 2482 |
Node Plugins
| Description | Plugins | Issue | Pull Request |
|---|---|---|---|
| Fix liquidity pool deposit statistics | Market History | - | 2471 |
| Notify all related accounts on account creation | Account History | 265 | 2480 |
| Fix a crash when starting the ElasticSearch plugin | ElasticSearch Operations | 2490 | 2495 |
API
Please check the linked pull requests for more info and documentation.
| Description | Issue | Pull Request |
|---|---|---|
The get_block API will return an empty operation_results field for blocks produced by nodes with version 6.0.0 or higher. The operation results can still be retrieved via get_account_history and related APIs. | - | 2475 |
The unused extensions field is removed from asset_settle_cancel_operation | - | 2489 |
The return value of asset_settle_operation is now a new type extendable_operation_result | - | 2499 |
| New APIs for querying SameT Funds | - | 2469 |
| New APIs for querying Credit Offers and Credit Deals | - | 2479 |
| Fix liquidity pool deposit statistics | - | 2471 |
| Fix liquidity pool history APIs | - | 2517 |
Software Design
| Description | Issue | Pull Request |
|---|---|---|
| Add defensive check to mute SonarScanner warning | - | 2540 |
Build Process and Continuous Integration (CI)
| Description | Issue | Pull Request |
|---|---|---|
| Build Docker images with Github Actions | 2472 | 2514 |
| Upgrade the Docker base image to Ubuntu 20.04 LTS (Focal Fossa) | - | 2473 |
| Fix Gitian Windows build string table overflow issue by using Ubuntu 20.04. LTS (Focal Fossa) | 2520 | Gitian-50 |
| Phase out Ubuntu 16.04 | 2217, Gitian-49 | Gitian-51 |
| Add dependabot.yml for GitHub Actions | - | 2512 |
| Add OS version to cache key in sonar-scan workflow | - | 2486, 2487 |
| Update Sonar Scanner configuration | - | 2437, 2458, 2518 |
Documentation
| Description | Issue | Pull Request |
|---|---|---|
| Fix an error in README.md | - | 2529, 2533, 2534 |
Release Contributors
Leave BitShares Core 6.0.0 Release (codename "Mekong") to:
Read more #bitshares posts
Best Posts From Abit More
We have not curated any of abit's posts yet. But you can encourage our curation team to review posts by visiting them regularly and by referring other readers. Because we give priority to frequently read content.
More Posts From Abit More
- BitShares Core 7.0.0 Release (codename "Suez")
- [ANN] BitShares Testnet Release `test-7.0.0`
- BitShares speaker is attending Web3 Berlin event
- BitShares Core 6.1.0 Release (codename "Mekong")
- [ANN] BitShares Testnet Release `test-6.1.2`
- [ANN] BitShares Testnet Release `test-6.1.1`
- [ANN] BitShares Testnet Release `test-6.1.0`
- BitShares Core 6.0.0 Release (codename "Mekong")
- [ANN] BitShares Testnet release test-6.0.0
- BitShares Core "Splash" ♥ 5.2.1 ♥ Release
- BitShares Core "Splash" ♥ 5.2.0 ♥ Release
- [ANN] BitShares Testnet release test-5.2.0
- BitShares Core "Splash" 5.1.0 Release
- BitShares Core 5.0.0 Release (code name "Splash")
- BitShares Mainnet 4.0.0 Release 比特股BTS主网4.0.0版本发布
- BitShares Testnet Release `test-4.0.6` 测试网版本发布
- [BitShares DEX MM/trading Contest Announcement] Removing SPARKDEX.BTC and SPARKDEX.ETH / SPARKDEX资产移出大赛
- [BitShares DEX MM/trading Contest Announcement] Changes to Parameters / 参数调整
- [BitShares DEX MM/trading Contest Announcement] Adding BitAsset Markets / BitAsset 交易对加入大赛
- [BitShares DEX MM/trading Contest Announcement] Adding GDEX.EOS / 新的交易对加入大赛