Cancel ci if no .go files have been touched. There is no clean way of
doing this so i opted to `exit 1` on the diff job if no go files were
changed and have builds depend on diff passing
- migrate proto checks to github actions.
- providing make commands to use buf within docker.
- test-sim-multi-seed-long migration to github actions. Follows same
logic and only runs on release branches.
- add protobuf section to CONTRIBUTING.md.
* Don't change proto files on make format
The format target does not need to depend on tools.
Thus remove dependency.
* Run make format
Co-authored-by: Alexander Bezobchuk <alexanderbez@users.noreply.github.com>
Client commands accept a new `--keyring-backend` option through which users can specify which backend should be used by the new key store:
- os: use OS default credentials storage (default).
- file: use encrypted file-based store.
- test: use password-less key store (highly insecure).
* Attempt to standardise Makefile's conventions
Use check- prefix for test- targets to adhere to
Make's standard naming convention [1].
Snake-case names are abandoned in favor of
kebab-case naming convention.
[1] https://www.gnu.org/prep/standards/html_node/Standard-Targets.html
* Replace check- with test-
* Remove goimports from tools
* Update circleci config
* Update workflow steps names to match Makefile
* Fix circleci config
* s/check_statik/update-swagger-docs/
Update golangci-lint to latest version.
Remove ci-lint, no longer used.
Remove golangci-lint from tools target to prevent CI builds
from downloading automatically (and unnecessarily).
Developers can still run make golangci-lint to download
it locally for development and testing purposes.
Account getters are removed from client context. x/auth has the
queriers necessary for retrieving account information.
These functions should be removed since they are currently
redundant and don't provide any extra value.
Closes: #4543
Gaia is removed from cosmos-sdk repository.
Few changes were required to make sure no packages depend on gaia subpackages.
CI config is amended accordingly.
Unnecessary targets are removed from Makefile.
Simulations run through a lightweight version of gaia renamed to simapp.
Closes: #4104
* first commit
* gaia cleanup
* ...
* staking multihooks
* missing module function return args
* bank module name constant
* working, module interface for x/
* got this thing compiling
* make test compiles and passes
* remove expanded simulation invariants
* genesis issue
* continued
* continued
* register crisis routes thought mm
* begin blocker to mm
* end blocker to mm
* empty routes not initialized
* move gaia initChainer sanity check to baseapp
* remove codecs from module manager
* reorging genesis stuff
* module manager passed by reference/bugfixes from working last commit
int
int
* move invariant checks from gaia to crisis
* typo
* basic refactors cmd/gaia/init
* working
* MultiStakingHooks from types to x/staking/types
int
* default module manager order of operations from input modules
* working
* typo
* add AppModuleBasic
* moduleBasicManager / non-test code compiles
* working attempting to get tests passing
* make test passes
* sim random genesis fix
* export bug
* ...
* genutil module
* genutil working
* refactored - happy with non-testing code in cmd/
* ...
* lint fixes
* comment improvement
* cli test fix
* compile housing
* working through compile errors
* working gettin' compilin'
* non-test code compiles
* move testnet to its own module
* reworking tests
int
* bez staging PR 1 comments
* concise module function-of names
* moved all tests from genesis_test.go to other genutil tests
* genaccounts package, add genutil and genaccounts to app.go
* docs for genutil genaccounts
* genaccounts iterate fn
* non-test code with genaccounts/ now compiles
* working test compiling
* debugging tests
* resolved all make test compile errors
* test debuggin
* resolved all unit tests, introduced param module
* cli-test compile fixes
* staking initialization bug
* code comment improvements, changelog entries
* BasicGaiaApp -> ModuleBasics
* highlevel explanation in types/module.go
* @alexanderbez comment revisions
* @fedekunze PR comments
* @alexanderbez PR comments (x2)
* @cwgoes comments (minor updates)
* @fedekunze suggestions
* panic on init with multiple validator updates from different modules
* initchain panic makes validate genesis fail
int
* AppModuleGenesis seperation
int
* test
* remove init panic logic in validate genesis replaced with TODO
* set maxprocs to match system's GOMAXPROCS
* Update circleci
* Cap maxprocs in CI to 4
* @alexanderbez recent comments addressed
* less blocks in twouble sims
int
* runsim error output flag
* -e on import_export as well
* error out
int
* Try to fix failures
* runsim
This change set introduces support for building gaia with gitian
on the following GOOS/GOARCH pairs:
- darwin/386
- darwin/amd64
- linux/386
- linux/amd64
- linux/arm
- linux/arm64
- windows/386
- windows/amd64
cmd/gaia/contrib/gitian-descriptors/ contains gitian descriptor files.
cmd/gaia/contrib/gitian-keys/ contains:
- a keys.txt file that is meant to list core developers and gitian
builders PGP keys.
- README.me to provide instructions on how to import the keys
into one's personal GPG keyring.
The gosum utility is removed, so is the go.sum hashsum bit from
gaiacli/gaiad version string. It was meant to be a provisional
mitigation to the lack of a reproducible build process.
GOBIN is removed from all Makefiles. When GOBIN is set, go
refuses to cross-compiles binaries for foreign architectures.
export GOBIN=$GOPATH/bin is unnecessary anyway as by
default go install places built binaries in $GOPATH/bin.
Developers are required to update their enviornment files and
replace $GOBIN with $GOPATH/bin in PATH.
circleci configuration file is amended accordingly.
Closes: #4027Closes: #4280
The version package is meant to be a convenience utility
that provides SDK consumers with a ready-to-use version
command that produces app's versioning information from
flags passed at compile time.
It will not make sense anymore for the baseapp package
to depend on the version package once gaia will have been
migrated away from the SDK main repository as we neither
want to make assumptions nor set expectations on downstream
apps buildsystems. Thus BaseApp now provides SetAppVersion()
and AppVersion() to to allow SDK consumers to set BaseApp's
version information string once the struct is initialised.
Amend targets naming convention as per [1]:
- Switch from underscore '_' separated naming scheme to dash '-'
separated naming scheme.
- Replace test with check.
Simulations now live in their own Make module.
[1] https://www.gnu.org/prep/standards/html_node/Standard-Targets.html
{,scripts/}Makefile:
- Remove gometalinter, install golangci-lint.
- Remove distinction between tools and devtools.
Just tools is enough.
- test_lint -> lint
Migrating away from underscore separated names.
- Remove unnecessary targets.
- Drop tendermint/lint. Incompatbile with golangci-lint
and no longer necessary anyway.
- Fix misleading message in go-mod-cache.
- New ci-target to avoid download tools twice.
- Run tests with -mod=readonly.
Port tools/gometalinter.json to .golangci.yml
Update CircleCI config accordingly.
Closes: #3896
Replace sha1sum with jack's gosum and get rid of
vendor-deps.
Also don't compute hash on vendor/ contents.
Instead hash go.sum.
Disable unconvert lint check. It does not
work very well with go mod.
Remove update_vendor_deps once and for all.
Upgrade to go 1.12
Closes: #3919#3630