* fix proto tools
* go get
* fix proto-tools
Co-authored-by: colin axnér <25233464+colin-axner@users.noreply.github.com>
Co-authored-by: Aleksandr Bezobchuk <aleks.bezobchuk@gmail.com>
* Enable proto tx by default and add test_amino build flag.
* Enable proto TxDecoder
* update makefile
* fix conflicts
* Revert AminoCodec change
* Make test-unit-amino default for now
* Make test-unit-amino default for now
Co-authored-by: Federico Kunze <31522760+fedekunze@users.noreply.github.com>
Co-authored-by: sahith-narahari <sahithnarahari@gmail.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
Follow-up of #6101.
- Makefile:
Set all as actual default target.
- contrib/devtools/Makefile:
The buf target was running unconditionally.
Install protoc-gen-gocosmos along with protoc.
* consolidate proto files into single directory, turn on PACKAGE_DIRECTORY_MATCH linting
* add third_party root for third party proto files
* move ibc proto files to top level folder, rename .proto files to types.proto as before
* update protocgen script, and run code generation
* move vesting proto definition to cosmos namespace, rename from types.proto in alignment with buf.build naming conventions
* update Makefile so proto dependencies are set with new structure when updated
* add comment for sed usage in makefile
* remove unused aliases of proto generated types
* add settings.json instructions to contributing.md for including protobuf paths
Co-authored-by: Federico Kunze <31522760+fedekunze@users.noreply.github.com>
Co-authored-by: Aaron Craelius <aaron@regen.network>
The command processes list of transactions from file
(one StdTx each line), generate signed transactions
or signatures and print their JSON encoding, delimited
by '\n'. As the signatures are generated, the command
increments the sequence number automatically.
Author: @jgimeno
Reviewed-by: @alessio
--validate-signatures should not be a flag of the sign command
as the operation performed (transaction signatures verification)
is logically distinct.
cli_test is and has always been an horrible name for package
directory as it's very much Go anti-idiomatic - _test is the
suffix used by test packages, not directories. Plus, CLI test
cases can and should live alongside other testcases that don't
require binaries to be built beforehand. Thus:
x/module/client/cli_test/*.go -> x/module/client/cli/
Test files that require sim{cli,d} shall be tagged with // +build cli_test
With regard to cli test auxiliary functions, they should live in:
x/module/client/testutil/
Co-authored-by: Alexander Bezobchuk <alexanderbez@users.noreply.github.com>
* Added cli integration base setup
* Added cmd to simapp
* Fixed ci-lint issues
* Fixed ci-lint issues
* Addressed changes in Makefile
* Updated simd to latest
* Removed testnet and replay commands
* Modified tx command for simcli
* Did code cleanup
* Removed duplication in Makefile
* Refactored cli_test
* Added build-sim to Makefile
* Added test-cli to circleci
* Added tests for staking txns
* Addressed format issues
* refctored tests code
* Added tests for send, staking
* Removed test_hepers file
* Moved test_cover to contrib
* Added codec in fixtures
* Migrated tests to respective modules
* Exported helper methods
* Moved helpers to bank
* Added codec to fixtures
* Migrated tests to modules
* Removed auth helpers from staking
* Did minor code cleanup
* Added test-cli to Makefile
* Updated github actions
* Did code refactor
* Fixed github actions for cli-test
* Added tests for recover keys and fee deduction
* Did minor code cleanup
* Added build flag to cli_tests
* Moved cli_test to tests
* Modified path in Makefile
* Updated codec std in fixtures
* Added doc for cli tests
* Remove ibc genesis validation
* Fix issue number
* Added missing imports
* Add tests for distribution and simd
* Modified naming for test functions
* Added test for withdraw rewards
* Modified test function names
* Fixed import format
* Migrated helpers to package cli
* Fixed github test actions
* Fixed test coverage in actions
* Added build sim to actions
* Apply Alessio patch for tests
* Removed unused imports
* Added init for go tests
* try fix tests
* goimports what wasn't goimports'd
* try fix ci
* add relevant tags to integration tests
* run integration tests separately
* use go build -o flag and let compiler gemerate the binary with the
right extension for the HOST platform
rename cli-test to test-integration
* update ci
* rename
Co-authored-by: atheesh <atheesh1>
Co-authored-by: kaustubhkapatral <54210167+kaustubhkapatral@users.noreply.github.com>
Co-authored-by: Aaron Craelius <aaron@regen.network>
Co-authored-by: anilCSE <anil@vitwit.com>
Co-authored-by: Alessio Treglia <alessio@tendermint.com>
Don't reinstall proto tools unconditionally every time
one runs make.
On most Linux systems, /usr/local is writable by root only.
Allow users to customise installation directory by passing
PREFIX to make command line, e.g.:
$ make PREFIX=~/.local
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
- Remove --long from git describe. Appending commit info on tagged
revisions is redundant.
- $(subst v,,$(shell git describe --tags --long)) was removing any
occurrence of 'v'. Rather we want to remove only the 'v' prefix
from tags.
* version prints out short info by default
Handle -o json, add --long flag to print full version info.
* Add distclean target to Makefile
* Update PENDING.md
* Add missing targets in .PHONY
- Rename get_dev_tools to devtools
- tools and devtools now create a stamp after execution so
that they are not executed twice on the same pipeline
- Add clean target to remove stamps
Fixes regression introduced by #2984.
Continuiation of #3033 , which didn't fix the simulation issues.
(candidate) Complete solution for #3019, 9002 halt bug.
From #2984, it isn't sufficient to take the fee pool rewards of a validator. Since we don't track delegator accums (as we do with validator accums), and because onValidatorModified >updateValidatorDistInfoFromPool is also being called upon delegation updates (or at least I believe this is the reason), it is necessary to also withdraw self delegation.
TODO: I don't think self-delegation should be required to be modified here... consider using a delegation hook to do the self-delegation withdraw part instead, e.g. splitting the updateValidatorDistInfoFromPool function into two. It might not result in cleaner code, however. Think hard.
* Add check that account is in genesis and contains enough funds to gentx command
* Fix CLI tests and make them parallel
* Update makefile to take advantage of parallel tests
* Add path seperator back in
* Don
't check error on key delete
* Add debuggin printout for debugging remote test failures
* Update cmd/gaia/init/gentx.go
Co-Authored-By: jackzampolin <jack.zampolin@gmail.com>
* Update cmd/gaia/init/gentx.go
Co-Authored-By: jackzampolin <jack.zampolin@gmail.com>
* Change to bondDenom from the stake section in genesis
* Add PENDING.md
* Push changes
* Fix CI failure
* Address PR comments
* Fix broken gov tests
* Address PR comments
* Address PR comments