Blockchain in C#/.NET for on-chain, decentralized gaming
Released on May 14, 2024.
Due to changes in #3780 and #3783, a network ran with a prior version may not be compatible with this version. Regarding #3780, a network that ran with an IAction
that has used GetTotalSupply()
with its execution result dependent on its value may not be compatible. Regarding #3783, a network that ran with an IAction
that has either used MintAsset()
and BurnAsset()
with its execution result dependent on handling of a possible Exception
thrown by these methods may not be compatible.
BlockMetadata.CurrentProtocolVersion
from 6 to 7. [#3769]IterateSubTrieValues(KeyBytes)
and IterateSubTrieNodes(KeyBytes)
methods to MerkleTrie
. [#3774]BlockMetadata.CurrencyAccountProtocolVersion
. [#3775]MockWorldState.ToModern()
and MockWorldState.SetTotalSupply()
methods. [#3778]TotalSupplyNotTrackableException
class. [#3780]IWorldState.GetTotalSupply()
no longer throws a TotalSupplyNotTrackableException
but returns a zero amount of corresponding FungibleAssetValue
. [#3780]Exception
s that may be thrown by IWorld.MintAsset()
and IWorld.BurnAsset()
.CurrencyAccount
class. [#3779]MockWorldState.SetBalance()
now automatically updates the total supply of the provided Currency
. [#3778]Released on April 18, 2024.
Released on April 17, 2024.
IWorld.SetValidator()
extension method. Use IWorld.SetValidatorSet()
extension method instead. [#3735]BlockMetadata.PoWProtocolVersion
to BlockMetadata.PBFTProtocolVersion
and BlockMetadata.LegacyStateVersion
to BlockMetadata.WorldStateProtocolVersion
while increasing each value by 1. [#3736]TrieMetadata.Version
from BigInteger
to int
. [#3738]TrieMetadata
to throw an ArgumentException
when trying to create an instance with an invalid version. [#3738]IWorldState.Version
interface property. [#3739]BlockMetadata.CurrentProtocolVersion
from 5 to 6. [#3741]BlockMetadata.TransferFixProtocolVersion
, BlockMetadata.SignatureProtocolVersion
, and BlockMetadata.TransactionOrderingFixProtocolVersion
constants. [#3742]ReservedAddresses.FungibleAssetAccount
. [#3745]ReservedAddresses.ValidatorSetAccount
's value from 0x1000000000000000000000000000000000000002
to 0x100000000000000000000000000000000000001
. [#3745]Released on April 8, 2024.
Due to changes in #3728, a network ran with a prior version may not be compatible with this version, specifically those that ran with IAction
s that has allowed negative balances through TransferAssets()
with allowNegativeBalance
as true
.
Txs
property of type IReadOnlyList<ITransaction>?
to IActionContext
. [#3713]TotalFungibleAssets
property from IWorld
. [#3714]GetBalance()
, GetTotalSupply()
, and GetValidatorSet()
of IWorldState
to extension methods. [#3715]MintAsset()
, BurnAsset()
, TransferAsset()
, and SetValidator()
of IWorld
to extension methods. [#3715]allowNegativeBalance
parameter from IWorld.TransferAsset()
extension method. [#3725, #3728]journal
, indexCacheSize
, and flush
parameters from DefaultStore
's constructor. [#3729]Released on March 22, 2024.
GetBalance()
and GetTotalSupply()
methods from IAccountState
to IWorldState
. [#3694, #3697]MintAsset()
, BurnAsset()
, and TransferAsset()
methods from IAccount
to IWorld
. [#3694, #3697]TotalSupplyDiff
, FungibleAssetValueDiff
, and ValidatorDiff
properties from AccountDiff
. [#3694, #3697]Uncommitted
property and CommitAccount()
method from IWorldDelta
. [#3694, #3699]GetValidatorSet()
from IAccountState
to IWorldState
. [#3702]SetValidator()
from IAccount
to IWorld
. [#3702]Libplanet.Mocks
project. [#3642]Released on March 8, 2024.
BaseIndex
class and changed BlockSet
base class from BaseIndex<BlockHash, Block>
to IReadOnlyDictionary<BlockHash, Block>
. [#3686]blocks
parameter type of Branch
class constructor from IEnumerable<(Block, BlockCommit)>
to IEnumerable<(Block, BlockCommit?)>
.AppProtocolVersion.Extra
field type from IValue
to IValue?
.extra
parameter type of AppProtocolVersion
class constructor from IValue
to IValue?
.extra
parameter type of AppProtocolVersion.Sign
method from IValue
to IValue?
.Libplanet.Store.Server.RemoteKeyValueService
[#3688]Libplanet.Store.Client.RemoteKeyValueStore
[#3688]ITrie.IterateNodes()
to greatly reduce the amount of memory used. [#3687]Released on February 22, 2024.
FeeCollector.Mortgage()
unintentionally resets accumulated Account.TotalUpdatedFungibleAssets
. [#3680]Released on February 20, 2024.
ActionEvaluation
by removing redundant commits. [#3675]