- #3476 Use
buf.build
binary to code generate from proto files - #3614 feat: use DefaultBaseappOptions for app.New method
- #3536 Change app.go to v2 and add AppWiring feature
- #3581 Bump cometbft and cometbft-db in the template
- #3559 Bump network plugin version to
v0.1.1
- #3522 Remove indentation from
chain serve
output - #3601 Update ts-relayer version to
0.10.0
- #3592 Fix
pkg/protoanalysis
to support HTTP rule parameter arguments - #3598 Fix consensus param keeper constructor key in
app.go
- #3610 Fix overflow issue of cosmos faucet in
pkg/cosmosfaucet/transfer.go
andpkg/cosmosfaucet/cosmosfaucet.go
- #3618 Fix TS client generation import path issue
- #3631 Fix unnecessary vue import in hooks/composables template
- #3505 Auto migrate dependency tools
- #3538 bump sdk to
v0.47.3
and ibc tov7.1.0
- #2736 Add
--skip-git
flag to skip git repository initialization. - #3381 Add
ignite doctor
command - #3446 Add
gas-adjustment
flag to the cosmos client. - #3439 Add
--build.tags
flag forchain serve
andchain build
commands. - #3524 Apply auto tools migration to other commands
- Added compatibility check and auto migration features and interactive guidelines for the latest versions of the SDK
- #3444 Add support for ICS chains in ts-client generation
- #3494 bump
cosmos-sdk
andcometbft
versions - #3434 Detect app wiring implementation
- #3497 Use corret bank balance query url in faucet openapi
- #3481 Use correct checksum format in release checksum file
- #3470 Prevent overriding minimum-gas-prices with default value
- #3523 Upgrade Cosmos SDK compatibility check for scaffolded apps
- #3441 Correct wrong client context for cmd query methods
- #3487 Handle ignired error in package
cosmosaccount
Account.PubKey
- #3238 Add
Sharedhost
plugin option - #3214 Global plugins config.
- #3142 Add
ignite network request param-change
command. - #3181 Addition of
add
andremove
commands forplugins
- #3184 Separate
plugins.yml
config file. - #3038 Addition of Plugin Hooks in Plugin System
- #3056 Add
--genesis-config
flag option toignite network chain publish
- #2892 Add
ignite scaffold react
command. - #2892 Add
ignite generate composables
command. - #2892 Add
ignite generate hooks
command. - #2955 Add
ignite network request add-account
command. - #2877 Plugin system
- #3060 Plugin system flag support
- #3105 Addition of
ignite plugin describe <path>
command - #2995 Add
ignite network request remove-validator
command. - #2999 Add
ignite network request remove-account
command. - #2458 New
chain serve
command UI. - #2992 Add
ignite chain debug
command.
- #3369 Update
ibc-go
tov6.1.0
. - #3306 Move network command into a plugin
- #3305 Bump Cosmos SDK version to
v0.46.7
. - #3068 Add configs to generated TS code for working with JS projects
- #3071 Refactor
ignite/templates
package. - #2892
ignite scaffold vue
andignite scaffold react
use v0.4.2 templates - #2892
removeSigner()
method added to generatedts-client
- #3035 Bump Cosmos SDK to
v0.46.4
. - #3037 Bump
ibc-go
tov5.0.1
. - #2957 Change generate commands to print the path to the generated code.
- #2981 Change CLI to also search chain binary in Go binary path.
- #2958 Support absolute paths for client code generation config paths.
- #2993 Hide
ignite scaffold band
command and deprecate functionality. - #2986 Remove
--proto-all-modules
flag because it is now the default behaviour. - #2986 Remove automatic Vue code scaffolding from
scaffold chain
command. - #2986 Add
--generate-clients
tochain serve
command for optional client code (re)generation. - #2998 Hide
ignite generate dart
command and remove functionality. - #2991 Hide
ignite scaffold flutter
command and remove functionality. - #2944 Add a new event "update" status option to
pkg/cliui
. - #3030 Remove colon syntax from module scaffolding
--dep
flag. - #3025 Improve config version error handling.
- #3084 Add Ignite Chain documentation.
- #3109 Refactor scaffolding for proto files to not rely on placeholders.
- #3106 Add zoom image plugin.
- #3194 Move config validators check to validate only when required.
- #3183 Make config optional for init phase.
- #3224 Remove
grpc_*
prefix from query files in scaffolded chains - #3229 Rename
campaign
toproject
in ignite network set of commands - #3122 Change
generate ts-client
to ignore the cache by default. - #3244 Update
actions.yml
for resolving deprecation message - #3337 Remove
pkg/openapiconsole
import from scaffold template. - #3337 Register
nodeservice
gRPC inapp.go
template. - #3455 Bump
cosmos-sdk
tov0.47.1
- #3434 Detect app wiring implementation.
- #3445 refactor: replace
github.com/ghodss/yaml
withsigs.k8s.io/yaml
- #3033 Remove Cosmos SDK Launchpad version support.
- #3114 Fix out of gas issue when approving many requests
- #3068 Fix REST codegen method casing bug
- #3031 Move keeper hooks to after all keepers initialized in
app.go
template. - #3098 Fix config upgrade issue that left config empty on error.
- #3129 Remove redundant
keyring-backend
config option. - #3187 Change prompt text to fit within 80 characters width.
- #3203 Fix relayer to work with multiple paths.
- #3320 Allow
id
andcreator
as names when scaffolding a type. - #3327 Scaffolding messages with same name leads to aliasing.
- #3383 State error and info are now displayed when using serve UI.
- #3379 Fix
ignite docs
issue by disabling mouse support. - #3435 Fix wrong client context for cmd query methods.
- #3145 Security fix upgrading Cosmos SDK to
v0.46.6
- #2968 Dragonberry security fix upgrading Cosmos SDK to
v0.46.3
- Add
pkg/cosmostxcollector
package with support to query and save TXs and events. - Add
ignite network coordinator
command set. - Add
ignite network validator
command set. - Deprecate
cosmoscmd
pkg and add cmd templates for scaffolding. - Add generated TS client test support to integration tests.
- Updated
pkg/cosmosanalysis
to discover the list of app modules when defined in variables or functions. - Improve genesis parser for
network
commands - Integration tests build their own ignite binary.
- Updated
pkg/cosmosanalysis
to discover the list of app modules when defined in variables. - Switch to broadcast mode sync in
cosmosclient
- Updated
nodetime
:ts-proto
tov1.123.0
,protobufjs
tov7.1.1
,swagger-typescript-api
tov9.2.0
- Switched codegen client to use
axios
instead offetch
- Added
useKeplr()
anduseSigner()
methods to TS client. Allowed query-only instantiation. nodetime
built withvercel/pkg@5.6.0
- Change CLI to use an events bus to print to stdout.
- Move generated proto files to
proto/{appname}/{module}
- Update
pkg/cosmosanalysis
to detect when proto RPC services are using pagination. - Add
--peer-address
flag tonetwork chain join
command. - Change nightly tag format
- Add cosmos-sdk version in
version
command - #2935 Update
gobuffalo/plush
templating tool tov4
- Fix ICA controller wiring.
- Change vuex generation to use a default TS client path.
- Fix cli action org in templates.
- Seal the capability keeper in the
app.go
template. - Change faucet to allow CORS preflight requests.
- Fix config file migration to void leaving end of file content chunks.
- Change session print loop to block until all events are handled.
- Handle "No records were found in keyring" message when checking keys.
- #2941 Fix session to use the same spinner referece.
- #2922 Network commands check for latest config version before building the chain binary.
- Upgraded Cosmos SDK to
v0.46.2
.
- Upgraded Cosmos SDK to
v0.46.0
and IBC tov5
in CLI and scaffolding templates - Change chain init to check that no gentx are present in the initial genesis
- Add
network rewards release
command - Add "make mocks" target to Makefile
- Add
--skip-proto
flag tobuild
,init
andserve
commands to build the chain without building proto files - Add
node query tx
command to query a transaction in any chain. - Add
node query bank
command to query an account's bank balance in any chain. - Add
node tx bank send
command to send funds from one account to another in any chain. - Add migration system for the config file to allow config versioning
- Add
node tx bank send
command to send funds from one account to another in any chain. - Implement
network profile
command - Add
generate ts-client
command to generate a stand-alone modular TypeScript client.
- Add changelog merge strategy in
.gitattributes
to avoid conflicts. - Refactor
templates/app
to removemonitoringp
module from the default template - Updated keyring dependency to match Cosmos SDK
- Speed up the integration tests
- Refactor ignite network and fix genesis generation bug
- Make Go dependency verification optional during build by adding the
--check-dependencies
flag so Ignite CLI can work in a Go workspace context. - Temporary SPN address change for nightly
- Rename
simapp.go.plush
simulation file template tohelpers.go.plush
- Remove campaign creation from the
network chain publish
command - Optimized JavaScript generator to use a single typescript API generator binary
- Improve documentation and add support for protocol buffers and Go modules syntax
- Add inline documentation for CLI commands
- Change
cmd/account
to skip passphrase prompt when importing from mnemonic - Add nodejs version in the output of ignite version
- Removed
handler.go
from scaffolded module template - Migrated to
cosmossdk.io
packages for andmath
- Vuex stores from the
generate vuex
command use the new TypeScript client - Upgraded frontend Vue template to v0.3.10
- Improved error handling for crypto wrapper functions
- Fix
pkg/cosmosclient
to call the faucet prior to creating the tx. - Test and refactor
pkg/comosclient
. - Change templates to add missing call to
RegisterMsgServer
in the default module's template to match what's specified in the docs - Fix cosmoscmd appID parameter value to sign a transaction correctly
- Fix
scaffold query
command to useGetClientQueryContext
instead ofGetClientTxContext
- Fix flaky integration tests issue that failed with "text file busy"
- Fix default chain ID for publish
- Replace
os.Rename
withxos.Rename
- Fix CLI reference generation to add
ignite completion
documentation - Remove usage of deprecated
io/ioutil
package
- Apps can now use generics
- Fix
pkg/cosmosanalysis
to support apps with generics - Remove
ignite-hq/cli
from dependency list in scaffolded chains
- Change
pkg/cosmosgen
to allow importing IBC proto files - Improve docs for Docker related commands
- Improve and fix documentation issues in developer tutorials
- Add migration docs for v0.22.2
- Improve
go mod download
error report inpkg/cosmosgen
- Enable Darwin ARM 64 target for chain binary releases in CI templates
- Rename
ignite-hq
toignite
- Fix IBC module scaffolding interface in templates
- Optimized the build system. The
chain serve
,chain build
,chain generate
commands and other variants are way faster now - Upgraded CLI and templates to use IBC v3
- Add a fix in code generation to avoid user's NodeJS configs to break TS client generation routine
- Set min. gas to zero when running
chain
command set
- Add compatibility to run chains built with Cosmos-SDK
v0.46.0-alpha1
and above - Scaffold chains now will have
auth
module enabled by default
- Fixed shell completion generation
- Make sure proto package names are valid when using simple app names
- Support simple app names when scaffolding chains. e.g.:
ignite scaffold chain mars
- Ask confirmation when scaffolding over changes that are not committed yet
- Use
protoc
binary compiled in an older version of macOS AMD64 for backwards compatibility in code generation
- Use the latest version of CLI in templates to fix Linux ARM support (It's now possible to develop chains in Linux ARM
machines and since the chain depends on the CLI in its
go.mod
, it needs to use the latest version that support ARM targets)
- Use
unsafe-reset-all
cmd undertendermint
cmd for chains that use=> v0.45.3
version of Cosmos SDK
- Release the CLI with Linux ARM and native M1 binaries
Our new name is Ignite CLI!
IMPORTANT! This upgrade renames starport
command to ignite
. From now on, use ignite
command to access the CLI.
- Upgraded Cosmos SDK version to
v0.45.2
- Added support for in memory backend in
pkg/cosmosclient
package - Improved our tutorials and documentation
- Enable client code and Vuex code generation for query only modules as well.
- Upgraded the Vue template to
v0.3.5
.
- Fixed snake case in code generation.
- Fixed plugin installations for Go =>v1.18.
- Dropped transpilation of TS to JS. Code generation now only produces TS files.
- Upgraded Vue template to
v0.3.0
.
- Upgraded Flutter template to
v2.0.3
- Fixed race condition during faucet transfer
- Fixed account sequence mismatch issue on faucet and relayer
- Fixed templates for IBC code scaffolding
- Upgraded blockchain templates to use IBC v2.0.2
-
Deprecated the Starport Modules tendermint/spm repo and moved the contents to the Ignite CLI repo
ignite/pkg/
in PR 1971Updates are required if your chain uses these packages:
spm/ibckeeper
is nowpkg/cosmosibckeeper
spm/cosmoscmd
is nowpkg/cosmoscmd
spm/openapiconsole
is nowpkg/openapiconsole
testutil/sample
is nowcosmostestutil/sample
-
Updated the faucet HTTP API schema. See API changes in fix: improve faucet reliability #1974
- Enabled the
scaffold flutter
command
starport scaffold
commands supportints
,uints
,strings
,coin
,coins
as field types (#1579)- Added simulation testing with
simapp
to the default template (#1731) - Added
starport generate dart
to generate a Dart client from protocol buffer files - Added
starport scaffold flutter
to scaffold a Flutter mobile app template - Parameters can be specified with a new
--params
flag when scaffolding modules (#1716) - Simulations can be run with
starport chain simulate
- Set
cointype
for accounts inconfig.yml
(#1663)
- Allow using a
creator
field when scaffolding a model with a--no-message
flag (#1730) - Improved error handling when generating code (#1907)
- Ensure account has funds after faucet transfer when using
cosmosclient
(#1846) - Move from
io/ioutil
toio
andos
package (refactoring) (#1746)
- Starport v0.18 comes with Cosmos SDK v0.44 that introduced changes that are not compatible with chains that were scaffolded with Starport versions lower than v0.18. After upgrading from Starport v0.17.3 to Starport v0.18, you must update the default blockchain template to use blockchains that were scaffolded with earlier versions. See Migration.
- Scaffold commands allow using previously scaffolded types as fields
- Added
--signer
flag tomessage
,list
,map
, andsingle
scaffolding to allow customizing the name of the signer of the message - Added
--index
flag toscaffold map
to provide a custom list of indices - Added
scaffold type
to scaffold a protocol buffer definition of a type - Automatically check for new Starport versions
- Added
starport tools completions
to generate CLI completions - Added
starport account
commands to manage accounts (key pairs) starport version
now prints detailed information about OS, Go version, and more- Modules are scaffolded with genesis validation tests
- Types are scaffolded with tests for
ValidateBasic
methods cosmosclient
has been refactored and can be used as a library for interacting with Cosmos SDK chainsstarport relayer
usesstarport account
- Added
--path
flag for allscaffold
,generate
andchain
commands - Added
--output
flag to thebuild
command - Configure port of gRPC web in
config.yml
with thehost.grpc-web
property - Added
build.main
field toconfig.yml
for apps to specify the path of the chain's main package. This property is required to be set only when an app contains multiple main packages.
- Scaffolding a message no longer prevents scaffolding a map, list, or single that has the same type name when using
the
--no-message
flag - Generate Go code from proto files only from default directories or directories specified in
config.yml
- Fixed faucet token transfer calculation
- Removed
creator
field for types scaffolded with the--no-message
flag - Encode the count value in the store with
BigEndian
- oracle: add a specific BandChain pkg version to avoid Cosmos SDK version conflicts
client.toml
is initialized and used by node's CLI, can be configured throughconfig.yml
with theinit.client
property- Support serving Cosmos SDK
v0.43.x
based chains
- Set visibility to
public
on Gitpod's port 7575 to enable peer discovery for SPN - Fixed GitHub action that releases blockchain node's binary
- Fixed an error in chain scaffolding due to "unknown revision"
- Fixed an error in
starport chain serve
by limiting the scope where proto files are searched for
- Added GitHub action that automatically builds and releases a binary
- The
--release
flag for thebuild
command adds the ability to release binaries in a tarball with a checksum file. - Added the flag
--no-module
to the commandstarport app
to prevent scaffolding a default module when creating a new app - Added
--dep
flag to specify module dependency when scaffolding a module - Added support for multiple naming conventions for component names and field names
- Print created and modified files when scaffolding a new component
- Added
starport generate
namespace with commands to generate Go, Vuex and OpenAPI - Added
starport chain init
command to initialize a chain without starting a node - Scaffold a type that contains a single instance in the store
- Introduced
starport tools
command for advanced users. Existingstarport relayer lowlevel *
commands are also moved undertools
- Added
faucet.rate_limit_window
property toconfig.yml
- Simplified the
cmd
package in the template - Added
starport scaffold band
oracle query scaffolding - Updated TypeScript relayer to 0.2.0
- Added customizable gas limits for the relayer
- Use snake case for generated files
- Prevent using incorrect module name
- Fixed permissions issue when using Starport in Docker
- Ignore hidden directories when building a chain
- Fix error when scaffolding an IBC module in non-Starport chains
- Prevent indirect Buf dependency
- Ensure that CLI operates fine even if the installation directory (bin) of Go programs is not configured properly
- The new
join
flag adds the ability to pass a--genesis
file and--peers
address list withstarport network chain join
- The new
show
flag adds the ability to show--genesis
and--peers
list withstarport network chain show
protoc
is now bundled with Ignite CLI. You don't need to install it anymore.- Starport is now published automatically on the Docker Hub
starport relayer
configure
andconnect
commands now use the confio/ts-relayer under the hood. Also, checkout the newstarport relayer lowlevel
command- An OpenAPI spec for your chain is now automatically generated with
serve
andbuild
commands: a console is available atlocalhost:1317
and spec atlocalhost:1317/static/openapi.yml
by default for the newly scaffolded chains - Keplr extension is supported on web apps created with Starport
- Added tests to the scaffold
- Improved reliability of scaffolding by detecting placeholders
- Added ability to scaffold modules in chains not created with Starport
- Added the ability to scaffold Cosmos SDK queries
- IBC relayer support is available on web apps created with Starport
- New types without CRUD operations can be added with the
--no-message
flag in thetype
command - New packet without messages can be added with the
--no-message
flag in thepacket
command - Added
docs
command to read Starport documentation on the CLI - Published documentation on https://docs.starport.network
- Added
mnemonic
property to account in theaccounts
list to generate a key from a mnemonic
starport network chain join
hanging issue when creating an account- Error when scaffolding a chain with an underscore in the repo name (thanks @bensooraj!)
starport serve
no longer starts the web app in thevue
directory (usenpm
to start it manually)- Default scaffold no longer includes legacy REST API endpoints (thanks @bensooraj!)
- Removed support for Cosmos SDK v0.39 Launchpad
- IBC module scaffolding
- IBC packet scaffolding with acknowledgements
- JavaScript and Vuex client code generation for Cosmos SDK and custom modules
- Standalone relayer with
configure
andconnect
commands - Advanced relayer options for configuring ports and versions
- Scaffold now follows
MsgServer
convention - Message scaffolding
- Added
starport type ... --indexed
to scaffold indexed types - Custom config file support with
starport serve -c custom.yml
- Detailed terminal output for created accounts: name, address, mnemonic
- Added spinners to indicate progress for long-running commands
- Updated to Cosmos SDK v0.42.1
- Replaced
packr
with Go 1.16embed
- Renamed
servers
top-level property tohost
- Chain state persistence between
starport serve
launches - Integrated Stargate app's
scripts/protocgen
into Starport as a native feature. Runningstarport build/serve
will automatically take care of building proto files without a need of script in the app's source code. - Integrated third-party proto-files used by Cosmos SDK modules into Ignite CLI
- Added ability to customize binary name with
build.binary
inconfig.yml
- Added ability to change path to home directory with
.home
inconfig.yml
- Added ability to add accounts by
address
with inconfig.yml
- Added faucet functionality available on port 4500 and configurable with
faucet
inconfig.yml
- Added
starport faucet [address] [coins]
command - Updated scaffold to Cosmos SDK v0.41.0
- Distroless multiplatform docker containers for starport that can be used for
starport serve
- UI containers for chains scaffolded with Starport
- Use SOS-lite and Docker instead of systemD
- Arch PKGBUILD in
scripts
- Support for CosmWasm on Stargate
- Bug with dashes in GitHub username breaking proto package name
- Bug with custom address prefix
- use docker buildx as a single command with multiple platforms to make multi-manifest work properly
- Added
starport network
commands for launching blockchains - Added proxy (Chisel) to support launching blockchains from Gitpod
- Upgraded the template (Stargate) to Cosmos SDK v0.40.0-rc3
- Added a gRPC-Web proxy that is available under http://localhost:12345/grpc
- Added chain id configurability by recognizing
chain_id
fromgenesis
section ofconfig.yml
. - Added
config/app.toml
andconfig/config.toml
configurability for appd under newinit.app
andinit.config
sections ofconfig.yml
- Point to Stargate as default SDK version for scaffolding
- Covered CRUD operations for Stargate scaffolding
- Added docs on gopath to build from source directions
- Arch Linux Based Raspberry Pi development environment
- Calculate the necessary gas for sending transactions to SPN
- Routing REST API endpoints of querier on Stargate
- Evaluate
--address-prefix
option when scaffolding for Stargate - Use a deterministic method to generate scaffolded type IDs
- Modify scaffolded type's creator type from address to string
- Copy built starport arm64 binary from tendermintdevelopment/starport:arm64 for device images
- Added git to amd64 docker image
- Comment out Gaia's seeds in the systemd unit template for downstream chains
- Added GitHub CLI to gitpod environment for greater ease of use
- Added
starport build
command to build and install app binaries - Improved the first-time experience for readers of the Starport readme and parts of the Starport Handbook
- Added
starport module create
command to scaffold custom modules - Raspberry Pi now installs, builds, and serves the Vue UI
- Improved documentation for Raspberry Pi Device Images
- Added IBC and some other modules
- Added an option to configure server addresses under
servers
section inconfig.yml
--address-prefix
will always be translated to lowercase while scaffolding withapp
command- HTTP API: accept strings in JSON and cast them to int and bool
- Update @tendermint/vue to
v0.1.7
- Removed "Starport Pi"
- Removed Makefile from Downstream Pi
- Fixed Downstream Pi image GitHub Action
- Prevent duplicated fields with
type
command - Fixed handling of protobuf profiler: prof_laddr -> pprof_laddr
- Fix an error, when a Stargate
serve
cmd doesn't start if a user doesn't have a relayer installed
- Published on Snapcraft
- Added experimental Stargate scaffolding option with
--sdk-version stargate
flag onstarport app
command - Pi Image Generation for chains generated with Starport
- GitHub action with capture of binary artifacts for chains generated with Starport
- Gitpod: added guidelines and changed working directory into
docs
- Updated web scaffold with an improved sign in, balance list and a simple wallet
- Added CRUD actions for scaffolded types: delete, update, and get
- Add ARM64 releases
- OS Image Generation for Raspberry Pi 3 and 4
- Added
version
command - Added support for validator configuration in config.yml.
- Starport can be launched on Gitpod
- Added
make clean
- Compile with go1.15
- Running
starport add type...
multiple times no longer breaks the app - Running
appcli tx app create-x
now checks for all required args - Removed unused
--denom
flag from theapp
command. It previously has moved as a prop to theconfig.yml
underaccounts
section - Disabled proxy server in the Vue app (this was causing to some compatibility issues) and enabled CORS
for
appcli rest-server
instead type
command supports dashes in app names
- Configure
genesis.json
throughgenesis
field inconfig.yml
- Initialize git repository on
app
scaffolding - Check Go and GOPATH when running
serve
- verbose is --verbose, not -v, in the cli
- Renamed
frontend
directory tovue
- Added first E2E tests (for
app
andadd wasm
subcommands)
- No longer crashes when git is initialized but doesn't have commits
- Failure to start the frontend doesn't prevent Starport from running
- Changes to
config.yml
trigger reinitialization of the app - Running
starport add wasm
multiple times no longer breaks the app
- Initialize with accounts defined
config.yml
starport serve --verbose
shows detailed output from every process- Custom address prefixes with
--address-prefix
flag - Cosmos SDK Launchpad support
- Rebuild and reinitialize on file change
Initial release.