* use kavamint in incentive to calculate staking apy
* use kavamint minting: rewards_earn_staking_integration_test
* update incentive tests to mint only with kavamint
* remove x/mint from incentive tests
* remove x/mint from kava app
* fix minting in x/auction tests
* replace simapp fund calls with test helper
* remove mint state from genesis.json
* add `x/kavamint` module (#1376)
* stub out the x/kavamint module
* mint staking rewards in x/kavamint BeginBlocker
* calculate cumulative inflation from x/kavamint
* cleanup, abstract bond denom, grpc query tests
* store & use previous block time to calculate mints
* move test suite to testutil
* add test of x/kavamint BeginBlocker
* cleanup & comments from @DracoLi review
* fix x/incentive integration test
* remove rest client grpc test
* add x/kavamint module spec
* track previous block time in genesis
* suggested cleanup from PR review
* bugfix incorrect module account check
* add x/community module (#1388)
* add x/community module
* refactor and setup fund-community-pool tx
* remove unused features (params, genesis state)
* test x/community query and message
* update with master branch deps
* updates from review
* indicate deprecated methods on module (still needed to fulfill interface)
* remove legacy querier
* derive msg Route() and Type() from sdk.MsgTypeURL(&msg)
* use module name for message Route()
* mint community pool inflation in x/kavamint (#1389)
* mint community pool inflation in x/kavamint
* refactor x/kavamint abci inflation test
* test inflation from x/kavamint
* default kavamint rates to 0%
* rename kavamint account name variables
* panic if genesis kavamint previous block time not set
* emit event on kavamint begin blocker
* add kavamint year of inflation sanity check test
* update fund_community_pool message event
* add x/community spec
* refactor inflation accumulation into single func
* use new comm pool in kavadist multispend proposal (#1403)
the x/community module houses the new community pool. this commit
points the CommunityPoolMultiSpendProposal at the new community pool
so that multispend proposals can continue to be processed once original
fee pool funds are move to x/community
* updates from proto lint changes
* update earn proposals to use new community pool
originally the CommunityPoolDepositProposal & CommunityPoolWithdrawProposal
used the vanilla community pool fee pool. this commit updates them both
to use the new x/community module account.
* spec formatting update
* add x/community & x/kavamint to internal testnet genesis
* increase test coverage of x/kavamint
* increase test coverage of x/community
* use string type for sdk.Dec proto fields; disable generation of getters
for genesis and params (and other store objects)
* follow sdk conventions for params endpoint naming
* add kavamint to swagger; update swagger & proto docs
* remove legacy querier; touch up module to match others
* reduce max minting rate; refactor genesis to allow nil/zero block time;
repace proto stringers and remove getters; keep sdk.Dec values strings
in protos; increase validation of sdk.Dec values in params; increase
coverage; add module account permission checks; ensure import and export
of genesis does not change state
* fix scaling of rate values -- should be yearly rates
* revert key change
* fix typo in test name
* fix regression in running tests -- rename method
Co-authored-by: Nick DeLuca <nickdeluca08@gmail.com>
* Add initial earn claim migrations
* Use existing types for migrations, add accural time migrations
* Add MigrateRewardIndexes
* Delete old state after migration
* Update store test with multiple entries
* Move key methods to keys.go
* Update incentive consensus version to 3
* Call MigrateRewardIndexes in main migration, remove debugging statements
* Fix migration version to v3
* Update module versions
* Update outdated v1 comment
* add skeleton workflow for cd to internal testnet
* double quote workflow name to prevent splatting / expansion
* allow for manually running internal testnet cd workflow
* modify proto check breaking to check against the previous commit by
default
* add additional proto breaking check for pull requests to master
* always check proto breaking against target branch when making a pull
request
* Add accumulators
* Move accumulator back to keeper package
* Add earn specific accumulators
* Move store methods to sub-package
* Move earn accumulator
* Rename accumulator files
* Add store doc comment
* Add earn accumulator tests, panic if accumulator not used with earn claim type
* Update earn accumulator tests to use new methods
* Add staking test for earn accumulator
* Add test for accumulator proportional rewards
* Remove old copy of GetProportionalRewardsPerSecond
* Add test for basic accumulator
* Fix AddIncentiveMultiRewardPeriod replacement
* Deduplicate base earn reward accumulator
* Check errors in tests
* Validate RewardPeriods in Params.Validate()
* Use adapter to fetch earn total shares
* Add generic accumulator
* Add MultiRewardPeriodOfClaimType type to params
* Add adapters wrapper
* Add MultiRewardPeriodsOfClaimType to params
* Add multireward period to genesis test
* Rename MultiRewardPeriodOfClaimType to TypedMultiRewardPeriod
* Use source adapters wrapper
* start makefile refactor to smaller units; break out proto-dep updating;
add check-proto-deps target for use in CI in order to determine if
depdencies have diverged
* add proto check workflow
* download go modules before checking proto deps
* clean up -- hide output and add error message for check target
* add error message for check-rsync
* update any type, and ibc-go protos for v3.4.0
* add buf generate files for gogo, docs, and swagger
* update swagger dirs and run with latest swagger gen
* ignore new build directories
* refactor proto makefile logic -- use buf instead of scripts
* remove old protobuf scripts
* run all proto checks on push
* remove moved file
* set default value for protoc machine
* install build deps seperately
* fetch master for buf check breaking
* checkout from https url in CI for buf breaking
* fix rsync file permissions on darwin
* ignore build dirs
* fix issue with apple provided make; clean up build deps; switch to buf
format
* remove clang format file -- using buf format now
* run make proto-format (buf format changes)
* update generated files for proto format changes
* Add init/sync claim methods
* Add todo
* Make GetSynchronizedClaim method todo
* Remove GetSynchronizedClaim
Work moved to different task
* Update GetRewardIndexesOfClaimType method
* add total supply endpoint to x/liquid
* add test of x/liquid total supply query
* refactor x/savings test
* add total supply endpoint for x/savings (w/ test)
* add total supply endpoint for x/earn
* handle converting bkava to underlying staked amount
* aggregate bkava underlying values in x/earn
* aggregate underlying value of bkava in x/savings
* Add methods for reward accrual time
* Add accrual time methods
* Add claim type to IterateAllRewardAccrualTimes callback method
* Use new AccrualTime proto type for state methods, add to genesis
* Add GetAllRewardAccrualTimes doc
* Add accrual times to genesis methods
* Remove DecodeKeyPrefix
* Update acrual time iterate method naming
* Update Iterate claims naming
* Use method for sourceID key conversion
the yaml tags are not needed as they are generated automatically from the
json tags.
additionally fixed proto formatting error requiring doc comments on enum
values (for x/incentive claim type enum).
* Update third party protos for tendermint, cosmos updates
* fix proto gen scripts for go 1.18
* update ibc go swagger for v3.3.0
* update generated files
* update swagger
* update grpc and protobuf deps