Skip to content

Libplanet 4.0.0

Compare
Choose a tag to compare
@github-actions github-actions released this 22 Jan 09:15
· 997 commits to main since this release
42fbee9

Released on January 22, 2024.

Backward-incompatible API changes

  • Bumped BlockMetadata.CurrentProtocolVersion to 5. [#3524]
  • Removed BlockChain.GetBalance(Address, Currency, Address) method. [#3583]
  • Removed BlockChain.GetTotalSupply(Currency, Address) method. [#3583]
  • (Libplanet.Action) Changed ActionEvaluator to accept IWorld instead of IAccount. [#3462]
  • (Libplanet.Action) IActionEvaluation.OutputState became IWorld. (was IAccount) [#3462]
  • (Libplanet.Action) IAction.Execute() became to return IWorld. (was IAccount) [#3462]
  • (Libplanet.Action) IActionContext.PreviousState became IWorld. (was IAccount) [#3462]
  • (Libplanet.Action) Following methods in IFeeCollector interface became to accept and return IWorld. (was IAccount) [#3462]
    • IFeeCollector.Mortgage()
    • IFeeCollector.Refund()
    • IFeeCollector.Reward()
  • (Libplanet.Action) IBlockChainStates interface has been overhauled. [#3462, #3583]
    • Added IBlockChainStates.GetWorldState(BlockHash?) method.
    • Added IBlockChainStates.GetWorldState(HashDigest<SHA256>?) method.
    • Removed IBlockChainStates.GetAccountState(BlockHash?) method.
    • Removed IBlockChainStates.GetState(Address, BlockHash?) method.
    • Removed IBlockChainStates.GetStates(IReadOnlyList<Address>, BlockHash?) method.
    • Removed IBlockChainStates.GetBalance(Address, Currency, BlockHash?) method.
    • Removed IBlockChainStates.GetTotalSupply(Currency, BlockHash?) method.
    • Removed IBlockChainStates.GetValidatorSet(BlockHash?) method.
  • (@planetarium/tx) Remove the T generic argument of SignedTx<T>. [#3512]
  • (Libplanet.Common) Removed EnumerableExtensions class. [#3625, #3626]

Added APIs

  • Added BlockMetadata.LegacyStateVersion constant. [#3524]
  • (Libplanet.Action) Added IWorld interface and its implementation. [#3462]
    • Added World class.
  • (Libplanet.Action) Added IWorldDelta interface. [#3462]
  • (Libplanet.Action) Added IWorldState interface and its implementation. [#3462]
    • Added WorldBaseState class.
  • (Libplanet.Action) Added ReservedAddresses static class. [#3462]
  • (Libplanet.Store) Added TrieMetadata class. [#3540]
  • (Libplanet.Explorer) Added AccountStateType class. [#3462]
  • (Libplanet.Explorer) Added WorldStateType class. [#3462]
  • (Libplanet.Explorer) Added StateQuery.world field. [#3462]
  • (Libplanet.Explorer) Changed account and accounts query in StateQuery to be compatible with stateQuery.world. [#3589]