Releases: ignite/cli
v29.0.0
🚀 Highlights
Ignite CLI v29.0.0 is finally there! This new version is packed with new features and dev ux improvements:
- As always, Ignite scaffolds the latest Cosmos Stack: Cosmos SDK v0.53, IBC-go v10 (IBC v1 and v2 enabled), and all the latest features enabled 💥.
- New scaffolding commands:
config
,params
and new scaffolding flags:--default-denom
to allow you to do more, with less. - Thanks to an overhaul of the CLI internal, Ignite now scaffolds a chain without cluttering it with the infamous
// this line is used by starport scaffolding
line. - Scaffolded modules now use
cosmossdk.io/collections
for state management. - New
xast
package to help developers make Ignite Apps even more easily (an Ignite EVM App is coming, thanks to that). - The CLI stays compatible with all Ignite Apps, only some are being updated to work with IBC-go v10 (notably Ignite Wasm App).
- Improved tooling, by using the latest Go 1.24 and buf features. Only a
ignite doctor
away, when upgrading from v28.
Upgrade today and supercharge your chain development with the best Ignite experience yet!
📝 Changelog
Following an exhaustive list of changes in this release:
v29.0.0
Features
- #3707 and #4094 Add collections support.
- #3977 Add
chain lint
command to lint the chain's codebase usinggolangci-lint
- #3770 Add
scaffold configs
andscaffold params
commands - #4001 Improve
xgenny
dry run - #3967 Add HD wallet parameters
address index
andaccount number
to the chain account config - #4004 Remove all import placeholders using the
xast
pkg - #4071 Support custom proto path
- #3718 Add
gen-mig-diffs
tool app to compare scaffold output of two versions of ignite - #4100 Set the
proto-dir
flag only for thescaffold chain
command and use the proto path from the config - #4111 Remove vuex generation
- #4113 Generate chain config documentation automatically
- #4131 Support
bytes
as data type in thescaffold
commands - #4300 Only panics the module in the most top function level
- #4327 Use the TxConfig from simState instead create a new one
- #4326 Add
buf.build
version toignite version
command - #4436 Return tx hash to the faucet API
- #4437 Remove module placeholders
- #4289, #4423, #4432, #4507, #4524 Cosmos SDK v0.52 support and downgrade back to 0.50, while keeping latest improvements.
- #4480 Add field max length
- #4477, #4559 IBC v10 support
- #4166 Migrate buf config files to v2
- #4494 Automatic migrate the buf configs to v2
- #4509 Upgrade to Go 1.24. Running
ignite doctor
migrates the scaffoldedtools.go
to the tool directive in the go.mod - #4588 Run `buf format after scaffold proto files.
- #4603 Add
GetIgniteInfo
gRPC API for apps. - #4657 Upgrade to Cosmos SDK v0.53.0.
- Add x/epochs module to default template (except for minimal template).
- Bump minimum compatible Cosmos SDK version to
v0.50.0
.
- #4683 Allow to change default denom via flag.
- #4687 Add address type with
scalar
annotations, and addscalar
type to signer field. - #4686 Filter discovered protos to only messages.
- #4694 Install an app using the
.
as a current path show a wrong app name.
Changes
- #4094 Scaffolding a multi-index map using
ignite s map foo bar baz --index foobar,foobaz
is no longer supported. Use one index instead of usecollections.IndexedMap
. - #4058 Simplify scaffolded modules by including
ValidateBasic()
logic in message handler. - #4058 Use
address.Codec
instead ofAccAddressFromBech32
. - #3993 Oracle scaffolding was deprecated and has been removed
- #3962 Rename all RPC endpoints and autocli commands generated for
map
/list
/single
types - #3976 Remove error checks for Cobra command value get calls
- #4002 Bump buf build
- #4008 Rename
pkg/yaml
topkg/xyaml
- #4075 Use
gopkg.in/yaml.v3
insteadgopkg.in/yaml.v2
- #4118 Version scaffolded protos as
v1
to follow SDK structure. - #4167 Scaffold
int64
instead ofint32
when a field type isint
- #4159 Enable gci linter
- #4160 Enable copyloopvar linter
- #4162 Enable errcheck linter
- #4189 Deprecate
ignite node
forignite connect
app - #4290 Remove ignite ics logic from ignite cli (this functionality will be in the
consumer
app) - #4295 Stop scaffolding
pulsar
files - #4317 Remove xchisel dependency
- #4361 Remove unused
KeyPrefix
method - #4384 Compare genesis params into chain genesis tests
- #4463 Run
chain simulation
with any simulation test case - #4533 Promote GitHub codespace instead of Gitpod
- #4549 Remove unused placeholder vars
- #4557 Remove github.com/gookit/color
- #4596 Add default
openapi.yml
when skipping proto gen. - #4601 Add
appregistry
as default plugin - #4613 Improve and simplify prompting logic by bubbletea.
- #4624 Fix autocli templates for variadics.
- #4644 Improve UI and UX for
testnet multi-node
command. - #4645 Refactor the xast.ModifyFunction to improve the readability.
- #3393 Remove xgenny embed walker
- #4664 Add verbose flags on
scaffold
andgenerate
commands.- The flag displays the steps Ignite is taking to generate the code.
- The verbosity only applies to the command. For full verbosity use the
IGNT_DEBUG
environment variable instead.
- #4689 Revert
HasGenesis
implementation from retractedcore
v1 to SDKHasGenesis
interface. - #4701 Improve
ignite doctor
by removing manual migration step. Additionally, remove protoc to buf migrations logic. - #4703 Remove testutil.Register function.
- #4702 Improve app detection by checking for inheritance instead of interface implementation.
- #4707 Show
buf
version inignite version
only when in a go module. - #4709 Remove legacy msgServer support
- #4710 Remove the
nullify
pkg from the chaintestutil
Fixes
- #4000 Run all dry runners before the wet run in the
xgenny
pkg - #4091 Fix race conditions in the plugin logic
- #4128 Check for duplicate proto fields in config
- #4402 Fix gentx parser into the cosmosutil package
- #4552 Avoid direct access to proto field
perms.Account
andperms.Permissions
- #4555 Fix buf lint issues into the chain code
- #4347 Fix
ts-client
generation - [#4577](#457...
v29.0.0-rc.1
🚀 Highlights
Ignite CLI v29.0.0-rc.1 is the last version before final.
The biggest user facing change since v29.0.0-beta.1 is the upgrade to Cosmos SDK v0.53.0. It brings Ignite CLI in line with the latest development only days after their release.
Additionally, the ts-client
has been brought back and the UI of commands greatly improved. Lastly, we've made many improvements to help building even better Ignite Apps.
📝 Changelog
Following an exhaustive list of changes in this release:
Features
- #4509 Upgrade to Go 1.24. Running
ignite doctor
migrates the scaffoldedtools.go
to the tool directive in the go.mod - #4588 Run `buf format after scaffold proto files.
- #4603 Add
GetIgniteInfo
gRPC API for apps. - #4657 Upgrade to Cosmos SDK v0.53.0.
- Add x/epochs module to default template (except for minimal template).
- Bump minimum compatible Cosmos SDK version to
v0.50.0
.
Changes
- #4596 Add default
openapi.yml
when skipping proto gen. - #4601 Add
appregistry
as default plugin - #4613 Improve and simplify prompting logic by bubbletea.
- #4624 Fix autocli templates for variadics.
- #4644 Improve UI and UX for
testnet multi-node
command. - #4645 Refactor the xast.ModifyFunction to improve the readability.
- #4664 Add verbose flags on
scaffold
andgenerate
commands.- The flag displays the steps Ignite is taking to generate the code.
- The verbosity only applies to the command. For full verbosity use the
IGNT_DEBUG
environment variable instead.
Fixes
- #4347 Fix
ts-client
generation - #4577 Add proto version to query path.
- #4579 Fix empty params response.
- #4585 Fix faucet cmd issue.
- #4587 Add missing light clients routes to IBC client keeper.
- #4595 Fix wrong InterfaceRegistry for IBC modules.
- #4609 Add work dir for relayer integration tests.
- #4658 Fix indentation for params scaffolded into a struct.
- #4582 Fix xast misplacing comments.
- #4660 Fix xast test case indentation.
- #4667 Harden
IsSlice
v28.10.0
🚀 Highlights
For this minor release, we didn't want to let you wait (as it is only 2 days after v28.9.0).
We've added a new feature: extending the config.yml
with external files. This will simplify handling multiple chain configs hugely.
Additionally, again, internally we've improved the scaffolding APIs to allow users to make even better Ignite Apps.
📝 Changelog
Following an exhaustive list of changes in this release:
Features
- #4638 Add include feature to the chain config file.
Changes
- #4643 Allow append abritrary blocks in
AppendFuncAtLine
.
v28.9.0
🚀 Highlights
For this minor release, we have re-enabled the ts-client scaffolding. The react
and vue
frontend are being updated and will be reactivated in the next patch release.
Additionally, internally we've improved the scaffolding APIs to allow users to make even better Ignite Apps.
📝 Changelog
Following an exhaustive list of changes in this release:
Features
Changes
Bug Fixes
- #4347 Fix
ts-client
generation.
v28.8.2
🚀 Highlights
For this patch release, we have bumped the scaffolded version of the Cosmos SDK to v0.50.13. That SDK version resolves a security issue.
Additionally, we've added a flag to define a coin type when scaffolding a chain or importing accounts. That data is as well available via the chain service.
📝 Changelog
Following an exhaustive list of changes in this release:
Changes
v29.0.0-beta.1
🚀 Highlights
Ignite CLI v29.0.0-beta.1 introduces default chain scaffolding using IBC-go v10 and default collections support for modules. Other key additions include scaffold configs
, scaffold params
commands, to help you best in your module development. New tools like chain lint
and automatic buf config migration to v2 (via ignite doctor
) have been added to streamline development, and much more!
The gen-mig-diffs
tool can help you upgrade to v29 easily.
Any feedback and bug reports are welcome. Documentation is being updated to reflect this new beta.
📝 Changelog
Following an exhaustive list of changes in this release:
Features
- #3707 and #4094 Add collections support.
- #3977 Add
chain lint
command to lint the chain's codebase usinggolangci-lint
- #3770 Add
scaffold configs
andscaffold params
commands - #4001 Improve
xgenny
dry run - #3967 Add HD wallet parameters
address index
andaccount number
to the chain account config - #4004 Remove all import placeholders using the
xast
pkg - #4071 Support custom proto path
- #3718 Add
gen-mig-diffs
tool app to compare scaffold output of two versions of ignite - #4100 Set the
proto-dir
flag only for thescaffold chain
command and use the proto path from the config - #4111 Remove vuex generation
- #4113 Generate chain config documentation automatically
- #4131 Support
bytes
as data type in thescaffold
commands - #4300 Only panics the module in the most top function level
- #4327 Use the TxConfig from simState instead create a new one
- #4326 Add
buf.build
version toignite version
command - #4436 Return tx hash to the faucet API
- #4437 Remove module placeholders
- #4289, #4423, #4432, #4507, #4524 Cosmos SDK v0.52 support and downgrade back to 0.50, while keeping latest improvements.
- #4480 Add field max length
- #4477 IBC v10 support
- #4166 Migrate buf config files to v2
- #4494 Automatic migrate the buf configs to v2
Changes
- #4094 Scaffolding a multi-index map using
ignite s map foo bar baz --index foobar,foobaz
is no longer supported. Use one index instead of usecollections.IndexedMap
. - #4058 Simplify scaffolded modules by including
ValidateBasic()
logic in message handler. - #4058 Use
address.Codec
instead ofAccAddressFromBech32
. - #3993 Oracle scaffolding was deprecated and has been removed
- #3962 Rename all RPC endpoints and autocli commands generated for
map
/list
/single
types - #3976 Remove error checks for Cobra command value get calls
- #4002 Bump buf build
- #4008 Rename
pkg/yaml
topkg/xyaml
- #4075 Use
gopkg.in/yaml.v3
insteadgopkg.in/yaml.v2
- #4118 Version scaffolded protos as
v1
to follow SDK structure. - #4167 Scaffold
int64
instead ofint32
when a field type isint
- #4159 Enable gci linter
- #4160 Enable copyloopvar linter
- #4162 Enable errcheck linter
- #4189 Deprecate
ignite node
forignite connect
app - #4290 Remove ignite ics logic from ignite cli (this functionality will be in the
consumer
app) - #4295 Stop scaffolding
pulsar
files - #4317 Remove xchisel dependency
- #4361 Remove unused
KeyPrefix
method - #4384 Compare genesis params into chain genesis tests
- #4463 Run
chain simulation
with any simulation test case - #4533 Promote GitHub codespace instead of Gitpod
- #4549 Remove unused placeholder vars
Fixes
v28.8.1
🚀 Highlights
For this patch release, we have addressed several bugs. Notably, we have enhanced our command parsing to eliminate undesired logs. This update resolves an issue where Ignite was incompatible with Go 1.24.0 due to a transitive dependency of the Cosmos SDK that is not yet compatible with Go 1.24.0.
📝 Changelog
Following an exhaustive list of changes in this release:
Bug Fixes
v28.8.0
🚀 Highlights
This release fixes a number of issues and bumps the stack dependencies.
📝 Changelog
Following an exhaustive list of changes in this release:
Features
- #4513 Allow to pass tx fees to faucet server
Changes
- #4439 Simplify Ignite CLI dependencies by removing
moby
andgorilla
dependencies. - #4471 Bump CometBFT to v0.38.15.
- #4471 Bump Ignite & chain minimum Go version to 1.23.
- #4529 Bump Cosmos SDK to v0.50.12.
Bug Fixes
v28.7.0
🚀 Highlights
This release adds a command to scaffold the necessary files to publish in the chain-registry. Go from devnet to testnet even faster with Ignite.
📝 Changelog
Following an exhaustive list of changes in this release: