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.
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
* add pre-commit hook
Co-authored-by: Gianguido Sora <gsora@users.noreply.github.com>
* add go tools installation notes
* Update CONTRIBUTING.md
* run both go mod and golangci-lint
* silence which
* add go.mod go.sum after go mod tidy
* update README
* look up golangci-lint specifically in GOPATH/bin
* don't run golangci-lint
* exclude proto files
Co-authored-by: Gianguido Sora <gsora@users.noreply.github.com>
Co-authored-by: Alexander Bezobchuk <alexanderbez@users.noreply.github.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
* 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.
New Signature interface available in the top level types package.
auth.StdSignature implements such interface. User defined auth
module can now define their own custom signature types.
Work carried out in the context of the following issues:
- #4488
- #4487
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
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
Following up #4225:
- Move clog into an external repository
- Update devtools Makefile.
- Add .clog.yaml file required by clog's latest version.
Closes: #4222
1. `make tools` will not updated `clog` when `clog/main.go` was changed,
except `${GOBIN}/clog` or `tools-stamp` was deleted. `gosum` has the
same problem.
2. $(GOBIN)/gosum was just like magic number.
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