From 7c248d21166d26575b7d9f0aee1f847c19c708ca Mon Sep 17 00:00:00 2001 From: Say Cheong Date: Fri, 3 Nov 2023 17:47:40 +0900 Subject: [PATCH] Remove public updatedAddresses parameter from Transaction.Create() --- .../GeneratedBlockChainFixture.cs | 24 ++- .../Commands/StoreCommandTest.cs | 4 +- Libplanet.Net.Tests/Consensus/ContextTest.cs | 5 +- Libplanet.Net.Tests/SwarmTest.Preload.cs | 4 +- Libplanet.Tests/Action/ActionEvaluatorTest.cs | 178 +++++++++++------- .../Blockchain/BlockChainTest.Append.cs | 8 +- .../Blockchain/BlockChainTest.Internals.cs | 4 +- Libplanet.Tests/Blockchain/BlockChainTest.cs | 40 ++-- Libplanet.Tests/Fixtures/IntegerSet.cs | 16 +- Libplanet.Tests/Store/StoreFixture.cs | 1 - Libplanet.Tests/Store/StoreTest.cs | 4 +- Libplanet.Tests/Tx/TransactionTest.cs | 25 +-- Libplanet.Tests/Tx/TxFixture.cs | 22 ++- Libplanet.Types/AssemblyInfo.cs | 1 + Libplanet.Types/Tx/Transaction.cs | 6 - Libplanet/Blockchain/BlockChain.cs | 4 - 16 files changed, 174 insertions(+), 172 deletions(-) diff --git a/Libplanet.Explorer.Tests/GeneratedBlockChainFixture.cs b/Libplanet.Explorer.Tests/GeneratedBlockChainFixture.cs index 8f35c9797cd..830acf6159d 100644 --- a/Libplanet.Explorer.Tests/GeneratedBlockChainFixture.cs +++ b/Libplanet.Explorer.Tests/GeneratedBlockChainFixture.cs @@ -189,16 +189,20 @@ private Transaction var random = new System.Random(seed); var addr = pk.ToAddress(); var bal = (int)(Chain.GetBalance(addr, TestCurrency).MajorUnit & int.MaxValue); - return Transaction.Create( - nonce, - pk, - Chain.Genesis.Hash, - random.Next() % 2 == 0 - ? GetRandomActions(random.Next()).ToPlainValues() - : ImmutableHashSet.Empty.ToPlainValues(), - null, - null, - GetRandomAddresses(random.Next())); + return + new Transaction( + new UnsignedTx( + new TxInvoice( + genesisHash: Chain.Genesis.Hash, + updatedAddresses: GetRandomAddresses(random.Next()), + timestamp: DateTimeOffset.UtcNow, + actions: new TxActionList(random.Next() % 2 == 0 + ? GetRandomActions(random.Next()).ToPlainValues() + : ImmutableHashSet.Empty.ToPlainValues()), + maxGasPrice: null, + gasLimit: null), + new TxSigningMetadata(pk.PublicKey, nonce)), + pk); } private ImmutableArray GetRandomActions(int seed) diff --git a/Libplanet.Extensions.Cocona.Tests/Commands/StoreCommandTest.cs b/Libplanet.Extensions.Cocona.Tests/Commands/StoreCommandTest.cs index 4d096b96545..d33f7db4e89 100644 --- a/Libplanet.Extensions.Cocona.Tests/Commands/StoreCommandTest.cs +++ b/Libplanet.Extensions.Cocona.Tests/Commands/StoreCommandTest.cs @@ -369,8 +369,6 @@ private Transaction DummyTransaction() new[] { new Utils.DummyAction() }.ToPlainValues(), null, null, - null, - DateTimeOffset.UtcNow - ); + DateTimeOffset.UtcNow); } } diff --git a/Libplanet.Net.Tests/Consensus/ContextTest.cs b/Libplanet.Net.Tests/Consensus/ContextTest.cs index 6f138e00dcc..aa69757b1fe 100644 --- a/Libplanet.Net.Tests/Consensus/ContextTest.cs +++ b/Libplanet.Net.Tests/Consensus/ContextTest.cs @@ -1,5 +1,4 @@ using System; -using System.Collections.Immutable; using System.Linq; using System.Text.Json; using System.Threading.Tasks; @@ -362,9 +361,7 @@ void BroadcastMessage(ConsensusMsg message) => nonce: 0, privateKey: TestUtils.PrivateKeys[1], genesisHash: blockChain.Genesis.Hash, - actions: new[] { action }.ToPlainValues(), - updatedAddresses: ImmutableHashSet.Create(DelayAction.TrivialUpdatedAddress) - ); + actions: new[] { action }.ToPlainValues()); blockChain.StageTransaction(tx); var block = blockChain.ProposeBlock(TestUtils.PrivateKeys[1]); diff --git a/Libplanet.Net.Tests/SwarmTest.Preload.cs b/Libplanet.Net.Tests/SwarmTest.Preload.cs index bc9db0d1c18..466e5f5b9e9 100644 --- a/Libplanet.Net.Tests/SwarmTest.Preload.cs +++ b/Libplanet.Net.Tests/SwarmTest.Preload.cs @@ -466,9 +466,7 @@ public async Task PreloadWithFailedActions() new[] { action }.ToPlainValues(), null, null, - ImmutableHashSet
.Empty, - DateTimeOffset.UtcNow - ); + DateTimeOffset.UtcNow); Block block = minerChain.ProposeBlock( ChainPrivateKey, diff --git a/Libplanet.Tests/Action/ActionEvaluatorTest.cs b/Libplanet.Tests/Action/ActionEvaluatorTest.cs index ca5f9d2eb08..48506144cbd 100644 --- a/Libplanet.Tests/Action/ActionEvaluatorTest.cs +++ b/Libplanet.Tests/Action/ActionEvaluatorTest.cs @@ -278,32 +278,50 @@ DumbAction MakeAction(Address address, char identifier, Address? transferTo = nu Transaction[] block1Txs = { - Transaction.Create( - nonce: 0, - privateKey: _txFx.PrivateKey1, - genesisHash: genesis.Hash, - actions: new[] - { - MakeAction(addresses[0], 'A', addresses[1]), - MakeAction(addresses[1], 'B', addresses[2]), - }.ToPlainValues(), - updatedAddresses: new[] { addresses[0], addresses[1] }.ToImmutableHashSet(), - timestamp: DateTimeOffset.MinValue.AddSeconds(2)), - Transaction.Create( - nonce: 0, - privateKey: _txFx.PrivateKey2, - genesisHash: genesis.Hash, - actions: new[] - { - MakeAction(addresses[2], 'C', addresses[3]), - }.ToPlainValues(), - timestamp: DateTimeOffset.MinValue.AddSeconds(4)), - Transaction.Create( - nonce: 0, - privateKey: _txFx.PrivateKey3, - genesisHash: genesis.Hash, - actions: Array.Empty().ToPlainValues(), - timestamp: DateTimeOffset.MinValue.AddSeconds(7)), + new Transaction( + new UnsignedTx( + new TxInvoice( + genesisHash: genesis.Hash, + updatedAddresses: new[] + { + addresses[0], + addresses[1], + }.ToImmutableHashSet(), + timestamp: DateTimeOffset.MinValue.AddSeconds(2), + actions: new TxActionList(new[] + { + MakeAction(addresses[0], 'A', addresses[1]), + MakeAction(addresses[1], 'B', addresses[2]), + }.ToPlainValues()), + maxGasPrice: null, + gasLimit: null), + new TxSigningMetadata(_txFx.PrivateKey1.PublicKey, 0)), + _txFx.PrivateKey1), + new Transaction( + new UnsignedTx( + new TxInvoice( + genesisHash: genesis.Hash, + updatedAddresses: ImmutableHashSet
.Empty, + timestamp: DateTimeOffset.MinValue.AddSeconds(4), + actions: new TxActionList(new[] + { + MakeAction(addresses[2], 'C', addresses[3]), + }.ToPlainValues()), + maxGasPrice: null, + gasLimit: null), + new TxSigningMetadata(_txFx.PrivateKey2.PublicKey, 0)), + _txFx.PrivateKey2), + new Transaction( + new UnsignedTx( + new TxInvoice( + genesisHash: genesis.Hash, + updatedAddresses: ImmutableHashSet
.Empty, + timestamp: DateTimeOffset.MinValue.AddSeconds(7), + actions: TxActionList.Empty, + maxGasPrice: null, + gasLimit: null), + new TxSigningMetadata(_txFx.PrivateKey3.PublicKey, 0)), + _txFx.PrivateKey3), }; foreach ((var tx, var i) in block1Txs.Zip( Enumerable.Range(0, block1Txs.Length), (x, y) => (x, y))) @@ -385,37 +403,55 @@ DumbAction MakeAction(Address address, char identifier, Address? transferTo = nu // Note that these timestamps in themselves does not have any meanings but are // only arbitrary. These purpose to make their evaluation order in a block // equal to the order we (the test) intend: - Transaction.Create( - 0, - _txFx.PrivateKey1, - genesis.Hash, - new[] { MakeAction(addresses[0], 'D') }.ToPlainValues(), - updatedAddresses: new[] { addresses[0] }.ToImmutableHashSet(), - timestamp: DateTimeOffset.MinValue.AddSeconds(1)), - Transaction.Create( - 0, - _txFx.PrivateKey2, - genesis.Hash, - new[] { MakeAction(addresses[3], 'E') }.ToPlainValues(), - updatedAddresses: new[] { addresses[3] }.ToImmutableHashSet(), - timestamp: DateTimeOffset.MinValue.AddSeconds(2)), - Transaction.Create( - 0, - _txFx.PrivateKey3, - genesis.Hash, - new[] - { - new DumbAction( - addresses[4], - "RecordRehearsal", - transferFrom: addresses[0], - transferTo: addresses[4], - transferAmount: 8, - recordRehearsal: true, - recordRandom: true), - }.ToPlainValues(), - updatedAddresses: new[] { addresses[4] }.ToImmutableHashSet(), - timestamp: DateTimeOffset.MinValue.AddSeconds(4)), + new Transaction( + new UnsignedTx( + new TxInvoice( + genesisHash: genesis.Hash, + updatedAddresses: new[] { addresses[0] }.ToImmutableHashSet(), + timestamp: DateTimeOffset.MinValue.AddSeconds(1), + actions: new TxActionList(new[] + { + MakeAction(addresses[0], 'D'), + }.ToPlainValues()), + maxGasPrice: null, + gasLimit: null), + new TxSigningMetadata(_txFx.PrivateKey1.PublicKey, 0)), + _txFx.PrivateKey1), + new Transaction( + new UnsignedTx( + new TxInvoice( + genesisHash: genesis.Hash, + updatedAddresses: new[] { addresses[3] }.ToImmutableHashSet(), + timestamp: DateTimeOffset.MinValue.AddSeconds(2), + actions: new TxActionList(new[] + { + MakeAction(addresses[3], 'E'), + }.ToPlainValues()), + maxGasPrice: null, + gasLimit: null), + new TxSigningMetadata(_txFx.PrivateKey2.PublicKey, 0)), + _txFx.PrivateKey2), + new Transaction( + new UnsignedTx( + new TxInvoice( + genesisHash: genesis.Hash, + updatedAddresses: new[] { addresses[4] }.ToImmutableHashSet(), + timestamp: DateTimeOffset.MinValue.AddSeconds(4), + actions: new TxActionList(new[] + { + new DumbAction( + addresses[4], + "RecordRehearsal", + transferFrom: addresses[0], + transferTo: addresses[4], + transferAmount: 8, + recordRehearsal: true, + recordRandom: true), + }.ToPlainValues()), + maxGasPrice: null, + gasLimit: null), + new TxSigningMetadata(_txFx.PrivateKey3.PublicKey, 0)), + _txFx.PrivateKey3), }; foreach ((var tx, var i) in block2Txs.Zip( Enumerable.Range(0, block2Txs.Length), (x, y) => (x, y))) @@ -625,7 +661,6 @@ public void EvaluateTxResultThrowingException() new[] { action }.ToPlainValues(), null, null, - ImmutableHashSet
.Empty, DateTimeOffset.UtcNow); var txs = new Transaction[] { tx }; var hash = new BlockHash(GetRandomBytes(BlockHash.Size)); @@ -840,17 +875,22 @@ public void OrderTxsForEvaluation( .Select(signerNoncePair => { Address targetAddress = signerNoncePair.signer.ToAddress(); - return Transaction.Create( - nonce: signerNoncePair.nonce, - privateKey: signerNoncePair.signer, - genesisHash: null, - actions: new[] - { - new RandomAction(signerNoncePair.signer.ToAddress()), - }.ToPlainValues(), - updatedAddresses: ImmutableHashSet.Create(targetAddress), - timestamp: epoch - ); + return new Transaction( + new UnsignedTx( + new TxInvoice( + genesisHash: null, + updatedAddresses: ImmutableHashSet.Create(targetAddress), + timestamp: epoch, + actions: new TxActionList(new[] + { + new RandomAction(signerNoncePair.signer.ToAddress()), + }.ToPlainValues()), + maxGasPrice: null, + gasLimit: null), + new TxSigningMetadata( + signerNoncePair.signer.PublicKey, + signerNoncePair.nonce)), + signerNoncePair.signer); }).ToImmutableArray(); // Rearrange transactions so that transactions are not grouped by signers diff --git a/Libplanet.Tests/Blockchain/BlockChainTest.Append.cs b/Libplanet.Tests/Blockchain/BlockChainTest.Append.cs index 3ab5f4ad974..a7e5c213e7e 100644 --- a/Libplanet.Tests/Blockchain/BlockChainTest.Append.cs +++ b/Libplanet.Tests/Blockchain/BlockChainTest.Append.cs @@ -639,17 +639,13 @@ public void CannotAppendBlockWithInvalidActions() nonce: 0, privateKey: txSigner, genesisHash: _blockChain.Genesis.Hash, - actions: Array.Empty().ToPlainValues(), - updatedAddresses: ImmutableHashSet
.Empty - ), + actions: Array.Empty().ToPlainValues()), invalidTx, Transaction.Create( nonce: 2, privateKey: txSigner, genesisHash: _blockChain.Genesis.Hash, - actions: Array.Empty().ToPlainValues(), - updatedAddresses: ImmutableHashSet
.Empty - ), + actions: Array.Empty().ToPlainValues()), }.OrderBy(tx => tx.Id); var metadata = new BlockMetadata( diff --git a/Libplanet.Tests/Blockchain/BlockChainTest.Internals.cs b/Libplanet.Tests/Blockchain/BlockChainTest.Internals.cs index 4a560f1c5f0..0336a28ad0d 100644 --- a/Libplanet.Tests/Blockchain/BlockChainTest.Internals.cs +++ b/Libplanet.Tests/Blockchain/BlockChainTest.Internals.cs @@ -35,9 +35,7 @@ Transaction MkTx(PrivateKey key, long nonce, DateTimeOffset? ts = null) => Array.Empty().ToPlainValues(), null, null, - null, - ts ?? DateTimeOffset.UtcNow - ); + ts ?? DateTimeOffset.UtcNow); PrivateKey a = new PrivateKey(); PrivateKey b = new PrivateKey(); diff --git a/Libplanet.Tests/Blockchain/BlockChainTest.cs b/Libplanet.Tests/Blockchain/BlockChainTest.cs index fa2355a049d..848481e27e1 100644 --- a/Libplanet.Tests/Blockchain/BlockChainTest.cs +++ b/Libplanet.Tests/Blockchain/BlockChainTest.cs @@ -597,22 +597,24 @@ public void ForkShouldSkipExecuteAndRenderGenesis() _ => _policy.BlockAction, stateStore, new SingleActionLoader(typeof(DumbAction))); + var privateKey = new PrivateKey(); var genesis = ProposeGenesisBlock( actionEvaluator, ProposeGenesis( GenesisProposer.PublicKey, transactions: new[] { - Transaction.Create( - nonce: 0, - privateKey: new PrivateKey(), - genesisHash: null, - actions: new[] { action }.ToPlainValues(), - maxGasPrice: null, - gasLimit: null, - updatedAddresses: ImmutableHashSet.Create(_fx.Address1), - timestamp: DateTimeOffset.UtcNow - ), + new Transaction( + new UnsignedTx( + new TxInvoice( + genesisHash: null, + updatedAddresses: ImmutableHashSet.Create(_fx.Address1), + timestamp: DateTimeOffset.UtcNow, + actions: new TxActionList(new[] { action }.ToPlainValues()), + maxGasPrice: null, + gasLimit: null), + new TxSigningMetadata(privateKey.PublicKey, 0)), + privateKey), }), privateKey: GenesisProposer); @@ -1887,13 +1889,17 @@ private void CreateWithGenesisBlock() .ToArray(); var customTxs = new[] { - Transaction.Create( - nonce: systemTxs.Length, - privateKey: privateKey, - genesisHash: null, - actions: customActions.ToPlainValues(), - updatedAddresses: addresses.ToImmutableHashSet() - ), + new Transaction( + new UnsignedTx( + new TxInvoice( + genesisHash: null, + updatedAddresses: addresses.ToImmutableHashSet(), + timestamp: DateTimeOffset.UtcNow, + actions: new TxActionList(customActions.ToPlainValues()), + maxGasPrice: null, + gasLimit: null), + new TxSigningMetadata(privateKey.PublicKey, systemTxs.Length)), + privateKey), }; var txs = systemTxs.Concat(customTxs).ToImmutableList(); var blockChainStates = new BlockChainStates( diff --git a/Libplanet.Tests/Fixtures/IntegerSet.cs b/Libplanet.Tests/Fixtures/IntegerSet.cs index 89bdc2592e1..151bddd423b 100644 --- a/Libplanet.Tests/Fixtures/IntegerSet.cs +++ b/Libplanet.Tests/Fixtures/IntegerSet.cs @@ -57,16 +57,12 @@ public IntegerSet( .Select(pair => new { State = (BigInteger)pair.State, pair.Key }) .Select(pair => new { Action = Arithmetic.Add(pair.State), pair.Key }) .Select(pair => - Transaction.Create( - 0, - pair.Key, - null, - new[] { pair.Action }.ToPlainValues(), - null, - null, - ImmutableHashSet
.Empty.Add(pair.Key.ToAddress()) - ) - ) + new Transaction( + new UnsignedTx( + new TxInvoice( + actions: new TxActionList(new[] { pair.Action.PlainValue })), + new TxSigningMetadata(pair.Key.PublicKey, 0)), + pair.Key)) .OrderBy(tx => tx.Id) .ToImmutableArray(); Miner = new PrivateKey(); diff --git a/Libplanet.Tests/Store/StoreFixture.cs b/Libplanet.Tests/Store/StoreFixture.cs index 6661eb2b7ca..67257768aa3 100644 --- a/Libplanet.Tests/Store/StoreFixture.cs +++ b/Libplanet.Tests/Store/StoreFixture.cs @@ -219,7 +219,6 @@ public Transaction MakeTransaction( actions?.ToPlainValues() ?? Array.Empty().ToPlainValues(), null, null, - updatedAddresses, timestamp ); } diff --git a/Libplanet.Tests/Store/StoreTest.cs b/Libplanet.Tests/Store/StoreTest.cs index 09a3da08d9b..4d48cfc92a9 100644 --- a/Libplanet.Tests/Store/StoreTest.cs +++ b/Libplanet.Tests/Store/StoreTest.cs @@ -741,9 +741,7 @@ int txNonce new[] { action }.ToPlainValues(), null, null, - ImmutableHashSet
.Empty, - DateTimeOffset.UtcNow - ); + DateTimeOffset.UtcNow); } const int taskCount = 5; diff --git a/Libplanet.Tests/Tx/TransactionTest.cs b/Libplanet.Tests/Tx/TransactionTest.cs index c69e52afacd..c92eca949ab 100644 --- a/Libplanet.Tests/Tx/TransactionTest.cs +++ b/Libplanet.Tests/Tx/TransactionTest.cs @@ -137,7 +137,6 @@ public void CreateWithCustomActions() }.Select(x => x.PlainValue), null, null, - ImmutableHashSet
.Empty, timestamp ); @@ -179,25 +178,8 @@ public void CreateWithDefaultUpdatedAddresses() 0, _fx.PrivateKey1, null, - Array.Empty().Select(x => x.PlainValue) - ); + Array.Empty().Select(x => x.PlainValue)); Assert.Empty(emptyTx.UpdatedAddresses); - - Address updatedAddr = new PrivateKey().ToAddress(); - var txWithAddr = Transaction.Create( - 0, - _fx.PrivateKey1, - null, - _fx.TxWithActions.Actions, - null, - null, - new[] { updatedAddr }.ToImmutableHashSet() - ); - - Assert.Equal( - new[] { updatedAddr }.ToHashSet(), - txWithAddr.UpdatedAddresses.ToHashSet() - ); } [Fact] @@ -210,9 +192,7 @@ public void CreateWithDefaultTimestamp() null, Array.Empty().Select(x => x.PlainValue), null, - null, - ImmutableHashSet
.Empty - ); + null); DateTimeOffset rightAfter = DateTimeOffset.UtcNow; Assert.InRange(tx.Timestamp, rightBefore, rightAfter); @@ -230,7 +210,6 @@ public void CreateWithMissingRequiredArguments() Array.Empty().Select(x => x.PlainValue), null, null, - ImmutableHashSet
.Empty, DateTimeOffset.UtcNow ) ); diff --git a/Libplanet.Tests/Tx/TxFixture.cs b/Libplanet.Tests/Tx/TxFixture.cs index c91f18f5291..1e1618dca9e 100644 --- a/Libplanet.Tests/Tx/TxFixture.cs +++ b/Libplanet.Tests/Tx/TxFixture.cs @@ -80,16 +80,18 @@ public TxFixture(BlockHash? genesisHash) ZoneId = 10, }, }; - TxWithActions = Transaction.Create( - 0, - PrivateKey1, - genesisHash, - actions.ToPlainValues(), - updatedAddresses: ImmutableHashSet.Create( - new Address("c2a86014073d662a4a9bfcf9cb54263dfa4f5cbc") - ), - timestamp: timestamp - ); + TxWithActions = new Transaction( + new UnsignedTx( + new TxInvoice( + genesisHash: genesisHash, + updatedAddresses: ImmutableHashSet.Create( + new Address("c2a86014073d662a4a9bfcf9cb54263dfa4f5cbc")), + timestamp: timestamp, + actions: new TxActionList(actions.ToPlainValues()), + maxGasPrice: null, + gasLimit: null), + new TxSigningMetadata(PrivateKey1.PublicKey, 0)), + PrivateKey1); } public PrivateKey PrivateKey1 { get; } diff --git a/Libplanet.Types/AssemblyInfo.cs b/Libplanet.Types/AssemblyInfo.cs index 4d7077a7967..0b2dfbb919c 100644 --- a/Libplanet.Types/AssemblyInfo.cs +++ b/Libplanet.Types/AssemblyInfo.cs @@ -1,3 +1,4 @@ using System.Runtime.CompilerServices; [assembly: InternalsVisibleTo("Libplanet.Tests")] +[assembly: InternalsVisibleTo("Libplanet.Explorer.Tests")] diff --git a/Libplanet.Types/Tx/Transaction.cs b/Libplanet.Types/Tx/Transaction.cs index 49272b63803..9d54135779c 100644 --- a/Libplanet.Types/Tx/Transaction.cs +++ b/Libplanet.Types/Tx/Transaction.cs @@ -233,8 +233,6 @@ public static Transaction Deserialize(byte[] bytes) /// The maximum gas price this transaction can pay fee. /// The maximum amount of gas this transaction can consume. /// - /// es whose - /// states affected by . /// The time this /// is created and signed. This goes to the /// property. If (which is default) is passed this will @@ -251,7 +249,6 @@ public static Transaction Create( IEnumerable actions, FungibleAssetValue? maxGasPrice = null, long? gasLimit = null, - IImmutableSet
? updatedAddresses = null, DateTimeOffset? timestamp = null) => Create( nonce, @@ -260,7 +257,6 @@ public static Transaction Create( new TxActionList(actions), maxGasPrice, gasLimit, - updatedAddresses, timestamp); /// @@ -310,7 +306,6 @@ private static Transaction Create( TxActionList actions, FungibleAssetValue? maxGasPrice = null, long? gasLimit = null, - IImmutableSet
? updatedAddresses = null, DateTimeOffset? timestamp = null) { if (privateKey is null) @@ -320,7 +315,6 @@ private static Transaction Create( var draftInvoice = new TxInvoice( genesisHash, - updatedAddresses ?? ImmutableHashSet
.Empty, timestamp ?? DateTimeOffset.UtcNow, actions, maxGasPrice, diff --git a/Libplanet/Blockchain/BlockChain.cs b/Libplanet/Blockchain/BlockChain.cs index 1989564468c..f818728d423 100644 --- a/Libplanet/Blockchain/BlockChain.cs +++ b/Libplanet/Blockchain/BlockChain.cs @@ -671,8 +671,6 @@ public long GetNextTxNonce(Address address) /// The maximum gas price this transaction can pay fee. /// The maximum amount of gas this transaction can consume. /// - /// es whose states affected by - /// . /// The time this is created and /// signed. /// A created new signed by the given @@ -682,7 +680,6 @@ public Transaction MakeTransaction( IEnumerable actions, FungibleAssetValue? maxGasPrice = null, long? gasLimit = null, - IImmutableSet
updatedAddresses = null, DateTimeOffset? timestamp = null) { timestamp = timestamp ?? DateTimeOffset.UtcNow; @@ -696,7 +693,6 @@ public Transaction MakeTransaction( actions.Select(x => x.PlainValue), maxGasPrice, gasLimit, - updatedAddresses, timestamp); StageTransaction(tx); return tx;