libplanet

Blockchain in C#/.NET for on-chain, decentralized gaming

LGPL-2.1 License

Downloads
10.1K
Stars
489
Committers
79

Bot releases are visible (Hide)

libplanet - Libplanet 4.0.6

Published by github-actions[bot] 8 months ago

Released on February 22, 2024.

  • (Libplanet.Action) Fixed a bug where FeeCollector.Mortgage() unintentionally resets accumulated Account.TotalUpdatedFungibleAssets. [#3680]
libplanet - Libplanet 4.0.5

Published by github-actions[bot] 8 months ago

Released on February 20, 2024.

  • (Libplanet.Action) Optimized ActionEvaluation by removing redundant commits. [#3675]
libplanet - Libplanet 4.0.4

Published by github-actions[bot] 9 months ago

Released on February 7, 2024.

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

Published by github-actions[bot] 9 months ago

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 - Libplanet 4.0.2

Published by github-actions[bot] 9 months ago

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 - Libplanet 4.0.1

Published by github-actions[bot] 9 months ago

Released on January 26, 2024.

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

Published by github-actions[bot] 9 months ago

Released on January 26, 2024.

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

Published by github-actions[bot] 9 months ago

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 - Libplanet 3.9.5

Published by github-actions[bot] 9 months ago

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 - Libplanet 3.9.4

Published by github-actions[bot] 9 months ago

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 - Libplanet 3.9.3

Published by github-actions[bot] 10 months ago

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 - Libplanet 3.9.2

Published by github-actions[bot] 10 months ago

Released on December 15, 2023.

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

Published by github-actions[bot] 11 months ago

Released on December 8, 2023.

  • (Libplanet.Explorer) Added INCLUDED to TxStatus enum. [#3542]
libplanet - Libplanet 3.9.0

Published by github-actions[bot] 11 months ago

Released on December 5, 2023.

Due to changes in #3529, 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 #3529.

Backward-incompatible API changes

  • (Libplanet.Action) Removed unnecessary extension methods: [#3520]
    • IReadOnlyList<IActionEvaluation>.GetRawTotalDelta()
    • IReadOnlyList<IAccountDelta>.OrderedSum()
    • IAccountDelta.ToRawDelta()
    • IAccount.GetUpdatedStates()
    • IAccount.GetUpdatedBalances()
    • IAccount.GetUpdatedTotalSupplies()
  • (Libplanet.Action) Changed IAccount to no longer track IAccountDelta. [#3520]
  • (Libplanet.Action) Removed IAccountDelta as parameter for constructors of Account class. [#3520]
  • (Libplanet.Action) Removed hashedSignature of type byte[] parameter from ActionEvaluator.GenerateRandomSeed(). [#3523]
  • Changed TxInvoice to no longer allow having the null-ness of MaxGasPrice and GasLimit to be different, i.e. either both should be null or both should not be null at the same time. [#3529]
  • (Libplanet.Action) Removed IAccountDelta interface. [#3535]
  • (Libplanet.Action) Removed IAccount.Delta interface property. [#3535]
  • (Libplanet.Action) Changed constructor IAccount(IAccountState, IImmutableDictionary<(Address, Currency), BigInteger>) to IAccount(IAccountState, IImmutableHashSet<(Address, Currency)>). [#3537]
libplanet - Libplanet 3.8.1

Published by github-actions[bot] 11 months ago

Released on November 27, 2023.

  • (Libplanet.Net) Fixed a bug where GossipConsensusMessageCommunicator does not clear _peerCatchupRounds on OnStartHeight(). [#3519]
  • (Libplanet.Net) GossipConsensusMessageCommunicator now filters ConsensusVoteMsg which height is different from latest Context. [#3519]
  • (Libplanet.Action) Fixed a bug where initialization of AccountMetrics is absent. [#3521]
libplanet - Libplanet 3.8.0

Published by github-actions[bot] 11 months ago

Released on November 24, 2023.

Backward-incompatible API changes

  • Removed updatedAddresses parameter from BlockChain.MakeTransaction() [#3480]
  • Removed updatedAddresses parameter from Transaction.Create(). [#3480]
  • Removed updatedAddresses parameter from all TxInvoice(). [#3480]
  • Removed Rehearsal property from IActionContext and ICommittedActionContext. [#3485]
  • (Libplanet.Crypto) Removed ToAddress() extension method for PrivateKey and PublicKey. [#3486]
  • (Libplanet.Crypto) Added Address property to PrivateKey and PublicKey. [#3486]

Backward-incompatible storage format changes

  • (Libplanet.Store) Changed Libplanet.RocksDBStore to use RocksDb instead of RocksDBSharp. Note Cannot read new version of Libplanet.RocksDBStore storage from under Libplanet.RocksDBStore version 3.6.1. [#1848, #3487]

Added APIs

  • (Libplanet.RocksDBStore) Added RocksDBInstanceType enum. [#3488]
  • (Libplanet.RocksDBStore) Changed RocksDBStore and RocksDBKeyValueStore to accept RocksDBInstanceType type instanceType parameter instead of @readonly parameter in their constructor. [#3488, RocksDb Instance Types]
libplanet - Libplanet 3.7.1

Published by github-actions[bot] 11 months ago

Released on November 21, 2023.

libplanet - Libplanet 3.6.2

Published by github-actions[bot] 11 months ago

Released on November 21, 2023.

  • (Libplanet.Net) Changed default ContextTimeoutOption values for more consistent and stable consensus. [#3506]
libplanet - Libplanet 3.6.1

Published by github-actions[bot] 11 months ago

Released on November 20, 2023.

  • (Libplanet.Store) Added optional cache parameter of type HashNodeCache to MerkleTrie() constructors. [#3495]
  • (Libplanet.Store) Added HashNodeCache class. [#3495]
  • (Libplanet.Store) Changed internal caching strategy of TrieStateStore for read/write optimization. [#3495]
libplanet - Libplanet 3.7.0

Published by github-actions[bot] 12 months ago

Released on October 27, 2023.

Backward-incompatible API changes

  • Added IBencodable interface to HashDigest<T>. [#3455]

Behavioral changes

  • Slightly optimized BlockMarshaler. [#3454]

Dependencies