Skip to content

Releases: planetarium/libplanet

Libplanet 4.0.4

07 Feb 07:02
ce5eb29
Compare
Choose a tag to compare

Released on February 7, 2024.

  • (Libplanet.Explorer) Revert a GraphQL query argument type change to make it compatible with old schema. [#3663]

Libplanet 4.0.3

06 Feb 10:00
c57e506
Compare
Choose a tag to compare

Released on February 6, 2024.

  • (Libplanet.Explorer) Revert GraphQL types to make it more compatible with old schema. [#3657]
    • Rolled back TxResultType's name to auto generated TxResultType from specified TxResult.
    • Rolled back BlockHash and TxId to be handled as IDGraphType instead of BlockHashType and TxIdType in legacy queries.
    • Rolled back HashDigest<SHA256> to be handled as HashDigestSHA256Type instead of HashDigestType<T> in legacy queries.

Libplanet 4.0.2

06 Feb 04:11
aefc466
Compare
Choose a tag to compare

Released on February 6, 2024.

  • (Libplanet.Net) Changed AppProtocolVersion.FromToken() to throw an Exception with more details. [#3648]
  • (Libplanet.Explorer) Updated outdated GraphQL schema. [#3649]

Libplanet 4.0.1

26 Jan 07:58
a53a465
Compare
Choose a tag to compare

Released on January 26, 2024.

  • (Libplanet.Action) Changed IWorld.SetAccount() to throw an ArgumentException under certain undesirable circumstances. [#3633]

Libplanet 3.9.6

26 Jan 06:08
6a086b2
Compare
Choose a tag to compare

Released on January 26, 2024.

  • (Libplanet.Store) Optimized TrieStateStore.CopyStates() to greatly reduce the amount of memory used. [#3634]

Libplanet 4.0.0

22 Jan 09:15
42fbee9
Compare
Choose a tag to compare

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]

Libplanet 3.9.5

18 Jan 11:32
d9942f8
Compare
Choose a tag to compare

Released on January 18, 2024.

  • (Libplanet.Store) Changed IStateStore.Commit() to return an ITrie with either its Root as null or a HashNode. [#3610]
  • (Libplanet.Store) Removed IStateStore.PruneStates() method. [#3613, #3614]

Libplanet 3.9.4

11 Jan 03:35
5c29929
Compare
Choose a tag to compare

Released on January 11, 2024.

  • (Libplanet.Explorer) Rolled back some changes to the API to be more compatible with pre-3.9.3 API. [#3600]
    • Changed the name BencodexValueType to IValueType.
    • Changed the name LegacyBencodexValueType to BencodexValueType.
    • Changed AddressType.Name from address to Address.
    • Changed BlockHashType.Name from blockHash to BlockHash.
    • Changed PublicKeyType.Name from publicKey to PublicKey.
    • Changed TxIdType.Name from txId to TxId.

Libplanet 3.9.3

04 Jan 02:17
3e14d03
Compare
Choose a tag to compare

Released on January 4, 2024.

Due to changes in #3567, a network ran with a prior version may not be compatible with this version, specifically, those that ran with Libplanet 2.0.0 and onwards prior to this release that have included Transactions that aren't compatible with the updated specification in #3567.

  • (Libplanet.Explorer) Added BlockHashType and TxIdType. [#3559]
  • (Libplanet.Explorer) Changed HashDigestSHA256Type to HashDigestType<T>. [#3559]
  • (Libplanet.Explorer) Changed BencodexValueType to inherit ObjectGraphType<IValue> instead of StringGraphType. Instead of simply being a hexadecimal representation of byte[] encoded IValue, now one can choose its representation format. [#3560]
  • (Libplanet.Explorer) Added HelperQuery, a collection of utility like queries. [#3561]
  • (Libplanet.Explorer) Removed IRichStore.StoreUpdatedAddressReferences() and IterateUpdatedAddressReferences() interface methods. [#3562]
  • (Libplanet.Explorer) Removed involvedAddress argument from all TransactionQuery query methods. [#3562]
  • (Libplanet.Explorer) Removed IRichStore interface. [#3564]
  • (Libplanet.Explorer) Removed parameters mysql-server, mysql-port, mysql-username, mysql-password, and mysql-database from Libplanet.Explorer.Executable. [#3564]
  • Changed TxInvoice to no longer allow negative values for MaxGasPrice and GasLimit. [#3567]
  • (Libplanet.Explorer) Added AccountStateType class. [#3570]
  • (Libplanet.Explorer) Added account and accounts query to StateQuery. [#3570]
  • (Libplanet.Store) Changed ShortNode to no longer inherit BaseNode. ShortNode.Value is no longer nullable. [#3572]
  • (Libplanet.Store) Removed FullNode() and added FullNode.Empty. [#3573]
  • (Libplanet.Store) Slightly optimized ITrie performance. [#3573]
  • (Libplanet.Store) Changed FullNode to no longer inherit BaseNode. [#3574]
  • (Libplanet.Store) Removed BaseNode. [#3574]
  • (Libplanet.Store) Added ITrie.Remove() interface method. [#3576]
  • (Libplanet.Store) Added FullNode.RemoveChild() method. [#3576]
  • (Libplanet.Action) Added IAccount.RemoveState() interface method. [#3577]
  • (Libplanet.Explorer) Added LegacyBencodexValueType class that is a copy of an old BencodexValueType with its name changed for backwards compatibility. Changed old states query to use LegacyBencodexValueType instead of BencodexValueType. [#3579]

Libplanet 3.9.2

15 Dec 05:28
81408bf
Compare
Choose a tag to compare

Released on December 15, 2023.

  • (Libplanet.RocksDBStore) Added DBOptions type parameter to RocksDBKeyValueStore(). [#3553]