update Noble chain to v8
https://github.com/hyperweb-io/starship/issues/566 and https://github.com/hyperweb-io/starship/issues/579 added Noble chain v7. On Nov 11, 2024 Noble released v8.0.0. They’re now at 8.0.5.
https://github.com/hyperweb-io/starship/issues/566 adds a noble 8.x image, but does not include changes to scripts/noble/*genesis.sh that are required for 8.x compatability.
This issue tracks upgrading Starship to use the latest v8 version.
Not sure what the changes are required for the scripts. Can you point me to it? or feel free to open up a PR to fix that as well.
Not sure what changes are required for the scripts
Me either - but they had a major upgrade which seems to include [email protected]: https://github.com/noble-assets/noble/compare/v7.0.0...v8.0.3.
The tests which I based https://github.com/hyperweb-io/starship/pull/579 on seem to have changed quite significantly as well.
Here are better symptoms:
kubectl logs noble-1-genesis-0 -c validator
1:29AM INF starting node with ABCI CometBFT in-process module=server
1:29AM INF service start impl=multiAppConn module=proxy msg="Starting multiAppConn service"
1:29AM INF service start connection=query impl=localClient module=abci-client msg="Starting localClient service"
1:29AM INF service start connection=snapshot impl=localClient module=abci-client msg="Starting localClient service"
1:29AM INF service start connection=mempool impl=localClient module=abci-client msg="Starting localClient service"
1:29AM INF service start connection=consensus impl=localClient module=abci-client msg="Starting localClient service"
1:29AM INF service start impl=EventBus module=events msg="Starting EventBus service"
1:29AM INF service start impl=PubSub module=pubsub msg="Starting PubSub service"
1:29AM INF service start impl=IndexerService module=txindex msg="Starting IndexerService service"
1:29AM INF ABCI Handshake App Info hash=E3B0C44298FC1C149AFBF4C8996FB92427AE41E4649B934CA495991B7852B855 height=0 module=consensus protocol-version=0 software-version=8.0.3
1:29AM INF ABCI Replay Blocks appHeight=0 module=consensus stateHeight=0 storeHeight=0
1:29AM INF InitChain chainID=noble-1 initialHeight=1 module=server
1:29AM INF initializing blockchain state from genesis.json module=server
1:29AM INF created new capability module=ibc name=ports/transfer
1:29AM INF port binded module=x/ibc/port port=transfer
1:29AM INF claimed capability capability=1 module=transfer name=ports/transfer
1:29AM INF asserted all invariants duration=0.000042 height=0 module=x/crisis
1:29AM INF Closing application.db module=server
1:29AM INF Closing snapshots/metadata.db module=server
panic: unknown field "params" in types.GenesisState
goroutine 1 [running]:
github.com/cosmos/cosmos-sdk/codec.(*ProtoCodec).MustUnmarshalJSON(0x40028d21e0?, {0x4001027500?, 0x40014e7188?, 0x40016138d8?}, {0x38b01a0?, 0x4001576a00?})
/go/pkg/mod/github.com/cosmos/[email protected]/codec/proto_codec.go:219 +0x44
github.com/circlefin/noble-fiattokenfactory/x/fiattokenfactory.AppModule.InitGenesis({{}, _, {_, _}}, {{0x38d6890, 0x575d860}, {0x38f1190, 0x4001798540}, {{0x0, 0x0}, ...}, ...}, ...)
/go/pkg/mod/github.com/circlefin/[email protected]/x/fiattokenfactory/module.go:133 +0x88
github.com/cosmos/cosmos-sdk/types/module.(*Manager).InitGenesis(_, {{0x38d6890, 0x575d860}, {0x38f1190, 0x4001798540}, {{0x0, 0x0}, {0x4000c49ca9, 0x7}, 0x0, ...}, ...}, ...)
/go/pkg/mod/github.com/cosmos/[email protected]/types/module/module.go:505 +0x54c
github.com/cosmos/cosmos-sdk/runtime.(*App).InitChainer(_, {{0x38d6890, 0x575d860}, {0x38f1190, 0x4001798540}, {{0x0, 0x0}, {0x4000c49ca9, 0x7}, 0x0, ...}, ...}, ...)
/go/pkg/mod/github.com/cosmos/[email protected]/runtime/app.go:189 +0xcc
github.com/cosmos/cosmos-sdk/baseapp.(*BaseApp).InitChain(0x4000c54248, 0x4001648380)
/go/pkg/mod/github.com/cosmos/[email protected]/baseapp/abci.go:105 +0x500
github.com/cosmos/cosmos-sdk/server.cometABCIWrapper.InitChain(...)
/go/pkg/mod/github.com/cosmos/[email protected]/server/cmt_abci.go:32
github.com/cometbft/cometbft/abci/client.(*localClient).InitChain(0x0?, {0x38d6bd8?, 0x575d860?}, 0xffff4d710548?)
/go/pkg/mod/github.com/cometbft/[email protected]/abci/client/local_client.go:120 +0xe8
github.com/cometbft/cometbft/proxy.(*appConnConsensus).InitChain(0x4000960e70, {0x38d6bd8, 0x575d860}, 0x4001648380)
/go/pkg/mod/github.com/cometbft/[email protected]/proxy/app_conn.go:78 +0x130
github.com/cometbft/cometbft/consensus.(*Handshaker).ReplayBlocksWithContext(_, {_, _}, {{{0xb, 0x0}, {0x2fcf39a, 0x7}}, {0x4000c49ca9, 0x7}, 0x1, ...}, ...)
/go/pkg/mod/github.com/cometbft/[email protected]/consensus/replay.go:336 +0xc4c
github.com/cometbft/cometbft/consensus.(*Handshaker).HandshakeWithContext(0x4001727120, {0x38d6b30, 0x400135a0f0}, {0x38f4cf8, 0x40010ac700})
/go/pkg/mod/github.com/cometbft/[email protected]/consensus/replay.go:274 +0x370
github.com/cometbft/cometbft/node.doHandshake({_, _}, {_, _}, {{{0xb, 0x0}, {0x2fcf39a, 0x7}}, {0x4000c49ca9, 0x7}, ...}, ...)
/go/pkg/mod/github.com/cometbft/[email protected]/node/setup.go:186 +0x12c
github.com/cometbft/cometbft/node.NewNodeWithContext({0x38d6b30, 0x400135a0f0}, 0x40016ab180, {0x38b0020, 0x4001416a00}, 0x40011ce250, {0x3897c00, 0x40009603a8}, 0x4002206220, 0x321d220, ...)
/go/pkg/mod/github.com/cometbft/[email protected]/node/node.go:360 +0x4a4
github.com/cosmos/cosmos-sdk/server.startCmtNode({0x38d6b30, 0x400135a0f0}, 0x40016ab180, {0x391c670, 0x40023b8008}, 0x40009798c0)
/go/pkg/mod/github.com/cosmos/[email protected]/server/start.go:377 +0x308
github.com/cosmos/cosmos-sdk/server.startInProcess(_, {{{0x4000b6a870, 0x6}, 0x0, {0x4000b6b710, 0x7}, {0x302dafa, 0x1}, {0x302dafa, 0x1}, ...}, ...}, ...)
/go/pkg/mod/github.com/cosmos/[email protected]/server/start.go:323 +0x11c
github.com/cosmos/cosmos-sdk/server.start(_, {{0x0, 0x0, 0x0}, {0x38f89d8, 0x40011d3800}, 0x0, {0x40007ac5d8, 0x7}, {0x391c5a8, ...}, ...}, ...)
/go/pkg/mod/github.com/cosmos/[email protected]/server/start.go:240 +0x1d8
github.com/cosmos/cosmos-sdk/server.StartCmdWithOptions.func2.1()
/go/pkg/mod/github.com/cosmos/[email protected]/server/start.go:198 +0x68
github.com/cosmos/cosmos-sdk/server.wrapCPUProfile(0x40009798c0, 0x400160f9d8)
/go/pkg/mod/github.com/cosmos/[email protected]/server/start.go:570 +0x16c
github.com/cosmos/cosmos-sdk/server.StartCmdWithOptions.func2(0x40015da908, {0x575d860?, 0x0?, 0x0?})
/go/pkg/mod/github.com/cosmos/[email protected]/server/start.go:197 +0x184
github.com/spf13/cobra.(*Command).execute(0x40015da908, {0x575d860, 0x0, 0x0})
/go/pkg/mod/github.com/spf13/[email protected]/command.go:985 +0x840
github.com/spf13/cobra.(*Command).ExecuteC(0x4001793208)
/go/pkg/mod/github.com/spf13/[email protected]/command.go:1117 +0x344
github.com/spf13/cobra.(*Command).Execute(...)
/go/pkg/mod/github.com/spf13/[email protected]/command.go:1041
github.com/spf13/cobra.(*Command).ExecuteContext(...)
/go/pkg/mod/github.com/spf13/[email protected]/command.go:1034
github.com/cosmos/cosmos-sdk/server/cmd.Execute(0x4001793208, {0x0, 0x0}, {0x4001182860, 0xc})
/go/pkg/mod/github.com/cosmos/[email protected]/server/cmd/execute.go:34 +0x154
main.main()
/go/src/github.com/noble-assets/noble/cmd/nobled/main.go:28 +0x3c
config.yaml
name: starship-localnet
version: 1.3.0
chains:
- id: noble-1
name: noble
image: ghcr.io/cosmology-tech/starship/noble:v8.0.3
numValidators: 1
ports:
rest: 1313
rpc: 26653
faucet: 8003
- id: cosmoshub-4
name: cosmoshub
numValidators: 1
ports:
rest: 1317
rpc: 26657
faucet: 8007
relayers:
- name: noble-cosmos
type: hermes
replicas: 1
chains:
- noble-1
- cosmoshub-4
explorer:
enabled: true
ports:
rest: 8080
registry:
enabled: true
ports:
rest: 8081
Ahh this means that the noble chain just requires a custom script for create-genesis that does not have the params field in the change.
I think the new cosmos-sdk could have that requirement, maybe we need a new way to create changes to the create-genesis.sh script.
I think the issue is here: https://github.com/hyperweb-io/starship/blob/main/starship/charts/devnet/scripts/noble/update-genesis.sh#L189 and here: https://github.com/hyperweb-io/starship/blob/main/starship/charts/devnet/scripts/noble/update-genesis.sh#L136
I think this script needs to be fixed.
@0xpatrickdev if we can fix this, then we can add noble to the e2e tests as well, with something like: https://github.com/hyperweb-io/starship/blob/main/starship/tests/e2e/configs/one-chain.yaml
What we really need is a nobled that matches mainnet. I see v9.0.4 now.
Our current work depends on the swap and dollar modules.
dollar.noble.xyz v1.0.2 swap.noble.xyz v1.0.2