Releases: openhive-network/hive
1.28.3
Hive Blockchain Detailed Change Log: v1.27.0 to v1.28.0
This detailed log outlines the key features, bug fixes, and preparatory changes introduced in incremental releases leading up to the v1.28.0 release, which includes Hardfork 28 (HF28).
β οΈ Important Upgrade Notice
Upgrading to 1.28.0 will typically require a full node replay due to changes in the internal hived state format and data structures.
New options impacting behavior:
-
block-log-split- defaults to 9999 to support splitting the block_log file into multiple "part" files (each part file stores 1 million blocks). If you wish to preserve the previous monolithic block_log file behavior, set this option to -1.Splitting the block_log file into multiple part files allows you to relocate part files on different filesystems and symlink them in the blockchain directory. This means that multiple hived nodes can use a single set of part files to share most of the block log history (once a part file is filled with 1M blocks, it is never written to again).
If the default block-log-split value is lowered, nodes will operate in a "pruned" mode, only keeping the latest N 1M block parts. In the extreme case of setting block-log-split to 0, the node will not keep the raw contents of any blocks.
Operating in pruned mode saves disk space, but also reduces the node's ability to support
block_apiusage (API for fetching historical blocks) and provide old blocks to other nodes that are syncing from scratch.Note for updating an older version of hived: the hived tool will automatically perform a block_log split of an existing monolithic block_log file when the block-log-split option is changed from monolithic (-1) to any other value, including the new default value of 9999. This will temporarily require double the normal storage during the time the file is being split into part files. If you wish to avoid this, you must explicitly set block-log-split to -1 before starting the upgraded node.
-
comments-rocksdb-path- option to specify location of the external storage database directory for comments (this is state data that was previously stored directly in the shared memory file). Defaults tocomments-rocksdb-storagesubdirectory in the shared memory directory. You can specify an absolute path to place it in a separate directory from the one used to store the shared memory file (and thus reduce the ramdisk size required to most efficiently perform replay or sync operations). -
changes related to options useful for testing like
stop-replay-at-block(renamed tostop-at-blockalso allowing to stop processing at block received from sync),exit-at-blockallowing to stop hived process after receiving given block
π I. Hardfork 28 (HF28) - Protocol Consensus Changes
These changes were implemented in the 1.27.x branch and are scheduled to be activated upon reaching the HF28 block.
| Feature Area | Change / Details | MR/Issue Reference |
|---|---|---|
| Block Size Limit | Witness-configurable block size is capped at 2MB. | Merge Request 1357 |
| Transaction Expiration | Increased the transaction expiration time for better network resilience. | Merge Request 1383 |
| HBD Treasury Inflation | HBD held in the Treasury is removed from inflation calculations. | Merge Request 1467 |
| Authority Checks | Stricter authority matching is enforced (e.g., an active authority can no longer satisfy a posting level requirement). |
Merge Request 1408, Issue 716 |
| Signature Flexibility | Redundant (ineffective) signatures are allowed. Owner/active/posting authorities required by mixed operation types can be combined in a single transaction. | Merge Request 1420 |
| Vote Limits | Vote edit limits are eliminated on posts. | Issue 458 |
| Recurrent Transfers | Multiple recurrent transfers are allowed for the same sender/receiver pair. | Issue 382 |
| Proposal Voting | Votes for invalid proposals will cause the transaction to fail. | Merge Request 1460 |
II. Incremental Release Changes (v1.27.0 to v1.27.12)
Version 1.27.1 (Hotfix)
- Fixes: Hotfix specific to the
condenser_api::get_ops_in_blockcall.
Version 1.27.2
- New Tools & Performance: Added
block_log_utiltool (Merge Request 694). Upgradedsecp256k1-zkplibrary for signature processing performance improvements (Merge Request 689). - API & RC: Added support to automatically generate RC statistics (
get_rc_stats,get_rc_operation_stats) (Merge Request 670). Improved transaction status API calls to include the optional RC cost consumed by a given transaction (Merge Request 771). - Fixes: Improved block statistics logging (Merge Request 650). Fixed slow shutdown if node was syncing (Merge Request 741).
- New Operation: Added virtual operation:
proxy_cleared_operation(Merge Request 681).
Version 1.27.3
- RC Features: Implemented minimum RC delegation feature (Merge Request 775). Improved RC cost calculation for
recurrent_transferoperations (Merge Request 803). - Fixes: Improved chain-state verification to prevent issues when a new index is added to an already filled state file (Issue 423). Fixed filtering in
database_api::list_proposal_votes(Merge Request 773).
Version 1.27.4
- Features: New virtual operations added (Merge Request 332). Prerequisites coded for strict matching of data structures to
shared_memory.binand snapshot contents (Merge Request 784). - Fixes: Fixed
hivedshutdown problems when executingbroadcast_transaction_synchronuousand when using--exit-before-sync. RC mana can no longer go under zero (Merge Request 863).
Version 1.27.5
- API Changes: All
condenser_apimethods now return result sets using the legacy JSON form (Merge Request 964). - Infrastructure: Introduced the Beekeeper tool for secure key management and signing. RC code moved closer to the chain code for future consensus preparation (Merge Request 917). New dependency on
uringlibrary to speed up file I/O (Merge Request 968).
Version 1.27.6
- Fixes: Minor release with fixes specific to P2P communication ([Merge Request 1296]https://gitlab.syncad.com/hive/hive/-/merge_requests/1296)).
Version 1.27.7
- Disk & Data Management: Introduced Pruned Block Log support via the new
block-log-splitconfiguration option. - Security & Stability: Added new options (
rc-flood-level,rc-flood-surcharge,max-mempool-size) to prevent potential transaction flooding (Merge Request 1397). - Configuration Cleanup (Deprecation):
- Removed deprecated plugins:
followsandtags. - Renamed options:
seed-nodeβp2p-seed-node;rpc-endpointremoved in favor of explicitwebserver-http-endpoint/webserver-ws-endpoint.
- Removed deprecated plugins:
- Functional: Hived internal default option values are now set regardless of
config.inipresence.
Version 1.27.8
- Fixes: Relaxed chain state comparison rules to facilitate seamless node upgrades (Issue 734). Fixed issues where a broken
peers.jsonfile could block P2P communication.
Version 1.27.9
- HBD treasury removed from inflation calculation (to be activated at HF28)
- vote operations pointing to nonexisting proposals will fail (to be activated at HF28)
- bugfixes in beekeeper implementation related to wallet locking
- size optimizations of Typescript version of beekeeper
Version 1.27.10
- Fixes: Fixed bugs in Account History RocksDB plugin specific to full pruned node configurations (Issue 748). Fixed bugs specific to chain state comparison after snapshot loading (Issue 749).
- Functional: Improved snapshot loading verification (Merge Request 1505). Updated the RocksDB library version to gain stability bugfixes.
Version 1.27.11
- Upgrade from Ubuntu 22.04 to Ubuntu 24.04 as base build environment
- optimization: eliminate undo sessi...
1.28.0
Hive Blockchain Detailed Change Log: v1.27.0 to v1.28.0
This detailed log outlines the key features, bug fixes, and preparatory changes introduced in incremental releases leading up to the v1.28.0 release, which includes Hardfork 28 (HF28).
β οΈ Important Upgrade Notice
Upgrading to 1.28.0 will typically require a full node replay due to changes in the internal hived state format and data structures.
New options impacting behavior:
-
block-log-split- defaults to 9999 to support splitting the block_log file into multiple "part" files (each part file stores 1 million blocks). If you wish to preserve the previous monolithic block_log file behavior, set this option to -1.Splitting the block_log file into multiple part files allows you to relocate part files on different filesystems and symlink them in the blockchain directory. This means that multiple hived nodes can use a single set of part files to share most of the block log history (once a part file is filled with 1M blocks, it is never written to again).
If the default block-log-split value is lowered, nodes will operate in a "pruned" mode, only keeping the latest N 1M block parts. In the extreme case of setting block-log-split to 0, the node will not keep the raw contents of any blocks.
Operating in pruned mode saves disk space, but also reduces the node's ability to support
block_apiusage (API for fetching historical blocks) and provide old blocks to other nodes that are syncing from scratch.Note for updating an older version of hived: the hived tool will automatically perform a block_log split of an existing monolithic block_log file when the block-log-split option is changed from monolithic (-1) to any other value, including the new default value of 9999. This will temporarily require double the normal storage during the time the file is being split into part files. If you wish to avoid this, you must explicitly set block-log-split to -1 before starting the upgraded node.
-
comments-rocksdb-path- option to specify location of the external storage database directory for comments (this is state data that was previously stored directly in the shared memory file). Defaults tocomments-rocksdb-storagesubdirectory in the shared memory directory. You can specify an absolute path to place it in a separate directory from the one used to store the shared memory file (and thus reduce the ramdisk size required to most efficiently perform replay or sync operations). -
changes related to options useful for testing like
stop-replay-at-block(renamed tostop-at-blockalso allowing to stop processing at block received from sync),exit-at-blockallowing to stop hived process after receiving given block
π I. Hardfork 28 (HF28) - Protocol Consensus Changes
These changes were implemented in the 1.27.x branch and are scheduled to be activated upon reaching the HF28 block.
| Feature Area | Change / Details | MR/Issue Reference |
|---|---|---|
| Block Size Limit | Witness-configurable block size is capped at 2MB. | Merge Request 1357 |
| Transaction Expiration | Increased the transaction expiration time for better network resilience. | Merge Request 1383 |
| HBD Treasury Inflation | HBD held in the Treasury is removed from inflation calculations. | Merge Request 1467 |
| Authority Checks | Stricter authority matching is enforced (e.g., an active authority can no longer satisfy a posting level requirement). |
Merge Request 1408, Issue 716 |
| Signature Flexibility | Redundant (ineffective) signatures are allowed. Owner/active/posting authorities required by mixed operation types can be combined in a single transaction. | Merge Request 1420 |
| Vote Limits | Vote edit limits are eliminated on posts. | Issue 458 |
| Recurrent Transfers | Multiple recurrent transfers are allowed for the same sender/receiver pair. | Issue 382 |
| Proposal Voting | Votes for invalid proposals will cause the transaction to fail. | Merge Request 1460 |
II. Incremental Release Changes (v1.27.0 to v1.27.12)
Version 1.27.1 (Hotfix)
- Fixes: Hotfix specific to the
condenser_api::get_ops_in_blockcall.
Version 1.27.2
- New Tools & Performance: Added
block_log_utiltool (Merge Request 694). Upgradedsecp256k1-zkplibrary for signature processing performance improvements (Merge Request 689). - API & RC: Added support to automatically generate RC statistics (
get_rc_stats,get_rc_operation_stats) (Merge Request 670). Improved transaction status API calls to include the optional RC cost consumed by a given transaction (Merge Request 771). - Fixes: Improved block statistics logging (Merge Request 650). Fixed slow shutdown if node was syncing (Merge Request 741).
- New Operation: Added virtual operation:
proxy_cleared_operation(Merge Request 681).
Version 1.27.3
- RC Features: Implemented minimum RC delegation feature (Merge Request 775). Improved RC cost calculation for
recurrent_transferoperations (Merge Request 803). - Fixes: Improved chain-state verification to prevent issues when a new index is added to an already filled state file (Issue 423). Fixed filtering in
database_api::list_proposal_votes(Merge Request 773).
Version 1.27.4
- Features: New virtual operations added (Merge Request 332). Prerequisites coded for strict matching of data structures to
shared_memory.binand snapshot contents (Merge Request 784). - Fixes: Fixed
hivedshutdown problems when executingbroadcast_transaction_synchronuousand when using--exit-before-sync. RC mana can no longer go under zero (Merge Request 863).
Version 1.27.5
- API Changes: All
condenser_apimethods now return result sets using the legacy JSON form (Merge Request 964). - Infrastructure: Introduced the Beekeeper tool for secure key management and signing. RC code moved closer to the chain code for future consensus preparation (Merge Request 917). New dependency on
uringlibrary to speed up file I/O (Merge Request 968).
Version 1.27.6
- Fixes: Minor release with fixes specific to P2P communication ([Merge Request 1296]https://gitlab.syncad.com/hive/hive/-/merge_requests/1296)).
Version 1.27.7
- Disk & Data Management: Introduced Pruned Block Log support via the new
block-log-splitconfiguration option. - Security & Stability: Added new options (
rc-flood-level,rc-flood-surcharge,max-mempool-size) to prevent potential transaction flooding (Merge Request 1397). - Configuration Cleanup (Deprecation):
- Removed deprecated plugins:
followsandtags. - Renamed options:
seed-nodeβp2p-seed-node;rpc-endpointremoved in favor of explicitwebserver-http-endpoint/webserver-ws-endpoint.
- Removed deprecated plugins:
- Functional: Hived internal default option values are now set regardless of
config.inipresence.
Version 1.27.8
- Fixes: Relaxed chain state comparison rules to facilitate seamless node upgrades (Issue 734). Fixed issues where a broken
peers.jsonfile could block P2P communication.
Version 1.27.9
- HBD treasury removed from inflation calculation (to be activated at HF28)
- vote operations pointing to nonexisting proposals will fail (to be activated at HF28)
- bugfixes in beekeeper implementation related to wallet locking
- size optimizations of Typescript version of beekeeper
Version 1.27.10
- Fixes: Fixed bugs in Account History RocksDB plugin specific to full pruned node configurations (Issue 748). Fixed bugs specific to chain state comparison after snapshot loading (Issue 749).
- Functional: Improved snapshot loading verification (Merge Request 1505). Updated the RocksDB library version to gain stability bugfixes.
Version 1.27.11
- Upgrade from Ubuntu 22.04 to Ubuntu 24.04 as base build environment
- optimization: eliminate undo sessi...
1.27.8
This is a minor release that does not require a hardfork yet.
Warning If you are upgrading from version older than 1.27.7 please read all relevant release notes, i.e.: https://github.com/openhive-network/hive/releases
Fixes:
1.27.7
Release notes
Minor release. DOES NOT REQUIRE hardfork yet.
Warning: this update changes hived state format and requires hived node replay, if you are using version 1.27.6 or earlier.
Configuration option changes
-
The default behavior of options has changed. Previously, an option's default value would only take effect when the
config.inifile was generated for the first time. In that case, the file contained explicit option assignments based on their defaults. This was misleading because it was impossible to determine later whether an option was intentionally set by the user or simply left as the default.
Now, options without explicit assignments in theconfig.ini(or in application command line argument list) have internally set default value regardless ofconfig.inipresence. -
Changes made in the hived configuration option set:
-
Added new options specific to performance tweaks (to prevent transaction flood):
rc-flood-level,rc-flood-surcharge,max-mempool-sizeMore details can be found here: https://gitlab.syncad.com/hive/hive/-/merge_requests/1397
-
Added option to configure a block log splitting:
block-log-split, defaults to9999and allows to automatically split monolithic block log file into 1M block chunks.
Please note that this behavior can be troublesome if your environment has limited disk space (you need temporarily twice the size of block_log to split it).
If you want to keep old behavior (monolithic block_log), please set this option to-1. -
Simplified usage of transaction status plugin and change its options:
- removed
transaction-status-track-after-block, - removed
transaction-status-rebuild-state,
Right now transaction status plugin relies only on
transaction-status-block-depthand head block number estimation so it activates tracking automatically according to chosen depth. - removed
-
Removed deprecated hived plugins:
followsandtags -
Eliminated options for deprecated plugins: https://gitlab.syncad.com/hive/hive/-/issues/649
-
Changed p2p plugin options:
- removed
seed-nodein favor top2p-seed-node - removed
force-validatein favor top2p-force-validate
- removed
-
Changed webserver plugin options:
rpc-endpointoption removed in favor of:webserver-http-endpointorwebserver-ws-endpoint
-
Changes in the set of options useful for testing:
stop-replay-at-blockhas been changed tostop-at-blockwhich also allows to stop during p2p sync (i.e. not only during replay).exit-before-syncoption has been replaced byexit-at-blockwhich also allows to exit during p2p sync.- Removed debug plugin
edit-scriptoption
-
Functional changes
Implemented HF28 changes (even this version does not activate the Hardfork)
- Improved witness properties update (new values appeared too early) https://gitlab.syncad.com/hive/hive/-/merge_requests/1360
- Max block size configuration (by witnesses) can't exceed 2MB value: https://gitlab.syncad.com/hive/hive/-/merge_requests/1357
- Increased transaction expiration time: https://gitlab.syncad.com/hive/hive/-/merge_requests/1383
- Authority verification changes:
- owner/active/posting authorities (i.e. required by mixed operation types) can be combined in single transaction
- redundant (ineffective) signatures are allowed. See details (for both above features): https://gitlab.syncad.com/hive/hive/-/merge_requests/1420
- accept only required level of authority: i.e. using
activeauthority to satisfypostinglevel will be not accepted anymore.
See https://gitlab.syncad.com/hive/hive/-/merge_requests/1408 and https://gitlab.syncad.com/hive/hive/-/issues/716 for details.
- Voting power changes: https://gitlab.syncad.com/hive/hive/-/issues/609
- Eliminate vote edit limits: https://gitlab.syncad.com/hive/hive/-/issues/458
- Recurrent transfer changes:
- Allow multiple recurrent transfers targeting same account pair: https://gitlab.syncad.com/hive/hive/-/issues/382
- Fixes related to recurrence limit time: https://gitlab.syncad.com/hive/hive/-/issues/456
- Fixes related to decline_voting_rights operation: https://gitlab.syncad.com/hive/hive/-/issues/441
HF28 has been scheduled to 08. February 2025 13:00 UTC, although to make it possible another (1.28.0) version must be published. It is planned to make it backward compatible to this one (containing only version change).
New features
- Support for pruned block log. Hived configuration options allows to store blocks in local blockchain subdirectory as:
- monolithic file (as previously: single block_log file),
- split into 1M block parts what allows you to relocate files across different filesystems and symlink them in the blockchain directory
- prunned to store latest N 1M block parts (including 0 to avoid block storage at all) Block log prunning allows to save disk space, but also reduces ability to support
block_apiusage and P2P communication. The hived tool is also able to perform automatically block_log split when configuration change from monolithic to split storage. Theblock-log-splitoption defaults to9999to enable split mode in the block storage.block_log_utiltool also has been extended by support of file splitting.
- Hived API supports keep-alive connections: https://gitlab.syncad.com/hive/hive/-/merge_requests/1363
- Configuration ability preventing hived node flooding. See previously mentioned options for details.
Functional and performance improvements
- Better error handling in case of missing disk space to store shared memory file. Allows to see error at hived startup, instead of at random time when actual memory allocation failed during runtime processing. See https://gitlab.syncad.com/hive/hive/-/merge_requests/1372 for details
Bug fixes
- Fixed
api_account_object::post_voting_powervalue returned by all database_api methods providing account properties (likefind_accounts- previously hived returned incorrect data. See https://gitlab.syncad.com/hive/hive/-/merge_requests/1401 for details - Fixed operation JSON format returned by condenser_api methods: https://gitlab.syncad.com/hive/hive/-/merge_requests/1381
- Fixed
database_api.verify_account_authoritycall: https://gitlab.syncad.com/hive/hive/-/merge_requests/1328/diffs?commit_id=3156ddf4bf16e2f0b4742762115651010621dac3 condenser_api.verify_account_authorityadjusted to above changes- Some DGPO properties have been updated too early: https://gitlab.syncad.com/hive/hive/-/merge_requests/1360
- Eliminated crash at resync: https://gitlab.syncad.com/hive/hive/-/merge_requests/1367
- Eliminated multi threading issues in witness plugin: https://gitlab.syncad.com/hive/hive/-/merge_requests/1268
- Hived shutdown fixes: https://gitlab.syncad.com/hive/hive/-/merge_requests/1418
1.27.6
No consensus changes (No HardFork Required).
No replay required when upgrading from version 1.27.5.
Replay required from versions 1.27.4 and older.
P2P Communication Stability: Resolved an issue in peer-to-peer communication where, under rare circumstances, faulty code could cause a crash.
v1.27.5
This is a minor release: 1.27.5. It does not require a hardfork nor a hived node upgrade (although it is recommended). Upgraded nodes will require a full replay.
Most of changes is specific to API nodes improvements like also this version is required by HAF node.
- Hive/Blockchain features/improvements
- Hardfork 28 changes (note: date in code is a placeholder HF28 date, likely to change in the future):
- Multiple recurrent transfers for same sender/receiver pair: https://gitlab.syncad.com/hive/hive/-/merge_requests/870
- Tests and fix (enabled at HF28) related to bad vests/hive price rounding that lead to improper calculations at very early hardforks: https://gitlab.syncad.com/hive/hive/-/merge_requests/901
- Account history API improvements (defines an explicit operation filter for API calls): https://gitlab.syncad.com/hive/hive/-/merge_requests/898
- All condenser API methods return result sets using the JSON legacy form: https://gitlab.syncad.com/hive/hive/-/merge_requests/964
proposal_pay_operation(virtual operation) uses less space (unneeded fields have been removed): https://gitlab.syncad.com/hive/hive/-/merge_requests/973- Ability to specify some chain parameters in non-mainnet builds in order to simplify testing: https://gitlab.syncad.com/hive/hive/-/merge_requests/888
- Fix bugs related to fc logger (file appenders):
- Fix random crash at hived exit: https://gitlab.syncad.com/hive/hive/-/merge_requests/990
- The auto-generated block_log.artifacts file has a new format and supports interruption and better consistency validation:
- Improve validation of snapshot consistency (improved validation):
- https://gitlab.syncad.com/hive/hive/-/merge_requests/913
- https://gitlab.syncad.com/hive/hive/-/merge_requests/919
- loading a snapshot automatically wipes any old shared memory file (previously the loading aborted with an error message): https://gitlab.syncad.com/hive/hive/-/merge_requests/969
- Resource constraint (RC) code moved closer to the chain code, slightly reducing memory footprint, making it more core-code compliant, and iteratively preparing for RC to be part of consensus in the future:
- In order to speed up file IO, hived has a new dependency: uring library https://gitlab.syncad.com/hive/hive/-/merge_requests/968
- Code cleanup:
- Removed legacy operation classes & related code: https://gitlab.syncad.com/hive/hive/-/merge_requests/923
- Removed support for unused automated actions: https://gitlab.syncad.com/hive/hive/-/merge_requests/938
- Hardfork 28 changes (note: date in code is a placeholder HF28 date, likely to change in the future):
- New beekeeper tool that safely holds customer keys and signs Hive transactions without a need to directly access private keys:
- https://gitlab.syncad.com/hive/hive/-/merge_requests/902
- https://gitlab.syncad.com/hive/hive/-/merge_requests/929
- Beekeeper is directly accessible from JS environments (e.g. web browser): https://gitlab.syncad.com/hive/hive/-/merge_requests/976
- DevOps/CI improvements:
- Common job definitions used across several Hive repos: https://gitlab.syncad.com/hive/hive/-/merge_requests/765
- Mirrornet conversion can be done automatically: https://gitlab.syncad.com/hive/hive/-/merge_requests/877
- Tests improvements:
- Unified unit tests startup by sharing regular hived code inside Boost Unit Test framework: https://gitlab.syncad.com/hive/hive/-/merge_requests/948
- Shared tools/test code across HAF repo: https://gitlab.syncad.com/hive/hive/-/merge_requests/892
- Thorough tests specific to Account History API: https://gitlab.syncad.com/hive/hive/-/merge_requests/928
- Improved tests related to decline_voting_rights behavior
- Dedicated test scenarios for verifying account recovery system https://gitlab.syncad.com/hive/hive/-/merge_requests/885
- Dedicated test scenarios for power up https://gitlab.syncad.com/hive/hive/-/merge_requests/911
- Dedicated test scenarios for limit order create: https://gitlab.syncad.com/hive/hive/-/merge_requests/927
and more (to be supplemented soon)
v1.27.4
Warning: this update changes hived state format and requires hived node replay, if you are using version 1.27.3 or earlier.
- General notes: upgrade to Ubuntu 22.04 as base supported OS: https://gitlab.syncad.com/hive/hive/-/merge_requests/838
- New features:
- new virtual operations emitted: https://gitlab.syncad.com/hive/hive/-/merge_requests/332
- prepare code for new Hardfork 28
- prerequisites for strict matching of Hived data structures to the shared_memory.bin and snapshot contents: https://gitlab.syncad.com/hive/hive/-/merge_requests/784
- Hived bugfixes:
- fixed shutdown problems:
- while executing broadcast_transaction_synchronuous: https://gitlab.syncad.com/hive/hive/-/merge_requests/812
- when --exit-before-sync was used: https://gitlab.syncad.com/hive/hive/-/merge_requests/833
- plugin/index state is more strict verified (Issue #423): https://gitlab.syncad.com/hive/hive/-/merge_requests/772
- fixed cli_wallet shutdown problems leading to random failure: https://gitlab.syncad.com/hive/hive/-/merge_requests/726
- elimination of custom fc::uint128 implementation (standard builtin GCC type is used): https://gitlab.syncad.com/hive/hive/-/merge_requests/804
- silent truncation of fixed_string is eliminated (what could lead to silent modification of broken operations in transaction - now they will explicitly fail): https://gitlab.syncad.com/hive/hive/-/merge_requests/794
- Fixed transaction counter in AH RockDB plugin (to improve reporting): https://gitlab.syncad.com/hive/hive/-/merge_requests/850
- Fixed impacted account collection (leads to AH collection) for
comment_payout_beneficiaries: https://gitlab.syncad.com/hive/hive/-/merge_requests/844 - Account History API better handles history data coming from reversible blocks: https://gitlab.syncad.com/hive/hive/-/merge_requests/866
- RC mana can't go under zero anymore: https://gitlab.syncad.com/hive/hive/-/merge_requests/863
- fixed shutdown problems:
- Python regression test improvements:
- https://gitlab.syncad.com/hive/hive/-/merge_requests/811
- https://gitlab.syncad.com/hive/hive/-/merge_requests/683
- https://gitlab.syncad.com/hive/hive/-/merge_requests/813
- database_api suite extended: https://gitlab.syncad.com/hive/hive/-/merge_requests/516
- dedicated performance test suite for recurrent transfers to show corner cases: https://gitlab.syncad.com/hive/hive/-/merge_requests/823
- enhanced suite related to condenser_api, transaction_status_api https://gitlab.syncad.com/hive/hive/-/merge_requests/816, https://gitlab.syncad.com/hive/hive/-/merge_requests/795
- created tests specific to decline_voting_rights and proxy operations: https://gitlab.syncad.com/hive/hive/-/merge_requests/851, https://gitlab.syncad.com/hive/hive/-/merge_requests/815
- new tests for market_history_api: https://gitlab.syncad.com/hive/hive/-/merge_requests/826
- enhanced tests specific to recurrent transfers: https://gitlab.syncad.com/hive/hive/-/merge_requests/807
- Low level unit tests extended by suite of tests covering AH calls (prerequisites to internal code cleanup/refactoring, which will need good test base):
- Devops/workflow automation:
- dockerized setup fixes/simplifications (mostly solved permission issues):
- Simplify replay of test node and use GitLab cache to lower resource usage during testing: https://gitlab.syncad.com/hive/hive/-/merge_requests/801
- Official Hive images can be published by automatic job: https://gitlab.syncad.com/hive/hive/-/merge_requests/868
v1.27.0
Restore the prior timeshare/backup witness scheduling behavior.
Due the nature of this change it is a hardfork release.
v1.26.1
Optional bugfix release: snapshot dump and load extended by generic_index::_next_id to prevent update_proposal failures on nodes configured using snapshot.