Blockchain in C#/.NET for on-chain, decentralized gaming
LGPL-2.1 License
Bot releases are visible (Hide)
Published by github-actions[bot] over 1 year ago
Released on February 6, 2023.
Address(ImmutableArray<byte>)
constructor became Address(in ImmutableArray<byte>)
. [#2756]
BlockHash(ImmutableArray<byte>)
constructor became BlockHash(in ImmutableArray<byte>)
. [#2756]
Nonce(ImmutableArray<byte>)
constructor became Nonce(in ImmutableArray<byte>)
. [#2756]
IAccountStateView.GetValidatorSet()
method. [#2733]
IAccountStateDelta.SetValidator(Validator)
method. [#2733]
ITransport.AppProtocolVersion
, ITransport.TrustedAppProtocolVersionSigners
, and ITransport.DifferentAppProtocolVersionEncountered
properties. [#2743]
Swarm<T>(BlockChain<T>, PrivateKey, AppProtocolVersionOptions, HostOptions, SwarmOptions)
to Swarm<T>(BlockChain<T>, PrivateKey, ITransport, SwarmOptions)
. [#2743]
AppProtocolVersionOptions.TrustedAppProtocolVersionSigners
from IImmutableHashSet<PublicKey>?
to IImmutableHashSet<PublicKey>
. [#2759]
BoundPeer
to implement IBencodable
interface and removed [Serializable]
attribute from BoundPeer
. [#2778]
BoundPeer(Dictionary)
constructor's signature to BoundPeer(IValue)
. [#2778]
Address
to implement IBencodable
interface and removed [Serializable]
attribute from Address
. [#2778]
Address(Binary)
constructor's signature to Address(IValue)
. [#2778]
System.Text.Json.JsonSerializer
as they now have their own custom converters. Note that these serializations are unavailable on Unity due to its incomplete reflection support. [#2756]
Nonce
became represented as a single hexadecimal string in JSON.PublicKey
became represented as a single hexadecimal string in JSON.Block<T>
became represented as an object with values in JSON.TxId(in ImmutableArray<byte>)
constructor. [#2756]
ByteUtil.ParseHexToImmutable()
static method. [#2756]
Transaction<T>
serialized into JSON had lacked the content of its PublicKey
. [#2756]
stateQuery
hadn't work correctly. [#2757]
DefaultStore.PutTxExecution()
where sometimes TxExecution
data is in undefined state due to data corruption. [#2761]
NodeUtils<T>.CreateGenesisBlock()
where sometimes block data is in undefined state due to data corruption. [#2761]
Address(string)
could accept 42 chars with a wrong prefix. [#2781]
VolatileStagePolicy<T>(TimeSpan)
created with TimeSpan.MaxValue
as its argument would not behave properly and throw an ArgumentOutOfRangeException
. [#2783, #2784]
Published by github-actions[bot] over 1 year ago
Released on February 3th, 2023.
Published by github-actions[bot] almost 2 years ago
Released on January 19, 2023.
Web3KeyStore.Get()
hadn't worked properly on IL2CPP environment. [#2727]
NetMQTransport
log shows socket count wrongly. [#2708]
NetMQTransport.SendMessageAsync()
method hadn't disposed of internal sockets properly when connecting failed. [#2719]
BoundPeer()
constructor became to validate a hostname of endPoint
parameter. [#2721]
Published by github-actions[bot] almost 2 years ago
Released on Janurary 18th, 2023.
BlockLocator
to throw an ArgumentException
if an empty set of BlockHash
es are given during construction. [#2584]
BlockChain<T>()
now explicitly requires both store
and stateStore
arguments to be not null
. [#2609]
BlockChain<T>.Swap()
now throws an InvalidOperationException
if called on a non-canonical chain. [#2619]
actionsLogsList
parameter to TxSuccess
constructor. [#2474, #2505]
actionsLogsList
parameter to TxFailure
constructor. [#2474, #2505]
BlockLocator(Func<long, BlockHash?>, Func<BlockHash, long>, int)
constructor. Use BlockLocator.Create()
static method instead. [#2580, #2584]
IAction?
-typed policyBlockAction
parameter with PolicyBlockActionGetter
-typed policyBlockActionGetter
parameter in ActionEvaluator
constructor. [#2646]
IStore.GetCanonicalGenesisBlock<T>()
interface method and all its implementations. [#2664]
IPreEvaluationBlockHeader
-typed blockHeader
parameter with IActionTypeLoaderContext
-typed context
parameter in the below methods. [#2653]
IActionTypeLoader.Load()
.IActionTypeLoader.LoadAllActionTypes()
.IAccountStateDelta.SetValidator(Validator)
method. [#2716]
IAccountStateView.GetValidatorSet()
method. [#2716]
IBlockChainStates.GetValidatorSet(BlockHash, ValidatorSetStateCompleter<T>)
method. [#2716]
BlockChain.GetValidatorSet(BlockHash, ValidatorSetStateCompleter<T>)
method.BlockChainStates.GetValidatorSet(BlockHash, ValidatorSetStateCompleter<T>)
method.StateCompleterSet.ValidatorSetStateCompleter
property. [#2716]
workers
parameter from NetMQTransport.Create()
method and Swarm<T>()
constructor. [#2690]
Swarm<T>()
and NetMQTransport.Create()
to take AppProtocolVersionOptions
as a combined parameter instead of taking AppProtocolVersion
, IImmutableSet<PublicKey>?
, and DifferentAppProtocolVersionEncountered
separately. [#2693]
Swarm<T>()
and NetMQTransport.Create()
to take HostOptions
as a combined parameter instead of taking string?
, IEnumerable<IceServer>?
, and int?
separately. [#2701]
TxExecution.ActionsLogsList
property. [#2474, #2505]
ActionEvaluation.Logs
property. [#2474, #2505]
TxResult.ActionsLogsList
property. [#2474, #2505]
actionsLogsList
field to TxResultType
. [#2474, #2505]
BlockLocator.Create()
static method. [#2584]
PolicyBlockActionGetter
delegator type. [#2646]
IActionTypeLoader.LoadAllActionTypes()
method. [#2646]
StaticActionTypeLoader.LoadAllActionTypes()
method.IActionTypeLoaderContext
interface. [#2653]
AppProtocolVersionOptions
class. [#2693]
HostOptions
class. [#2701]
Validator
class. [#2716]
ValidatorSet
class. [#2716]
SetValidator
class. [#2716]
ValidatorSetGetter
delegate. [#2716]
ValidatorSetStateCompleter<T>
delegate. [#2716]
ValidatorSetStateCompleters<T>
class. [#2716]
ValidatorType
class. [#2716]
validators
query in StateQuery
. [#2716]
BlockChain<T>.FindNextHashes()
to return at most count
number of BlockHash
es regardless of the result. BlockChain<T>
. [#2581, #2584]
BlockChain<T>.FindNextHashes()
to return zero BlockHash
es if no branch point BlockHash
is found instead of returning BlockHash
es starting with the genesis BlockHash
. [#2582, #2584]
BlockLocator
index selection and sampling when creating an instance. [#2583, #2584]
VolatileStagePolicy<T>.Lifetime
from 3 hours to 10 minutes. [#2718]
NetMQTransport
log shows socket count wrongly. [#2708]
NetMQTransport.SendMessageAsync()
method hadn't disposed of internal sockets properly when connecting failed. [#2719]
Published by github-actions[bot] almost 2 years ago
Released on January 4, 2023.
Published by github-actions[bot] almost 2 years ago
Published by github-actions[bot] almost 2 years ago
Released on December 26, 2022.
Published by github-actions[bot] almost 2 years ago
Published by github-actions[bot] almost 2 years ago
Released on December 21, 2022.
Published by github-actions[bot] almost 2 years ago
Released on December 21, 2022.
NetMQTransport
and Swarm<T>
classes. [#2654]
Published by github-actions[bot] almost 2 years ago
Released on December 15, 2022.
NetMQTransport.SendMessageAsync()
hadn't been canceled properly. [#2641]
Published by github-actions[bot] almost 2 years ago
Released on December 15, 2022.
NetMQTransport
and TxCompletion<T>
classes. [#2631]
Published by github-actions[bot] almost 2 years ago
Released on December 3, 2022.
BlockChain<T>.MineBlock(PrivateKey, DateTimeOffset, bool, long, int, int, IComparer<Transaction<T>>, CancellationToken?)
by making it internal
. [#2529]
IStore.SetBlockPerceivedTime()
and IStore.GetBlockPerceivedTime()
methods. [#2575]
BlockPerception
struct. [#2575]
BlockChain<T>.PerceiveBlock()
method. [#2575]
BlockChain<T>.MineBlock(PrivateKey, DateTimeOffset?, bool?, long?, int?, int?, IComparer<Transaction<T>>, CancellationToken?)
to BlockChain<T>.MineBlock(PrivateKey, DateTimeOffset?, bool?, IComparer<Transaction<T>>, CancellationToken?)
by removing policy controlled parameters. [#2529]
BlockPolicy<T>()
constructor to take additional Func<long, int>
type parameter named getMinBlockProtocolVersion
. [#2593]
BlockChainStates<T>
class. [#2507]
BlockChain<T>
takes IBlockChainStates<T>
and ActionEvaluator<T>
directly. [#2507]
IPreEvaluationBlock
interface.IBlockContent
interface.ITransaction
interface.IActionTypeLoader
interface. [#2539]
StaticActionTypeLoader
class. [#2539]
/graphql/explorer
. [#2562]
IBlockPolicy.GetMinBlockProtocolVersion()
interface method. [#2593]
AppProtocolVersion.GetHashCode()
did not work as intended. [#2518, #2520]
planet
can be installed using Homebrew on macOS: brew install planetarium/brew/planet
. [#2555]
planet
supports command-line completion for bash and zsh. See also Cocona's manual on configuring command-line completion. [#2586]
serve
subcommand. [#2563]
serve
command instead. [#2563]
schema
subcommand. [#2563]
Published by github-actions[bot] almost 2 years ago
Released on December 1, 2022.
TxMetadata.ToBencodex()
method where the encoded timestamp had differed from TxMetadata.Timestamp
when it has non-zero time zone offset. [#2598]
Published by github-actions[bot] almost 2 years ago
Released on November 29, 2022.
.Iterate()
and .GetNextTxNonce()
of VolatileStagePolicy
. [#2589]
Published by github-actions[bot] almost 2 years ago
Published by github-actions[bot] almost 2 years ago
Published by github-actions[bot] almost 2 years ago
Released on November 2, 2022.
TxMetadata.ToBencodex()
overload methods with parameters. Use newly introduced parameterless TxMetadata.ToBencodex()
instead. [#2457]
UntypedTransaction(ITxMetadata, IEnumerable<IValue>, ImmutableArray<byte>)
to UntypedTransaction( ITxMetadata, IValue?, IValue?, ImmutableArray<byte>
) to support Transaction<T>.SystemAction
. [#2456, #2457]
UntypedTransaction.ActionValues
to UntypedTransaction.CustomActionsValue
and changed its type from IReadOnlyList<IValue>
to IValue?
. [#2456, #2457]
json
field to ActionType
GraphQL type. [#2418]
IValue? SystemActionValue
property to UntypedTransaction
. [#2456, #2457]
Libplanet.Explorer.Executable
became to work again. [#2420]
Published by github-actions[bot] almost 2 years ago
Published by github-actions[bot] about 2 years ago
Released on October 17, 2022.
TxResultType.UpdatedStateType
and TxResultType.FungibleAssetBalancesType
GraphQL types. [#2405]