Releases: Wire-Network/wire-sysio
Release list
wire-sysio v1.0.0-dev (packaging validation)
Throwaway pre-release validating the packaging release pipeline (branch feature/packaging-deb-rpm-portable). Assets are attached by the Release Actions workflow.
v5.2.0-rc1
What's Changed
- added CHANGELOG.md by @bearcubsvet in #18
- renamed leap-util to sys-util by @bearcubsvet in #20
- Added flag to prevent expected failing tests from running, … by @brianjohnson5972 in #22
- Improvements for integration tests by @brianjohnson5972 in #24
- Wcore-43 s root replacement by @brianjohnson5972 in #21
- Explicit payer by @valthon in #26
- wcore-48 - Added Root processing Snapshot by @brianjohnson5972 in #27
- adding Dockerfile for testing plus unit test github action by @bearcubsvet in #28
- ED25519 support w/ libsodium by @dtaghavi in #19
- Update CMakeLists.txt versioning by @dtaghavi in #29
- edited tests/abieos module by @bearcubsvet in #30
Full Changelog: v5.1.0-rc1...v5.2.0-rc1
v5.1.0-rc1
Overview
This version introduces a protocol-level update for more efficient Merkle proofs and an optional state-header log for deeper historical queries.
Changes
Protocol Feature Updates
DISABLE_COMPRESSION_IN_TRANSACTION_MERKLE(#PR-10)
Prior to this feature being turned on, thetransaction_mrootfor a block was logically determined using a packed, and possibly zlib-compressed, transaction to calculate each transaction's digest. Because of this, proving that a transaction is present in the block required a zlib compression algorithm, which could be costly and inefficient in Solidity.
In order to make proving that a transaction was part of thetransaction_mrootmore feasible and efficient, this protocol feature changes thetransaction_mrootto pack and create the digest using the signatures (compression is no longer involved).
New Features
-
Block-state header log (#PR-11)
Ifstate-log=trueis passed in theconfig.iniwhen startingnodeopprocess, that node will maintain a block state header log. This is similar to the block log, except that it maintains the block's header state after the block becomes irreversible. If it is turned on, all of the block log configuration parameters are applied to the block log as well as the block log state.Maintaining the block state header log means that
/v1/chain/get_block_header_statewill be able to retrieve the block header state for any block that is stored in the block state header log. If the node is not configured to maintain a block state header log, then/v1/chain/get_block_header_statewill only return a block state header for blocks that have not become irreversible.
Changelog
Contributors
Pre-release wire-sysio v3.1.7
wire-sysio v3.1.7
Changes Carried Over from v3.1.6-rc2
Newaccount Logic
- No longer defaults system accounts to 0 NET/CPU/RAM; reverts to infinite CPU/NET for these accounts.
newaccountcan now be called by any privileged account (not justsysio).
Resource Charging Bug Fix
- Resolves transaction rejections when the contract had resources but the authorizer did not.
Removed “Bios Boot Accommodation”
- 200 block window of "Free resources" is no longer present.
New in v3.1.7
Macro Expansion
- Manually expanded
APP_HANDLERmacro due to issues expandingsysio.roaaccount name. (fixingreducepolicyinvocation issue)
Others
- Refined ROA table definitions in
sysio_roa_objects. - Adapted lower-level database calls for reading/writing to WASM contract tables( fixing
reducepolicyserialization errors)
Pre-release wire-sysio v3.1.6-rc-2
Bug Fixes
Changed newaccount logic
- It no longer defaults system accounts to 0 NET / CPU / RAM, it follows its original flow giving them infinite CPU / NET.
newaccountaction now can be called by all privileged accounts despitesysio.
Removed 7. Bios Boot Accommodation from v3.1.6-rc1
- 200 block window of "Free resources" is no longer present.
Resource charging bug:
- Context: It was rejecting transactions because authorizer didn't have resources even though the contract did. - Temporarily fixed early resource checks in
init().
Pre-release wire-sysio v3.1.6-rc-1
sysio.roa System Contract
-
New Native Action (
reducepolicy) -
Resource Management Overhaul
- resources are only issued by policies, which are in turn issued by Node Owners
- Replaces the old
userresapproach with sysio.roa’sreslimittable for resource usage tracking. - RAM usage is tracked during execution and charged at finalize
- Ensures
sysiopays for account creation resources, and accounts start with zero resources. - Removes
delegatebwandbuyramfrom the account creation process.
-
Policy Enforcement
- Prevents Node Owners from reducing system-required policies (like
sysioorsysio.*); they can only expand them.
- Prevents Node Owners from reducing system-required policies (like
-
Restricted Account Creation
- Only
sysiocan invokenewaccount.
- Only
-
Finalization Logic
- New resource charging logic: first, it will try to charge the contract, and if it doesn't have enough resources, it attempts to charge the authorizer. Rejecting only if neither account has the resources.
-
Integration with Chain Plugin and Tooling
- Updates
chain_pluginto reflect sysio.roa resource usage. - Adjusts
clio get accountto correctly report resource usage, including unlimited CPU/NET scenarios.
- Updates
7. Bios Boot Accommodation (TBD)
- Modifies the “free resources” condition to accommodate bios boot, toggling post-block 200.