cosmos-sdk/x
technicallyty 5bd93bfe7b
x/upgrade: added consensus version tracking (part of ADR-041) (#8743)
* -added consensus version tracking to x/upgrade

* -added interface to module manager -added e2e test for migrations using consensus version store in x/upgrade -cleaned up x/upgrade Keeper -handler in apply upgrade now handles errors and setting consensus versions -cleaned up migration map keys -removed init chainer method -simapp now implements GetConsensusVersions to assist with testing

* Changed MigrationMap identifier to VersionMap
removed module_test

* updated docs

* forgot this

* added line to changelog for this PR

* Change set consensus version function to match adr 041 spec

* add documentation

* remove newline from changelog

unnecessary newline removed

* updated example in simapp for RunMigrations, SetCurrentConsensusVersions now returns an error

* switch TestMigrations to use Require instead of t.Fatal

* Update CHANGELOG.md

Co-authored-by: Aaron Craelius <aaron@regen.network>

* docs for SetVersionManager

* -init genesis method added -removed panics/fails from setting consensus versions

* update identifiers to be more go-like

* update docs and UpgradeHandler fnc sig

* Upgrade Keeper now takes a VersionMap instead of a VersionManager interface

* upgrade keeper transition to Version Map

* cleanup, added versionmap return to RunMigrations

* quick fix

* Update docs/architecture/adr-041-in-place-store-migrations.md

Co-authored-by: Amaury <1293565+amaurym@users.noreply.github.com>

* remove support for versionmap field on upgrade keeper

* cleanup

* rename get/set version map keeper functions

* update adr doc to match name changes

* remove redudant line

Co-authored-by: technicallyty <48813565+tytech3@users.noreply.github.com>
Co-authored-by: Aaron Craelius <aaron@regen.network>
Co-authored-by: Amaury <1293565+amaurym@users.noreply.github.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2021-03-19 22:01:29 +00:00
..
auth add +nobuild flags to all relevant test cases (#8934) 2021-03-19 11:24:29 +00:00
authz add +nobuild flags to all relevant test cases (#8934) 2021-03-19 11:24:29 +00:00
bank all: skip noisy/faulty benchmarks + add b.ReportAllocs for every benchmark (#8856) 2021-03-11 15:59:13 +00:00
capability fixed broken links, typos (#8783) 2021-03-09 09:51:52 +00:00
crisis logging (#8785) 2021-03-04 20:40:01 +00:00
distribution x/distribution: fix module's parameters validation (#8918) 2021-03-17 20:06:54 +00:00
evidence fix make protoc error (#8799) 2021-03-05 15:23:01 +00:00
feegrant fix make protoc error (#8799) 2021-03-05 15:23:01 +00:00
genaccounts various linter fixes (#8666) 2021-02-23 08:46:01 +00:00
genutil Fix multisig LegacyAminoPubKey Amino marshaling (#8841) 2021-03-15 12:42:10 +00:00
gov x/upgrade: remove support for time based upgrades (#8849) 2021-03-14 01:03:01 +00:00
mint various linter fixes (#8666) 2021-02-23 08:46:01 +00:00
params various linter fixes (#8666) 2021-02-23 08:46:01 +00:00
simulation various linter fixes (#8666) 2021-02-23 08:46:01 +00:00
slashing Move all migration scripts to v043 (#8814) 2021-03-08 22:36:06 +00:00
staking Staking spec updates (#8843) 2021-03-19 12:06:53 +00:00
upgrade x/upgrade: added consensus version tracking (part of ADR-041) (#8743) 2021-03-19 22:01:29 +00:00
README.md Remove IBC from the SDK (#8735) 2021-03-04 13:11:34 +00:00

README.md

List of Modules

Here are some production-grade modules that can be used in Cosmos SDK applications, along with their respective documentation:

  • Auth - Authentication of accounts and transactions for Cosmos SDK application.
  • Authz - Authorization for accounts to perform actions on behalf of other accounts.
  • Bank - Token transfer functionalities.
  • Capability - Object capability implementation.
  • Crisis - Halting the blockchain under certain circumstances (e.g. if an invariant is broken).
  • Distribution - Fee distribution, and staking token provision distribution.
  • Evidence - Evidence handling for double signing, misbehaviour, etc.
  • Governance - On-chain proposals and voting.
  • Mint - Creation of new units of staking token.
  • Params - Globally available parameter store.
  • Slashing - Validator punishment mechanisms.
  • Staking - Proof-of-Stake layer for public blockchains.
  • Upgrade - Software upgrades handling and coordination.

To learn more about the process of building modules, visit the building modules reference documentation.

IBC

The IBC module for the SDK has moved to its own repository.