Go to file
Amaury Martiny d9ede6551a
0.39->0.40 CLI `migrate` command (#6839)
* WIP on BaseAccount protobuf pub_key

* WIP on BaseAccount.PubKey

* Migrate supply

* Change validator_slash_event

* Add evidence

* Add evidence to genutil migrate

* Fix lint

* Add println

* No _ in package name

* Add slashing migrate

* Add tests for slashing

* Add capacity to array

* stray fmt.Prinlnt

* WIP on BaseAccount pub key

* Put current types in v0_40

* Add evidence old types

* Remove useless impl

* Add RegisterInterface

* Add clientCtx to argument

* Register evidence interfaces

* Update PubKey

* Update Account

* Docs

* WIP on protobuf keys

* Use Type() and Bytes() in sr25519 pub key Equals

* Add tests

* Add few more tests

* Update other pub/priv key types Equals

* Fix PrivKey's Sign method

* Rename variables in tests

* Fix infinite recursive calls

* Use tm ed25519 keys

* Add Sign and VerifySignature tests

* Remove ed25519 and sr25519 references

* proto linting

* Add proto crypto file

* Implement some of the new multisig proto type methods

* Add tests for MultisigThresholdPubKey

* Add tests for pubkey pb/amino conversion functions

* Move crypto types.go and register new proto pubkeys

* Add missing pointer ref

* Address review comments

* panic in MultisigThresholdPubKey VerifySignature

* Fix compile errors

* Remove pk conversion in ante handler

* Use internal crypto.PubKey in multisig

* Add tests for MultisigThresholdPubKey VerifyMultisignature

* Only keep LegacyAminoMultisigThresholdPubKey and move to proto keys to v1

* Remove conversion functions and introduce internal PubKey type

* Override Amino marshaling for proto pubkeys

* Merge master

* Make proto-gen

* Start removal of old PubKeyMultisigThreshold references

* Fix tests

* Fix solomachine

* Fix ante handler tests

* Pull latest go-amino

* Remove ed25519

* Remove old secp256k1 PubKey and PrivKey

* Uncomment test case

* Fix linting issues

* More linting

* Revert tests keys values

* Add Amino overrides to proto keys

* Add pubkey test

* Fix tests

* Use threshold isntead of K

* Standardize Type

* Revert standardize types commit

* Fix build

* Fix lint

* Fix lint

* Add comment

* Register crypto.PubKey

* Add empty key in BuildSimTx

* Simplify proto names

* Unpack interfaces for signing desc

* Fix IBC tests?

* Format proto

* Use secp256k1 in ibc

* Fixed merge issues

* Uncomment tests

* Update x/ibc/testing/solomachine.go

* UnpackInterfaces for solomachine types

* Remove old multisig

* Add amino marshal for multisig

* Fix lint

* Correctly register amino

* One test left!

* Remove old struct

* Fix test

* Fix test

* Unpack into tmcrypto

* Remove old threshold pubkey tests

* Fix register amino

* Fix lint

* Use sdk crypto PubKey in multisig UnpackInterfaces

* Potential fix?

* Register LegacyAminoPubKey

* Register our own PubKey

* Register tmcrypto PubKey

* Register both PubKeys

* Register interfaces in test

* Refactor fiels

* Add comments

* Remove old cosmos-sdk/crypto/keys reference

* Use anil's suggestion

* Add norace back

* Use our own ed25519

* Fix pubkey types

* Fix network tests

* Fix more tests

* Make ibc work?

* Use TM pubkey in NewValidator

* Fix lint

* Put interface in tpyes

* rerun CI

* Better name register

* Remove stray code

* Add ed25519 tests

* Check nil

* Correct interface impl assert

* rerun CI

* Add fix for Bech32

* Address comments

* FIx lint

* Add tests for solomachine unpack interfaces

* Fix query tx by hash

* Better name in amino register

* Fix lint

* Add back ed25519 test (fixes #7352)

* go mod tidy

* Fix merge issues

* Sort import

* Add test for backwards-compatibility

* Fix tests

* Fix merge issue

* Fix merge issues

* Fix tests build

* Fix tests

* Marshal to proto

* Fix 040 marshalling

* Remove dontcover

* Fix equivocation

* Add vesting

* Fix vesting

* Fix slashing test

* Fix evidence test

* Remove pb.go files

* Fix legacy auth tests

* deterministic tests help

* Fix auth tests

* Remove useless code

* Small cleanups

* Add comment

* Fix migrate hub

* fmt.Println

* No need to marshal indent

* Update proto comment

* Fix merge issues

* Support nil pubkey

* Use protobuf empty

* Address comments

* Fix tests

* Unify legacy package names

Co-authored-by: Aaron Craelius <aaronc@users.noreply.github.com>
Co-authored-by: Aaron Craelius <aaron@regen.network>
Co-authored-by: blushi <marie.gauthier63@gmail.com>
Co-authored-by: Alexander Bezobchuk <alexanderbez@users.noreply.github.com>
Co-authored-by: colin axnér <25233464+colin-axner@users.noreply.github.com>
Co-authored-by: Zaki Manian <zaki@manian.org>
Co-authored-by: Alessio Treglia <alessio@tendermint.com>
2020-10-05 21:28:14 +00:00
.circleci fix docs build failure (#6633) 2020-07-07 19:56:01 +02:00
.github Bump actions/setup-go from v2.1.2 to v2.1.3 (#7438) 2020-10-02 04:21:38 -03:00
baseapp Proto Tx with Any (#7276) 2020-09-21 16:48:28 +00:00
client LGTM alerts audit (#7440) 2020-10-02 15:13:58 +02:00
codec proto register "cosmos.base.v1beta.Msg" interface (#7433) 2020-10-01 13:59:32 -03:00
contrib Fix installation of gocosmos (#7410) 2020-10-01 13:25:23 +00:00
cosmovisor feat: allow "any" to specify a "binary" with no arch/os deps (#7230) 2020-09-14 21:32:10 +00:00
crypto LGTM alerts audit (#7440) 2020-10-02 15:13:58 +02:00
docs Update ADR 023 package versioning guidelines (#6954) 2020-10-05 11:49:13 +00:00
proto 0.39->0.40 CLI `migrate` command (#6839) 2020-10-05 21:28:14 +00:00
scripts Makefile: simplify and clean-up (#7453) 2020-10-05 10:22:18 +02:00
server Change `address` from bytes to bech32 strings (#7242) 2020-09-25 10:25:37 +00:00
simapp ibc: core restructure (#7434) 2020-10-02 06:03:02 -03:00
snapshots test: fix data race in snapshots.ChunkReader test (#7299) 2020-09-14 14:00:08 +01:00
std Proto Tx with Any (#7276) 2020-09-21 16:48:28 +00:00
store Merge PR #7265: Tendermint Block Pruning 2020-09-14 10:12:49 -04:00
telemetry Minor Code Cleanup - gRPC queries (#6862) 2020-07-28 12:53:35 +00:00
tests types: start grouping tests in test suites (#7395) 2020-09-27 23:51:14 +02:00
testutil types: tests -> test suites migration (#7405) 2020-09-29 13:29:10 +02:00
third_party/proto Merge PR #7251: Cleanup of evidence types 2020-09-08 09:33:53 -07:00
types proto register "cosmos.base.v1beta.Msg" interface (#7433) 2020-10-01 13:59:32 -03:00
version testutil: add ApplyMockIODiscardOutErr, simplify existing functions (#6665) 2020-07-10 08:55:48 +02:00
x 0.39->0.40 CLI `migrate` command (#6839) 2020-10-05 21:28:14 +00:00
.clang-format Add proto formatting tool (#7266) 2020-09-08 22:06:54 +00:00
.codecov.yml test delay for codecov (#7134) 2020-08-21 15:38:40 +01:00
.dockerignore Add basic Dockerfile to build all binaries and export gaiad 2018-04-10 12:39:47 +02:00
.gitattributes Merge PR #6426: Migrate API Server 2020-06-15 13:39:09 -04:00
.gitignore ibc: upgrade client (#7367) 2020-10-01 03:21:57 -03:00
.golangci.yml linter: enable nolintlint (#6162) 2020-05-08 08:46:12 +00:00
.goreleaser.yml ci: automate release post tag push (#6230) 2020-05-25 20:02:08 +02:00
.mergify.yml Tweak mergify config 2020-03-01 16:18:22 +00:00
CHANGELOG.md ibc: core restructure (#7434) 2020-10-02 06:03:02 -03:00
CODE_OF_CONDUCT.md Update CODE_OF_CONDUCT.md (#7381) 2020-09-28 11:28:30 +02:00
CONTRIBUTING.md Stable Releases: Definition and Process (#6394) 2020-07-14 10:28:53 +02:00
Dockerfile Makefile: simplify and clean-up (#7453) 2020-10-05 10:22:18 +02:00
LICENSE Add README.md to Basecoin; Update licenses 2018-01-28 18:17:19 -08:00
Makefile docs: docs-staging → master (#7446) 2020-10-05 13:38:38 +00:00
README.md replace testutil.NewTestCaseDir() with Go1.15's T.TempDir() (#7014) 2020-09-18 12:08:24 +01:00
SECURITY.md update SECURITY.md (#6263) 2020-05-21 11:12:51 +02:00
STABLE_RELEASES.md Stable Releases: Definition and Process (#6394) 2020-07-14 10:28:53 +02:00
buf.yaml Add Grpc gateway annotations (#6918) 2020-08-14 10:05:35 +00:00
build.sh Makefile: simplify and clean-up (#7453) 2020-10-05 10:22:18 +02:00
docker-compose.yml buildsystem: simplify Makefile and ci automation (#7189) 2020-08-31 15:39:05 +02:00
go.mod Update 99designs/keyring to v1.1.6 for go 1.15 (#7397) 2020-09-25 23:38:07 +01:00
go.sum types: start grouping tests in test suites (#7395) 2020-09-27 23:51:14 +02:00
package-lock.json Proportional slashing ADR Update (#6368) 2020-10-05 09:30:50 +02:00

README.md

Cosmos SDK

banner

The Cosmos-SDK is a framework for building blockchain applications in Golang. It is being used to build Gaia, the first implementation of the Cosmos Hub.

WARNING: The SDK has mostly stabilized, but we are still making some breaking changes.

Note: Requires Go 1.15+

Quick Start

To learn how the SDK works from a high-level perspective, go to the SDK Intro.

If you want to get started quickly and learn how to build on top of the SDK, please follow the SDK Application Tutorial. You can also fork the tutorial's repository to get started building your own Cosmos SDK application.

For more, please go to the Cosmos SDK Docs.

Cosmos Hub Mainnet

The Cosmos Hub application, gaia, has moved to its own repository. Go there to join the Cosmos Hub mainnet and more.

Scaffolding

If you are starting a new app or a new module we provide a scaffolding tool to help you get started and speed up development. If you have any questions or find a bug, feel free to open an issue in the repo.

Disambiguation

This Cosmos-SDK project is not related to the React-Cosmos project (yet). Many thanks to Evan Coury and Ovidiu (@skidding) for this Github organization name. As per our agreement, this disambiguation notice will stay here.