- 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 Starport repo
starport/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 Starport CLI so 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 Starport 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 protobufs 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 compatibilitiy 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.