Skip to content
Merged
Show file tree
Hide file tree
Changes from 3 commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/e2e.yml
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ jobs:
DOCKER_IMAGE: ghcr.io/${{ github.repository_owner }}/zetanode
DOCKER_TAG: ${{ github.ref == 'refs/heads/develop' && 'develop' || github.sha }}
outputs:
image: ${{ fromJson(steps.build.outputs.metadata)['image.name'] }}
image: ${{ steps.build.outputs.metadata && fromJson(steps.build.outputs.metadata)['image.name'] || '' }}
steps:
- uses: actions/checkout@v4

Expand Down
10 changes: 10 additions & 0 deletions .golangci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -94,3 +94,13 @@ linters:

- linters: [staticcheck]
text: "QF1008"

# Packages with names that conflict with Go stdlib
- linters: [revive]
path: "(pkg/(crypto|errors|math|os)|cmd/zetatool/context|zetaclient/context|rpc/namespaces/ethereum/net)/"
text: "var-naming"

# Packages with generic names (types, common, interfaces, utils, base)
- linters: [revive]
path: "/(types|common|interfaces|utils|base)/"
text: "var-naming"
2 changes: 1 addition & 1 deletion app/app.go
Original file line number Diff line number Diff line change
Expand Up @@ -153,7 +153,7 @@ var (
)

func getGovProposalHandlers() []govclient.ProposalHandler {
var govProposalHandlers []govclient.ProposalHandler
govProposalHandlers := make([]govclient.ProposalHandler, 0, 1)
govProposalHandlers = append(govProposalHandlers,
paramsclient.ProposalHandler,
//ibcclientclient.UpdateClientProposalHandler,
Expand Down
3 changes: 2 additions & 1 deletion cmd/zetacore_utils/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -97,7 +97,8 @@ func main() {
}
}

args := []string{"tx", "bank", "multi-send", signer}
args := make([]string, 0, 17+len(addresses))
args = append(args, "tx", "bank", "multi-send", signer)
args = append(args, addresses...)
args = append(
args,
Expand Down
2 changes: 1 addition & 1 deletion cmd/zetatool/cctx/cctx_details.go
Original file line number Diff line number Diff line change
Expand Up @@ -107,7 +107,7 @@ func (c *TrackingDetails) UpdateHashListAndPendingStatus(ctx *context.Context) {
tracker, err := zetacoreClient.GetOutboundTracker(goCtx, outboundChain.ChainId, outboundNonce)
if err == nil && tracker != nil {
c.updateOutboundConfirmation()
var hashList []string
hashList := make([]string, 0, len(tracker.HashList))
for _, hash := range tracker.HashList {
hashList = append(hashList, hash.TxHash)
}
Expand Down
8 changes: 6 additions & 2 deletions cmd/zetatool/cli/tss_balances.go
Original file line number Diff line number Diff line change
Expand Up @@ -159,7 +159,9 @@ func getTSSBalances(cmd *cobra.Command, args []string) error {
}
fmt.Printf("=== TSS %d of %d ===\n", i+1, len(tssHistoryRes.TssList))

if err := printTSSBalances(ctx, cfg, tss, network, zetacoreClient.Observer, showMigrationAmounts, showNonces); err != nil {
if err := printTSSBalances(
ctx, cfg, tss, network, zetacoreClient.Observer, showMigrationAmounts, showNonces,
); err != nil {
fmt.Printf("Error fetching balances for TSS (height %d): %v\n", tss.FinalizedZetaHeight, err)
continue
}
Expand Down Expand Up @@ -637,7 +639,9 @@ func printTSSBalances(
} else {
for i := range balances {
if balances[i].ChainID != 0 {
nonceLow, nonceHigh, ok := getPendingNoncesForChainAndTss(allNonces, balances[i].ChainID, tss.TssPubkey)
nonceLow, nonceHigh, ok := getPendingNoncesForChainAndTss(
allNonces, balances[i].ChainID, tss.TssPubkey,
)
if ok {
balances[i].PendingNonceLow = nonceLow
balances[i].PendingNonceHigh = nonceHigh
Expand Down
2 changes: 1 addition & 1 deletion e2e/e2etests/test_crosschain_swap.go
Original file line number Diff line number Diff line change
Expand Up @@ -83,7 +83,7 @@ func setupCrosschainSwap(r *runner.E2ERunner) {
func testERC20ToBTC(r *runner.E2ERunner) {
// msg would be [ZEVMSwapAppAddr, memobytes]
// memobytes is dApp specific; see the contracts/ZEVMSwapApp.sol for details
msg := []byte{}
msg := make([]byte, 0, len(r.ZEVMSwapAppAddr.Bytes()))
msg = append(msg, r.ZEVMSwapAppAddr.Bytes()...)
memobytes, err := r.ZEVMSwapApp.EncodeMemo(
&bind.CallOpts{},
Expand Down
8 changes: 4 additions & 4 deletions e2e/e2etests/test_solana_withdraw_and_call_alt.go
Original file line number Diff line number Diff line change
Expand Up @@ -63,16 +63,16 @@ func TestSolanaWithdrawAndCallAddressLookupTable(r *runner.E2ERunner, args []str
// in case AddressLookupTable address is not provided (eg. for local testing) use prefunded random accounts to create AddressLookupTable
randomWallets := []solana.PublicKey{}
if initAddressLookupTable {
accounts := []solana.PublicKey{}
accounts := make([]solana.PublicKey, 0, 4)

accounts = append(accounts, connectedPda)
accounts = append(accounts, r.ComputePdaAddress())
accounts = append(accounts, solana.SystemProgramID)
accounts = append(accounts, solana.SysVarInstructionsPubkey)
predefinedAccountsLen := len(accounts)
writableIndexes = []uint8{0} // only first one is mutable

addressLookupTableAddress, randomWallets = r.SetupTestAddressLookupTableWithRandomWallets(accounts)
writableIndexes = make([]uint8, 0, 1+len(randomWallets))
writableIndexes = append(writableIndexes, 0) // only first one is mutable

// based on example accounts from above, all random wallets are writable
// since they will get some lamports from connected program example
Expand All @@ -95,7 +95,7 @@ func TestSolanaWithdrawAndCallAddressLookupTable(r *runner.E2ERunner, args []str
encoded, err := msg.Encode()
require.NoError(r, err)

randomWalletsBalanceBefore := []uint64{}
randomWalletsBalanceBefore := make([]uint64, 0, len(randomWallets))
for _, acc := range randomWallets {
balanceBefore, err := r.SolanaClient.GetAccountInfo(r.Ctx, acc)
require.NoError(r, err)
Expand Down
8 changes: 4 additions & 4 deletions e2e/e2etests/test_spl_withdraw_and_call_alt.go
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,7 @@ func TestSPLWithdrawAndCallAddressLookupTable(r *runner.E2ERunner, args []string
// in case AddressLookupTable address is not provided (eg. for local testing) use prefunded random accounts to create AddressLookupTable
randomWallets := []solana.PublicKey{}
if initAddressLookupTable {
accounts := []solana.PublicKey{}
accounts := make([]solana.PublicKey, 0, 6)

accounts = append(accounts, connectedPda)
accounts = append(accounts, connectedPdaAta)
Expand All @@ -82,9 +82,9 @@ func TestSPLWithdrawAndCallAddressLookupTable(r *runner.E2ERunner, args []string
accounts = append(accounts, solana.TokenProgramID)
accounts = append(accounts, solana.SystemProgramID)
predefinedAccountsLen := len(accounts)
writableIndexes = []uint8{0, 1} // only first 2 are mutable

addressLookupTableAddress, randomWallets = r.SetupTestAddressLookupTableWithRandomWalletsSPL(accounts)
writableIndexes = make([]uint8, 0, 2+len(randomWallets))
writableIndexes = append(writableIndexes, 0, 1) // only first 2 are mutable

// based on example accounts from above, all random wallets are writable
// since they will get some SPL from connected program example
Expand All @@ -108,7 +108,7 @@ func TestSPLWithdrawAndCallAddressLookupTable(r *runner.E2ERunner, args []string
require.NoError(r, err)

// get receivers ata balances before withdraw
randomWalletsBalanceBefore := []*big.Int{}
randomWalletsBalanceBefore := make([]*big.Int, 0, len(randomWallets))
for _, acc := range randomWallets {
receiverBalanceBefore, err := r.SolanaClient.GetTokenAccountBalance(r.Ctx, acc, rpc.CommitmentConfirmed)
require.NoError(r, err)
Expand Down
2 changes: 1 addition & 1 deletion e2e/runner/e2etest.go
Original file line number Diff line number Diff line change
Expand Up @@ -120,7 +120,7 @@ type E2ETestRunConfig struct {

// GetE2ETestsToRunByName prepares a list of E2ETests to run based on given test names without arguments
func (r *E2ERunner) GetE2ETestsToRunByName(availableTests []E2ETest, testNames ...string) ([]E2ETest, error) {
tests := []E2ETestRunConfig{}
tests := make([]E2ETestRunConfig, 0, len(testNames))
for _, testName := range testNames {
tests = append(tests, E2ETestRunConfig{
Name: testName,
Expand Down
2 changes: 1 addition & 1 deletion e2e/runner/setup_bitcoin.go
Original file line number Diff line number Diff line change
Expand Up @@ -93,7 +93,7 @@ func (r *E2ERunner) SetupBtcAddress(createWallet bool) {
false, // descriptors
true, // load_on_startup
}
argsRawMsg := []json.RawMessage{}
argsRawMsg := make([]json.RawMessage, 0, len(args))
for _, arg := range args {
encodedArg, err := json.Marshal(arg)
require.NoError(r, err)
Expand Down
8 changes: 4 additions & 4 deletions e2e/runner/setup_solana.go
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ func (r *E2ERunner) SetupSolana(gatewayID, deployerPrivateKey, splAccountPrivate

// create 'initialize' instruction
var inst solana.GenericInstruction
accountSlice := []*solana.AccountMeta{}
accountSlice := make([]*solana.AccountMeta, 0, 3)
accountSlice = append(accountSlice, solana.Meta(privkey.PublicKey()).WRITE().SIGNER())
accountSlice = append(accountSlice, solana.Meta(pdaComputed).WRITE())
accountSlice = append(accountSlice, solana.Meta(solana.SystemProgramID))
Expand Down Expand Up @@ -76,7 +76,7 @@ func (r *E2ERunner) SetupSolana(gatewayID, deployerPrivateKey, splAccountPrivate
require.NoError(r, err)

var instConnected solana.GenericInstruction
accountSliceConnected := []*solana.AccountMeta{}
accountSliceConnected := make([]*solana.AccountMeta, 0, 3)
accountSliceConnected = append(accountSliceConnected, solana.Meta(privkey.PublicKey()).WRITE().SIGNER())
accountSliceConnected = append(accountSliceConnected, solana.Meta(connectedPda).WRITE())
accountSliceConnected = append(accountSliceConnected, solana.Meta(solana.SystemProgramID))
Expand Down Expand Up @@ -106,7 +106,7 @@ func (r *E2ERunner) SetupSolana(gatewayID, deployerPrivateKey, splAccountPrivate
require.NoError(r, err)

var instConnectedSPL solana.GenericInstruction
accountSliceConnectedSPL := []*solana.AccountMeta{}
accountSliceConnectedSPL := make([]*solana.AccountMeta, 0, 3)
accountSliceConnectedSPL = append(accountSliceConnectedSPL, solana.Meta(privkey.PublicKey()).WRITE().SIGNER())
accountSliceConnectedSPL = append(accountSliceConnectedSPL, solana.Meta(connectedSPLPda).WRITE())
accountSliceConnectedSPL = append(accountSliceConnectedSPL, solana.Meta(solana.SystemProgramID))
Expand Down Expand Up @@ -248,7 +248,7 @@ func (r *E2ERunner) UpdateTSSAddressSolana(gatewayID, deployerPrivateKey string)

// create 'initialize' instruction
var inst solana.GenericInstruction
accountSlice := []*solana.AccountMeta{}
accountSlice := make([]*solana.AccountMeta, 0, 3)
accountSlice = append(accountSlice, solana.Meta(privkey.PublicKey()).WRITE().SIGNER())
accountSlice = append(accountSlice, solana.Meta(pdaComputed).WRITE())
accountSlice = append(accountSlice, solana.Meta(solana.SystemProgramID))
Expand Down
2 changes: 1 addition & 1 deletion e2e/runner/solana.go
Original file line number Diff line number Diff line change
Expand Up @@ -958,7 +958,7 @@ func (r *E2ERunner) SetupTestAddressLookupTableWithRandomWalletsSPL(
randomWallets[i] = solana.MustPublicKeyFromBase58(prefundedRandomWalletAddresses[i])
}

randomWalletsAta := []solana.PublicKey{}
randomWalletsAta := make([]solana.PublicKey, 0, len(randomWallets))
for _, acc := range randomWallets {
ata := r.ResolveSolanaATA(r.GetSolanaPrivKey(), acc, r.SPLAddr)
randomWalletsAta = append(randomWalletsAta, ata)
Expand Down
2 changes: 1 addition & 1 deletion e2e/runner/solana_gateway_upgrade.go
Original file line number Diff line number Diff line change
Expand Up @@ -70,7 +70,7 @@ func (r *E2ERunner) VerifyUpgradedInstruction(deployerPrivateKey string) {
data := append(discriminator, []byte{}...)

var instConnected solana.GenericInstruction
var accountSliceConnected []*solana.AccountMeta
accountSliceConnected := make([]*solana.AccountMeta, 0, 1)
accountSliceConnected = append(accountSliceConnected, solana.Meta(privkey.PublicKey()).WRITE().SIGNER())
instConnected.ProgID = r.GatewayProgram
instConnected.AccountValues = accountSliceConnected
Expand Down
2 changes: 1 addition & 1 deletion e2e/utils/zetacore.go
Original file line number Diff line number Diff line change
Expand Up @@ -258,7 +258,7 @@ func WaitOutboundTracker(
logger.Info(" Nonce: %d\n", tracker.Nonce)
logger.Info(" HashList:\n")

hashes := []string{}
hashes := make([]string, 0, len(tracker.HashList))
for j, hash := range tracker.HashList {
hashes = append(hashes, hash.TxHash)
logger.Info(" hash[%d]: %s\n", j, hash.TxHash)
Expand Down
12 changes: 8 additions & 4 deletions pkg/contracts/solana/gateway_message.go
Original file line number Diff line number Diff line change
Expand Up @@ -83,8 +83,8 @@ func (msg *MsgWithdraw) To() solana.PublicKey {

// Hash packs the withdraw message and computes the hash
func (msg *MsgWithdraw) Hash() [32]byte {
var message []byte
buff := make([]byte, 8)
message := make([]byte, 0, len(InstructionIdentifier)+1+3*len(buff)+len(msg.to))

message = append(message, InstructionIdentifier...)
message = append(message, InstructionWithdraw)
Expand Down Expand Up @@ -188,8 +188,8 @@ func (msg *MsgIncrementNonce) Amount() uint64 {

// Hash packs the increment_nonce message and computes the hash
func (msg *MsgIncrementNonce) Hash() [32]byte {
var message []byte
buff := make([]byte, 8)
message := make([]byte, 0, len(InstructionIdentifier)+1+3*len(buff))

message = append(message, InstructionIdentifier...)
message = append(message, InstructionIncrementNonce)
Expand Down Expand Up @@ -496,8 +496,8 @@ func (msg *MsgWithdrawSPL) Decimals() uint8 {

// Hash packs the withdraw spl message and computes the hash
func (msg *MsgWithdrawSPL) Hash() [32]byte {
var message []byte
buff := make([]byte, 8)
message := make([]byte, 0, len(InstructionIdentifier)+1+3*len(buff)+len(msg.mintAccount)+len(msg.recipientAta)+1)

message = append(message, InstructionIdentifier...)
message = append(message, InstructionWithdrawSplToken)
Expand Down Expand Up @@ -812,8 +812,12 @@ func (msg *MsgWhitelist) Nonce() uint64 {

// Hash packs the whitelist message and computes the hash
func (msg *MsgWhitelist) Hash() [32]byte {
var message []byte
buff := make([]byte, 8)
message := make(
[]byte,
0,
len(InstructionIdentifier)+1+2*len(buff)+len(msg.whitelistCandidate)+len(msg.whitelistEntry),
)

message = append(message, InstructionIdentifier...)
message = append(message, InstructionWhitelistSplToken)
Expand Down
4 changes: 2 additions & 2 deletions pkg/proofs/bitcoin/bitcoin_spv.go
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ func Prove(txid Hash256Digest, merkleRoot Hash256Digest, intermediateNodes []byt
return true
}

proof := []byte{}
proof := make([]byte, 0, len(txid)+len(intermediateNodes)+len(merkleRoot))
proof = append(proof, txid[:]...)
proof = append(proof, intermediateNodes...)
proof = append(proof, merkleRoot[:]...)
Expand All @@ -51,7 +51,7 @@ func Hash256(in []byte) Hash256Digest {

// Hash256MerkleStep concatenates and hashes two inputs for merkle proving
func Hash256MerkleStep(a []byte, b []byte) Hash256Digest {
c := []byte{}
c := make([]byte, 0, len(a)+len(b))
c = append(c, a...)
c = append(c, b...)
return Hash256(c)
Expand Down
8 changes: 4 additions & 4 deletions simulation/state.go
Original file line number Diff line number Diff line change
Expand Up @@ -195,13 +195,13 @@ func extractObserverGenesisState(
tss.OperatorAddressList = observers

// Create a tss history
tssHistory := make([]observertypes.TSS, 0)
tssHistory := make([]observertypes.TSS, 0, 1)
tssHistory = append(tssHistory, tss)

// Create chainnonces and pendingnonces
chains := zetachains.DefaultChainsList()
chainsNonces := make([]observertypes.ChainNonces, 0)
pendingNonces := make([]observertypes.PendingNonces, 0)
chainsNonces := make([]observertypes.ChainNonces, 0, len(chains))
pendingNonces := make([]observertypes.PendingNonces, 0, len(chains))
for _, chain := range chains {
chainNonce := observertypes.ChainNonces{
ChainId: chain.ChainId,
Expand Down Expand Up @@ -348,8 +348,8 @@ func extractFungibleGenesisState(
Gateway: sample.EthAddressFromRand(r).String(),
}

foreignCoins := make([]fungibletypes.ForeignCoins, 0)
chains := zetachains.DefaultChainsList()
foreignCoins := make([]fungibletypes.ForeignCoins, 0, len(chains))

for _, chain := range chains {
foreignCoin := fungibletypes.ForeignCoins{
Expand Down
2 changes: 1 addition & 1 deletion x/crosschain/keeper/foreign_coins.go
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ import (

func (k Keeper) GetAllForeignCoins(ctx sdk.Context) []fungibleModuleTypes.ForeignCoins {
chains := k.zetaObserverKeeper.GetSupportedChains(ctx)
var fCoins []fungibleModuleTypes.ForeignCoins
fCoins := make([]fungibleModuleTypes.ForeignCoins, 0, len(chains))
for _, chain := range chains {
fCoins = append(fCoins, k.fungibleKeeper.GetAllForeignCoinsForChain(ctx, chain.ChainId)...)
}
Expand Down
3 changes: 1 addition & 2 deletions x/crosschain/types/key_inbound_hash_to_cctx.go
Original file line number Diff line number Diff line change
Expand Up @@ -10,9 +10,8 @@ const (
func InboundHashToCctxKey(
inboundHash string,
) []byte {
var key []byte

inboundHashBytes := []byte(inboundHash)
key := make([]byte, 0, len(inboundHashBytes)+1)
key = append(key, inboundHashBytes...)
key = append(key, []byte("/")...)

Expand Down
3 changes: 1 addition & 2 deletions x/crosschain/types/keys.go
Original file line number Diff line number Diff line change
Expand Up @@ -68,9 +68,8 @@ const (
func OutboundTrackerKey(
index string,
) []byte {
var key []byte

indexBytes := []byte(index)
key := make([]byte, 0, len(indexBytes)+1)
key = append(key, indexBytes...)
key = append(key, []byte("/")...)

Expand Down
1 change: 0 additions & 1 deletion x/crosschain/types/types.go

This file was deleted.

3 changes: 1 addition & 2 deletions x/fungible/types/key_foreign_coins.go
Original file line number Diff line number Diff line change
Expand Up @@ -9,9 +9,8 @@ const (
func ForeignCoinsKey(
index string,
) []byte {
var key []byte

indexBytes := []byte(index)
key := make([]byte, 0, len(indexBytes)+1)
key = append(key, indexBytes...)
key = append(key, []byte("/")...)

Expand Down
2 changes: 1 addition & 1 deletion zetaclient/config/config.go
Original file line number Diff line number Diff line change
Expand Up @@ -104,7 +104,7 @@ func GetRestrictedAddresses() []string {
restrictedAddressBookLock.RLock()
defer restrictedAddressBookLock.RUnlock()

addresses := []string{}
addresses := make([]string, 0, len(restrictedAddressBook))
for addr := range restrictedAddressBook {
addresses = append(addresses, addr)
}
Expand Down
Loading