diff --git a/go.mod b/go.mod index ec5d2d7d5..a35086aea 100644 --- a/go.mod +++ b/go.mod @@ -25,7 +25,7 @@ require ( github.com/iotaledger/hive.go/stringify v0.0.0-20231027195901-620bd7470e42 github.com/iotaledger/inx-app v1.0.0-rc.3.0.20231028104239-869296c43f26 github.com/iotaledger/inx/go v1.0.0-rc.2.0.20231028104044-69b02af0058d - github.com/iotaledger/iota.go/v4 v4.0.0-20231028103644-b834fd54b02a + github.com/iotaledger/iota.go/v4 v4.0.0-20231031113109-5d7d59311967 github.com/labstack/echo/v4 v4.11.2 github.com/labstack/gommon v0.4.0 github.com/libp2p/go-libp2p v0.31.0 diff --git a/go.sum b/go.sum index 4bf13faa4..b52f0eaa4 100644 --- a/go.sum +++ b/go.sum @@ -309,8 +309,8 @@ github.com/iotaledger/inx-app v1.0.0-rc.3.0.20231028104239-869296c43f26 h1:ZZs7I github.com/iotaledger/inx-app v1.0.0-rc.3.0.20231028104239-869296c43f26/go.mod h1:aFS0dN6QgKGgZakGgEv57NOLw+pLGdEiGcfDZ3h9GL0= github.com/iotaledger/inx/go v1.0.0-rc.2.0.20231028104044-69b02af0058d h1:0SVvkN04C+Ylc2puM/c77HuvRMmHRl0BkNjlZx1YWeA= github.com/iotaledger/inx/go v1.0.0-rc.2.0.20231028104044-69b02af0058d/go.mod h1:WFa5hHen6fi3RBX4K6r4fzhGpoh+7KJVIyFztZHdM84= -github.com/iotaledger/iota.go/v4 v4.0.0-20231028103644-b834fd54b02a h1:WLW4iaJAx4N9Pujv+gzHklnnjCt5MPrtXyVcK3UXdNc= -github.com/iotaledger/iota.go/v4 v4.0.0-20231028103644-b834fd54b02a/go.mod h1:jqbLYq4a/FwuiPBqFfkAwwxU8vs3+kReRq2/tyX5qRA= +github.com/iotaledger/iota.go/v4 v4.0.0-20231031113109-5d7d59311967 h1:qiBW4TiRdzVJshLu7RoWn9ur64SFLCOQ0oFtQWtz4bk= +github.com/iotaledger/iota.go/v4 v4.0.0-20231031113109-5d7d59311967/go.mod h1:jqbLYq4a/FwuiPBqFfkAwwxU8vs3+kReRq2/tyX5qRA= github.com/ipfs/boxo v0.13.1 h1:nQ5oQzcMZR3oL41REJDcTbrvDvuZh3J9ckc9+ILeRQI= github.com/ipfs/boxo v0.13.1/go.mod h1:btrtHy0lmO1ODMECbbEY1pxNtrLilvKSYLoGQt1yYCk= github.com/ipfs/go-cid v0.4.1 h1:A/T3qGvxi4kpKWWcPC/PgbvDA2bjVLO7n4UeVwnbs/s= diff --git a/pkg/protocol/engine/utxoledger/iteration_test.go b/pkg/protocol/engine/utxoledger/iteration_test.go index 41a8b7050..968ed62b4 100644 --- a/pkg/protocol/engine/utxoledger/iteration_test.go +++ b/pkg/protocol/engine/utxoledger/iteration_test.go @@ -21,6 +21,7 @@ func TestUTXOComputeBalance(t *testing.T) { initialOutput := tpkg.RandLedgerStateOutputOnAddressWithAmount(iotago.OutputBasic, utils.RandAddress(iotago.AddressEd25519), 2_134_656_365) require.NoError(t, manager.AddGenesisUnspentOutput(initialOutput)) require.NoError(t, manager.AddGenesisUnspentOutput(tpkg.RandLedgerStateOutputOnAddressWithAmount(iotago.OutputAccount, utils.RandAddress(iotago.AddressAccount), 56_549_524))) + require.NoError(t, manager.AddGenesisUnspentOutput(tpkg.RandLedgerStateOutputOnAddressWithAmount(iotago.OutputAnchor, utils.RandAddress(iotago.AddressAccount), 56_549_524))) require.NoError(t, manager.AddGenesisUnspentOutput(tpkg.RandLedgerStateOutputOnAddressWithAmount(iotago.OutputFoundry, utils.RandAddress(iotago.AddressAccount), 25_548_858))) require.NoError(t, manager.AddGenesisUnspentOutput(tpkg.RandLedgerStateOutputOnAddressWithAmount(iotago.OutputNFT, utils.RandAddress(iotago.AddressEd25519), 545_699_656))) require.NoError(t, manager.AddGenesisUnspentOutput(tpkg.RandLedgerStateOutputOnAddressWithAmount(iotago.OutputBasic, utils.RandAddress(iotago.AddressAccount), 626_659_696))) @@ -43,12 +44,12 @@ func TestUTXOComputeBalance(t *testing.T) { unspent, err := manager.UnspentOutputs() require.NoError(t, err) - require.Equal(t, 5, len(unspent)) + require.Equal(t, 6, len(unspent)) balance, count, err := manager.ComputeLedgerBalance() require.NoError(t, err) - require.Equal(t, 5, count) - require.Equal(t, iotago.BaseToken(2_134_656_365+56_549_524+25_548_858+545_699_656+626_659_696), balance) + require.Equal(t, 6, count) + require.Equal(t, iotago.BaseToken(2_134_656_365+56_549_524+56_549_524+25_548_858+545_699_656+626_659_696), balance) } func TestUTXOIteration(t *testing.T) { @@ -67,6 +68,7 @@ func TestUTXOIteration(t *testing.T) { tpkg.RandLedgerStateOutputOnAddress(iotago.OutputNFT, utils.RandAddress(iotago.AddressNFT)), tpkg.RandLedgerStateOutputOnAddress(iotago.OutputNFT, utils.RandAddress(iotago.AddressAccount)), tpkg.RandLedgerStateOutputOnAddress(iotago.OutputAccount, utils.RandAddress(iotago.AddressEd25519)), + tpkg.RandLedgerStateOutputOnAddress(iotago.OutputAnchor, utils.RandAddress(iotago.AddressEd25519)), tpkg.RandLedgerStateOutputOnAddress(iotago.OutputFoundry, utils.RandAddress(iotago.AddressAccount)), tpkg.RandLedgerStateOutputOnAddress(iotago.OutputFoundry, utils.RandAddress(iotago.AddressAccount)), tpkg.RandLedgerStateOutputOnAddress(iotago.OutputFoundry, utils.RandAddress(iotago.AddressAccount)), diff --git a/pkg/protocol/engine/utxoledger/manager_test.go b/pkg/protocol/engine/utxoledger/manager_test.go index e9f38fe39..fe14c840e 100644 --- a/pkg/protocol/engine/utxoledger/manager_test.go +++ b/pkg/protocol/engine/utxoledger/manager_test.go @@ -23,6 +23,7 @@ func TestConfirmationApplyAndRollbackToEmptyLedger(t *testing.T) { tpkg.RandLedgerStateOutputWithType(iotago.OutputNFT), // spent tpkg.RandLedgerStateOutputWithType(iotago.OutputBasic), // spent tpkg.RandLedgerStateOutputWithType(iotago.OutputAccount), + tpkg.RandLedgerStateOutputWithType(iotago.OutputAnchor), tpkg.RandLedgerStateOutputWithType(iotago.OutputNFT), tpkg.RandLedgerStateOutputWithType(iotago.OutputFoundry), } @@ -45,7 +46,7 @@ func TestConfirmationApplyAndRollbackToEmptyLedger(t *testing.T) { return true })) - require.Equal(t, 7, outputCount) + require.Equal(t, 8, outputCount) var unspentCount int require.NoError(t, manager.ForEachUnspentOutput(func(_ *utxoledger.Output) bool { @@ -53,7 +54,7 @@ func TestConfirmationApplyAndRollbackToEmptyLedger(t *testing.T) { return true })) - require.Equal(t, 5, unspentCount) + require.Equal(t, 6, unspentCount) var spentCount int require.NoError(t, manager.ForEachSpentOutput(func(_ *utxoledger.Spent) bool { @@ -113,6 +114,7 @@ func TestConfirmationApplyAndRollbackToPreviousLedger(t *testing.T) { tpkg.RandLedgerStateOutputWithType(iotago.OutputFoundry), tpkg.RandLedgerStateOutputWithType(iotago.OutputBasic), // spent tpkg.RandLedgerStateOutputWithType(iotago.OutputAccount), + tpkg.RandLedgerStateOutputWithType(iotago.OutputAnchor), } index := iotago.SlotIndex(49) @@ -161,7 +163,7 @@ func TestConfirmationApplyAndRollbackToPreviousLedger(t *testing.T) { return true })) require.Empty(t, outputByOutputID) - require.Equal(t, 7, outputCount) + require.Equal(t, 8, outputCount) var unspentCount int require.NoError(t, manager.ForEachUnspentOutput(func(output *utxoledger.Output) bool { @@ -172,7 +174,7 @@ func TestConfirmationApplyAndRollbackToPreviousLedger(t *testing.T) { return true })) - require.Equal(t, 4, unspentCount) + require.Equal(t, 5, unspentCount) require.Empty(t, unspentByOutputID) var spentCount int diff --git a/pkg/protocol/engine/utxoledger/output_test.go b/pkg/protocol/engine/utxoledger/output_test.go index 7cfc6548e..66f882265 100644 --- a/pkg/protocol/engine/utxoledger/output_test.go +++ b/pkg/protocol/engine/utxoledger/output_test.go @@ -290,8 +290,7 @@ func TestAccountOutputSerialization(t *testing.T) { txCreationSlot := utils.RandSlotIndex() blockID := utils.RandBlockID() aliasID := utils.RandAccountID() - stateController := utils.RandAccountID() - governor := utils.RandAddress(iotago.AddressEd25519).(*iotago.Ed25519Address) + address := utils.RandAccountID().ToAddress() issuer := utils.RandNFTID() sender := utils.RandAccountID() amount := iotago_tpkg.RandBaseToken(iotago.MaxBaseToken) @@ -301,6 +300,49 @@ func TestAccountOutputSerialization(t *testing.T) { Amount: amount, AccountID: aliasID, Conditions: iotago.AccountOutputUnlockConditions{ + &iotago.AddressUnlockCondition{ + Address: address, + }, + }, + Features: iotago.AccountOutputFeatures{ + &iotago.SenderFeature{ + Address: sender.ToAddress(), + }, + }, + ImmutableFeatures: iotago.AccountOutputImmFeatures{ + &iotago.IssuerFeature{ + Address: issuer.ToAddress(), + }, + }, + } + + outputProof, err := iotago.NewOutputIDProof(iotago_tpkg.TestAPI, txCommitment, txCreationSlot, iotago.TxEssenceOutputs{iotaOutput}, 0) + require.NoError(t, err) + + output := CreateOutputAndAssertSerialization(t, blockID, index, iotaOutput, outputProof) + spent := CreateSpentAndAssertSerialization(t, output) + outputID := output.OutputID() + + require.ElementsMatch(t, byteutils.ConcatBytes([]byte{utxoledger.StoreKeyPrefixOutputUnspent}, outputID[:]), output.UnspentLookupKey()) + AssertOutputUnspentAndSpentTransitions(t, output, spent) +} + +func TestAnchorOutputSerialization(t *testing.T) { + txCommitment := iotago_tpkg.Rand32ByteArray() + txCreationSlot := utils.RandSlotIndex() + blockID := utils.RandBlockID() + aliasID := utils.RandAnchorID() + stateController := utils.RandAnchorID() + governor := utils.RandAddress(iotago.AddressEd25519).(*iotago.Ed25519Address) + issuer := utils.RandNFTID() + sender := utils.RandAnchorID() + amount := iotago_tpkg.RandBaseToken(iotago.MaxBaseToken) + index := utils.RandSlotIndex() + + iotaOutput := &iotago.AnchorOutput{ + Amount: amount, + AnchorID: aliasID, + Conditions: iotago.AnchorOutputUnlockConditions{ &iotago.StateControllerAddressUnlockCondition{ Address: stateController.ToAddress(), }, @@ -309,12 +351,12 @@ func TestAccountOutputSerialization(t *testing.T) { }, }, StateMetadata: make([]byte, 0), - Features: iotago.AccountOutputFeatures{ + Features: iotago.AnchorOutputFeatures{ &iotago.SenderFeature{ Address: sender.ToAddress(), }, }, - ImmutableFeatures: iotago.AccountOutputImmFeatures{ + ImmutableFeatures: iotago.AnchorOutputImmFeatures{ &iotago.IssuerFeature{ Address: issuer.ToAddress(), }, diff --git a/pkg/testsuite/mock/utils.go b/pkg/testsuite/mock/utils.go index f7cc8adcd..9689781dc 100644 --- a/pkg/testsuite/mock/utils.go +++ b/pkg/testsuite/mock/utils.go @@ -24,8 +24,8 @@ func WithInputs(inputs utxoledger.Outputs) options.Option[builder.TransactionBui InputID: input.OutputID(), Input: input.Output(), }) - case iotago.OutputAccount: - // For alias we need to unlock the state controller + case iotago.OutputAnchor: + // For anchor outputs we need to unlock the state controller txBuilder.AddInput(&builder.TxInput{ UnlockTarget: input.Output().UnlockConditionSet().StateControllerAddress().Address, InputID: input.OutputID(), @@ -42,14 +42,12 @@ func WithInputs(inputs utxoledger.Outputs) options.Option[builder.TransactionBui } } -func WithAccountInput(input *utxoledger.Output, governorTransition bool) options.Option[builder.TransactionBuilder] { +func WithAccountInput(input *utxoledger.Output) options.Option[builder.TransactionBuilder] { return func(txBuilder *builder.TransactionBuilder) { switch input.OutputType() { case iotago.OutputAccount: - address := input.Output().UnlockConditionSet().StateControllerAddress().Address - if governorTransition { - address = input.Output().UnlockConditionSet().GovernorAddress().Address - } + address := input.Output().UnlockConditionSet().Address().Address + txBuilder.AddInput(&builder.TxInput{ UnlockTarget: address, InputID: input.OutputID(), @@ -145,22 +143,19 @@ func WithBlockIssuerFeature(keys iotago.BlockIssuerKeys, expirySlot iotago.SlotI func WithAddBlockIssuerKey(key iotago.BlockIssuerKey) options.Option[builder.AccountOutputBuilder] { return func(accountBuilder *builder.AccountOutputBuilder) { - transition := accountBuilder.GovernanceTransition() - transition.BlockIssuerTransition().AddKeys(key) + accountBuilder.BlockIssuerTransition().AddKeys(key) } } func WithBlockIssuerKeys(keys iotago.BlockIssuerKeys) options.Option[builder.AccountOutputBuilder] { return func(accountBuilder *builder.AccountOutputBuilder) { - transition := accountBuilder.GovernanceTransition() - transition.BlockIssuerTransition().Keys(keys) + accountBuilder.BlockIssuerTransition().Keys(keys) } } func WithBlockIssuerExpirySlot(expirySlot iotago.SlotIndex) options.Option[builder.AccountOutputBuilder] { return func(accountBuilder *builder.AccountOutputBuilder) { - transition := accountBuilder.GovernanceTransition() - transition.BlockIssuerTransition().ExpirySlot(expirySlot) + accountBuilder.BlockIssuerTransition().ExpirySlot(expirySlot) } } @@ -209,12 +204,9 @@ func WithAccountConditions(conditions iotago.AccountOutputUnlockConditions) opti return func(accountBuilder *builder.AccountOutputBuilder) { for _, condition := range conditions.MustSet() { switch condition.Type() { - case iotago.UnlockConditionStateControllerAddress: - //nolint:forcetypeassert - accountBuilder.StateController(condition.(*iotago.StateControllerAddressUnlockCondition).Address) - case iotago.UnlockConditionGovernorAddress: + case iotago.UnlockConditionAddress: //nolint:forcetypeassert - accountBuilder.Governor(condition.(*iotago.GovernorAddressUnlockCondition).Address) + accountBuilder.Address(condition.(*iotago.AddressUnlockCondition).Address) } } } diff --git a/pkg/testsuite/mock/wallet_transactions.go b/pkg/testsuite/mock/wallet_transactions.go index 6b3481046..3d275b7ce 100644 --- a/pkg/testsuite/mock/wallet_transactions.go +++ b/pkg/testsuite/mock/wallet_transactions.go @@ -18,7 +18,7 @@ import ( func (w *Wallet) CreateAccountFromInput(transactionName string, inputName string, recipientWallet *Wallet, creationSlot iotago.SlotIndex, opts ...options.Option[builder.AccountOutputBuilder]) *iotago.SignedTransaction { input := w.Output(inputName) - accountOutput := options.Apply(builder.NewAccountOutputBuilder(recipientWallet.Address(), recipientWallet.Address(), input.BaseTokenAmount()). + accountOutput := options.Apply(builder.NewAccountOutputBuilder(recipientWallet.Address(), input.BaseTokenAmount()). Mana(input.StoredMana()), opts).MustBuild() @@ -151,7 +151,7 @@ func (w *Wallet) TransitionAccount(transactionName string, inputName string, opt signedTransaction := lo.PanicOnErr(w.createSignedTransactionWithOptions( transactionName, - WithAccountInput(input, true), + WithAccountInput(input), WithContextInputs(iotago.TxEssenceContextInputs{ &iotago.BlockIssuanceCreditInput{ AccountID: accountOutput.AccountID, @@ -192,7 +192,7 @@ func (w *Wallet) DestroyAccount(transactionName string, inputName string, creati CommitmentID: w.Node.Protocol.MainEngineInstance().Storage.Settings().LatestCommitment().Commitment().MustID(), }, }), - WithAccountInput(input, true), + WithAccountInput(input), WithOutputs(destructionOutputs), WithSlotCreated(creationSlot), )) @@ -250,7 +250,7 @@ func (w *Wallet) TransitionImplicitAccountToAccountOutput(transactionName string panic(fmt.Sprintf("output with alias %s is not an implicit account", inputName)) } - accountOutput := options.Apply(builder.NewAccountOutputBuilder(w.Address(), w.Address(), MinIssuerAccountAmount). + accountOutput := options.Apply(builder.NewAccountOutputBuilder(w.Address(), MinIssuerAccountAmount). AccountID(iotago.AccountIDFromOutputID(input.OutputID())), opts).MustBuild() diff --git a/pkg/testsuite/snapshotcreator/snapshotcreator.go b/pkg/testsuite/snapshotcreator/snapshotcreator.go index f0d3ee8a0..c09f9d622 100644 --- a/pkg/testsuite/snapshotcreator/snapshotcreator.go +++ b/pkg/testsuite/snapshotcreator/snapshotcreator.go @@ -249,8 +249,7 @@ func createAccount(accountID iotago.AccountID, address iotago.Address, tokenAmou Mana: mana, AccountID: accountID, Conditions: iotago.AccountOutputUnlockConditions{ - &iotago.StateControllerAddressUnlockCondition{Address: address}, - &iotago.GovernorAddressUnlockCondition{Address: address}, + &iotago.AddressUnlockCondition{Address: address}, }, Features: iotago.AccountOutputFeatures{ &iotago.BlockIssuerFeature{ diff --git a/pkg/utils/rand.go b/pkg/utils/rand.go index b6ff8e63a..9e35787f2 100644 --- a/pkg/utils/rand.go +++ b/pkg/utils/rand.go @@ -111,10 +111,17 @@ func RandNFTID() iotago.NFTID { } func RandAccountID() iotago.AccountID { - alias := iotago.AccountID{} - copy(alias[:], RandBytes(iotago.AccountIDLength)) + accountID := iotago.AccountID{} + copy(accountID[:], RandBytes(iotago.AccountIDLength)) - return alias + return accountID +} + +func RandAnchorID() iotago.AnchorID { + anchorID := iotago.AnchorID{} + copy(anchorID[:], RandBytes(iotago.AnchorIDLength)) + + return anchorID } func RandSlotIndex() iotago.SlotIndex { @@ -146,7 +153,7 @@ func RandAddress(addressType iotago.AddressType) iotago.Address { } func RandOutputType() iotago.OutputType { - outputTypes := []iotago.OutputType{iotago.OutputBasic, iotago.OutputAccount, iotago.OutputFoundry, iotago.OutputNFT, iotago.OutputDelegation} + outputTypes := []iotago.OutputType{iotago.OutputBasic, iotago.OutputAccount, iotago.OutputAnchor, iotago.OutputFoundry, iotago.OutputNFT, iotago.OutputDelegation} return outputTypes[RandomIntn(len(outputTypes)-1)] } @@ -181,12 +188,27 @@ func RandOutputOnAddressWithAmount(outputType iotago.OutputType, address iotago. }, Features: iotago.BasicOutputFeatures{}, } + case iotago.OutputAccount: //nolint:forcetypeassert // we already checked the type iotaOutput = &iotago.AccountOutput{ Amount: amount, AccountID: RandAccountID(), Conditions: iotago.AccountOutputUnlockConditions{ + &iotago.AddressUnlockCondition{ + Address: address, + }, + }, + Features: iotago.AccountOutputFeatures{}, + ImmutableFeatures: iotago.AccountOutputImmFeatures{}, + } + + case iotago.OutputAnchor: + //nolint:forcetypeassert // we already checked the type + iotaOutput = &iotago.AnchorOutput{ + Amount: amount, + AnchorID: RandAnchorID(), + Conditions: iotago.AnchorOutputUnlockConditions{ &iotago.StateControllerAddressUnlockCondition{ Address: address, }, @@ -195,9 +217,10 @@ func RandOutputOnAddressWithAmount(outputType iotago.OutputType, address iotago. }, }, StateMetadata: make([]byte, 0), - Features: iotago.AccountOutputFeatures{}, - ImmutableFeatures: iotago.AccountOutputImmFeatures{}, + Features: iotago.AnchorOutputFeatures{}, + ImmutableFeatures: iotago.AnchorOutputImmFeatures{}, } + case iotago.OutputFoundry: if address.Type() != iotago.AddressAccount { panic("not an alias address") @@ -221,6 +244,7 @@ func RandOutputOnAddressWithAmount(outputType iotago.OutputType, address iotago. Features: iotago.FoundryOutputFeatures{}, ImmutableFeatures: iotago.FoundryOutputImmFeatures{}, } + case iotago.OutputNFT: //nolint:forcetypeassert // we already checked the type iotaOutput = &iotago.NFTOutput{ @@ -234,6 +258,7 @@ func RandOutputOnAddressWithAmount(outputType iotago.OutputType, address iotago. Features: iotago.NFTOutputFeatures{}, ImmutableFeatures: iotago.NFTOutputImmFeatures{}, } + case iotago.OutputDelegation: //nolint:forcetypeassert // we already checked the type iotaOutput = &iotago.DelegationOutput{ @@ -249,6 +274,7 @@ func RandOutputOnAddressWithAmount(outputType iotago.OutputType, address iotago. }, }, } + default: panic("unhandled output type") } diff --git a/tools/gendoc/go.mod b/tools/gendoc/go.mod index 0fa7e6386..3abd303ab 100644 --- a/tools/gendoc/go.mod +++ b/tools/gendoc/go.mod @@ -73,7 +73,7 @@ require ( github.com/iotaledger/hive.go/stringify v0.0.0-20231027195901-620bd7470e42 // indirect github.com/iotaledger/inx-app v1.0.0-rc.3.0.20231028104239-869296c43f26 // indirect github.com/iotaledger/inx/go v1.0.0-rc.2.0.20231028104044-69b02af0058d // indirect - github.com/iotaledger/iota.go/v4 v4.0.0-20231028103644-b834fd54b02a // indirect + github.com/iotaledger/iota.go/v4 v4.0.0-20231031113109-5d7d59311967 // indirect github.com/ipfs/boxo v0.13.1 // indirect github.com/ipfs/go-cid v0.4.1 // indirect github.com/ipfs/go-datastore v0.6.0 // indirect diff --git a/tools/gendoc/go.sum b/tools/gendoc/go.sum index 955217c98..969b82ae7 100644 --- a/tools/gendoc/go.sum +++ b/tools/gendoc/go.sum @@ -313,8 +313,8 @@ github.com/iotaledger/inx-app v1.0.0-rc.3.0.20231028104239-869296c43f26 h1:ZZs7I github.com/iotaledger/inx-app v1.0.0-rc.3.0.20231028104239-869296c43f26/go.mod h1:aFS0dN6QgKGgZakGgEv57NOLw+pLGdEiGcfDZ3h9GL0= github.com/iotaledger/inx/go v1.0.0-rc.2.0.20231028104044-69b02af0058d h1:0SVvkN04C+Ylc2puM/c77HuvRMmHRl0BkNjlZx1YWeA= github.com/iotaledger/inx/go v1.0.0-rc.2.0.20231028104044-69b02af0058d/go.mod h1:WFa5hHen6fi3RBX4K6r4fzhGpoh+7KJVIyFztZHdM84= -github.com/iotaledger/iota.go/v4 v4.0.0-20231028103644-b834fd54b02a h1:WLW4iaJAx4N9Pujv+gzHklnnjCt5MPrtXyVcK3UXdNc= -github.com/iotaledger/iota.go/v4 v4.0.0-20231028103644-b834fd54b02a/go.mod h1:jqbLYq4a/FwuiPBqFfkAwwxU8vs3+kReRq2/tyX5qRA= +github.com/iotaledger/iota.go/v4 v4.0.0-20231031113109-5d7d59311967 h1:qiBW4TiRdzVJshLu7RoWn9ur64SFLCOQ0oFtQWtz4bk= +github.com/iotaledger/iota.go/v4 v4.0.0-20231031113109-5d7d59311967/go.mod h1:jqbLYq4a/FwuiPBqFfkAwwxU8vs3+kReRq2/tyX5qRA= github.com/ipfs/boxo v0.13.1 h1:nQ5oQzcMZR3oL41REJDcTbrvDvuZh3J9ckc9+ILeRQI= github.com/ipfs/boxo v0.13.1/go.mod h1:btrtHy0lmO1ODMECbbEY1pxNtrLilvKSYLoGQt1yYCk= github.com/ipfs/go-cid v0.4.1 h1:A/T3qGvxi4kpKWWcPC/PgbvDA2bjVLO7n4UeVwnbs/s= diff --git a/tools/genesis-snapshot/go.mod b/tools/genesis-snapshot/go.mod index aaab649cb..a92922bf8 100644 --- a/tools/genesis-snapshot/go.mod +++ b/tools/genesis-snapshot/go.mod @@ -10,7 +10,7 @@ require ( github.com/iotaledger/hive.go/lo v0.0.0-20231027195901-620bd7470e42 github.com/iotaledger/hive.go/runtime v0.0.0-20231027195901-620bd7470e42 github.com/iotaledger/iota-core v0.0.0-00010101000000-000000000000 - github.com/iotaledger/iota.go/v4 v4.0.0-20231028103644-b834fd54b02a + github.com/iotaledger/iota.go/v4 v4.0.0-20231031113109-5d7d59311967 github.com/mr-tron/base58 v1.2.0 github.com/spf13/pflag v1.0.5 golang.org/x/crypto v0.14.0 diff --git a/tools/genesis-snapshot/go.sum b/tools/genesis-snapshot/go.sum index 3dbf42773..880f443ff 100644 --- a/tools/genesis-snapshot/go.sum +++ b/tools/genesis-snapshot/go.sum @@ -52,8 +52,8 @@ github.com/iotaledger/hive.go/serializer/v2 v2.0.0-rc.1.0.20231020115340-13da292 github.com/iotaledger/hive.go/serializer/v2 v2.0.0-rc.1.0.20231020115340-13da292c580b/go.mod h1:SdK26z8/VhWtxaqCuQrufm80SELgowQPmu9T/8eUQ8g= github.com/iotaledger/hive.go/stringify v0.0.0-20231027195901-620bd7470e42 h1:OlDhgvJ48bZxcvTeebJ1b96xtNnJAddejd2Q4rlH1mU= github.com/iotaledger/hive.go/stringify v0.0.0-20231027195901-620bd7470e42/go.mod h1:FTo/UWzNYgnQ082GI9QVM9HFDERqf9rw9RivNpqrnTs= -github.com/iotaledger/iota.go/v4 v4.0.0-20231028103644-b834fd54b02a h1:WLW4iaJAx4N9Pujv+gzHklnnjCt5MPrtXyVcK3UXdNc= -github.com/iotaledger/iota.go/v4 v4.0.0-20231028103644-b834fd54b02a/go.mod h1:jqbLYq4a/FwuiPBqFfkAwwxU8vs3+kReRq2/tyX5qRA= +github.com/iotaledger/iota.go/v4 v4.0.0-20231031113109-5d7d59311967 h1:qiBW4TiRdzVJshLu7RoWn9ur64SFLCOQ0oFtQWtz4bk= +github.com/iotaledger/iota.go/v4 v4.0.0-20231031113109-5d7d59311967/go.mod h1:jqbLYq4a/FwuiPBqFfkAwwxU8vs3+kReRq2/tyX5qRA= github.com/ipfs/go-cid v0.4.1 h1:A/T3qGvxi4kpKWWcPC/PgbvDA2bjVLO7n4UeVwnbs/s= github.com/ipfs/go-cid v0.4.1/go.mod h1:uQHwDeX4c6CtyrFwdqyhpNcxVewur1M7l7fNU7LKwZk= github.com/klauspost/cpuid/v2 v2.2.5 h1:0E5MSMDEoAulmXNFquVs//DdoomxaoTY1kUhbc/qbZg=