Commit Graph
649 Commits
Author SHA1 Message Date
Marko 1fab762175 refactor: remove base app from store (#14417)
## Description

This pr removes base app from the store package. This is un order to decouple store from the sdk. There are a few things we can clean up but the telemetry package may be difficult with how it's done. 

---

### Author Checklist

*All items are required. Please add a note to the item if the item is not applicable and
please add links to any relevant follow up issues.*

I have...

- [ ] included the correct [type prefix](https://github.com/commitizen/conventional-commit-types/blob/v3.0.0/index.json) in the PR title
- [ ] added `!` to the type prefix if API or client breaking change
- [ ] targeted the correct branch (see [PR Targeting](https://github.com/cosmos/cosmos-sdk/blob/main/CONTRIBUTING.md#pr-targeting))
- [ ] provided a link to the relevant issue or specification
- [ ] followed the guidelines for [building modules](https://github.com/cosmos/cosmos-sdk/blob/main/docs/docs/building-modules)
- [ ] included the necessary unit and integration [tests](https://github.com/cosmos/cosmos-sdk/blob/main/CONTRIBUTING.md#testing)
- [ ] added a changelog entry to `CHANGELOG.md`
- [ ] included comments for [documenting Go code](https://blog.golang.org/godoc)
- [ ] updated the relevant documentation or specification
- [ ] reviewed "Files changed" and left comments if necessary
- [ ] confirmed all CI checks have passed

### Reviewers Checklist

*All items are required. Please add a note if the item is not applicable and please add
your handle next to the items reviewed if you only reviewed selected items.*

I have...

- [ ] confirmed the correct [type prefix](https://github.com/commitizen/conventional-commit-types/blob/v3.0.0/index.json) in the PR title
- [ ] confirmed `!` in the type prefix if API or client breaking change
- [ ] confirmed all author checklist items have been addressed 
- [ ] reviewed state machine logic
- [ ] reviewed API design and naming
- [ ] reviewed documentation is accurate
- [ ] reviewed tests and test coverage
- [ ] manually tested (if applicable)
2022-12-27 23:00:44 +00:00
Facundo MedicaandAleksandr Bezobchuk 6d33fa89c7 refactor: Baseapp audit changes (#14379)
Co-authored-by: Aleksandr Bezobchuk <alexanderbez@users.noreply.github.com>
2022-12-22 09:43:40 -05:00
Aleksandr Bezobchuk 1152e5b0b5 fix: panic recovery in PrepareProposal and ProcessProposal Handlers (#14381) 2022-12-21 12:32:30 -05:00
Julien Robert 351916e5be fix: improve baseapp event emission (#14356) 2022-12-19 22:45:48 +00:00
Jacob Gadikian be8c5a09c2 chore: lint tests (#14268) 2022-12-18 23:48:31 +00:00
Aleksandr Bezobchuk a4d1ede3e9 feat: no-op mempool (#14297) 2022-12-14 20:44:05 +00:00
Aleksandr Bezobchuk 66dd2be12c chore: cleanup baseapp tests (#14162) 2022-12-06 16:52:36 +00:00
John Letey 25449b5812 fix: remove duplicate ante events (#13983)
## Description

After enabling the post-handler on our chain, we realised something odd with our transaction events. The ordering was `[ANTE, MSGS, ANTE, POST]`. After doing some digging, we realised that the context used inside the post-handler still contains the events from the ante-handler.

This should be backported to v0.46.x and v0.47.x 😄
Happy to make it compatible with #13940 when that gets merged!

cc @mbreithecker



---

### Author Checklist

*All items are required. Please add a note to the item if the item is not applicable and
please add links to any relevant follow up issues.*

I have...

- [ ] included the correct [type prefix](https://github.com/commitizen/conventional-commit-types/blob/v3.0.0/index.json) in the PR title
- [ ] added `!` to the type prefix if API or client breaking change
- [ ] targeted the correct branch (see [PR Targeting](https://github.com/cosmos/cosmos-sdk/blob/main/CONTRIBUTING.md#pr-targeting))
- [ ] provided a link to the relevant issue or specification
- [ ] followed the guidelines for [building modules](https://github.com/cosmos/cosmos-sdk/blob/main/docs/building-modules)
- [ ] included the necessary unit and integration [tests](https://github.com/cosmos/cosmos-sdk/blob/main/CONTRIBUTING.md#testing)
- [ ] added a changelog entry to `CHANGELOG.md`
- [ ] included comments for [documenting Go code](https://blog.golang.org/godoc)
- [ ] updated the relevant documentation or specification
- [ ] reviewed "Files changed" and left comments if necessary
- [ ] confirmed all CI checks have passed

### Reviewers Checklist

*All items are required. Please add a note if the item is not applicable and please add
your handle next to the items reviewed if you only reviewed selected items.*

I have...

- [ ] confirmed the correct [type prefix](https://github.com/commitizen/conventional-commit-types/blob/v3.0.0/index.json) in the PR title
- [ ] confirmed `!` in the type prefix if API or client breaking change
- [ ] confirmed all author checklist items have been addressed 
- [ ] reviewed state machine logic
- [ ] reviewed API design and naming
- [ ] reviewed documentation is accurate
- [ ] reviewed tests and test coverage
- [ ] manually tested (if applicable)
2022-12-02 22:58:02 +00:00
yihuangandMarko 1f91ee2ee9 fix: state listener observe writes at wrong time (#13516)
* fix: state listener observe writes at wrong time

Closes: #13457

Currently state listener is notified when the cache store write, which happens in commit event only, which breaks the current design.
The solution (as discussed in the issue) is to listen state writes on rootmulti store only.

It also changes the file streamer to output single data file for the writes in the whole block, since we can't distinguish writes from different stage of abci events.

It adds new config items for file streamer:
- streamers.file.output-metadata
- streamers.file.stop-node-on-error
- streamers.file.fsync

* synchronous abci call, and format doc

* fix comment

* update file streamer readme and fix typos

* typo

* fix: state listener observe writes at wrong time

Closes: #13457

Currently state listener is notified when the cache store write, which happens in commit event only, which breaks the current design.
The solution (as discussed in the issue) is to listen state writes on rootmulti store only.

It also changes the file streamer to output single data file for the writes in the whole block, since we can't distinguish writes from different stage of abci events.

It adds new config items for file streamer:
- streamers.file.output-metadata
- streamers.file.stop-node-on-error
- streamers.file.fsync

synchronous abci call, and format doc

fix comment

update file streamer readme and fix typos

typo

* improve UX of file streamer, make it immediately usable after enabled

- set default value to write_dir.
- make write_dir based on home directory by default.
- auto-create the directory if not exists.

* get homePage from opts

Co-authored-by: Marko <marbar3778@yahoo.com>
2022-12-02 15:43:21 +01:00
Julien Robert 6239cdfddb chore: clean-up deprecated function usage (#14078) 2022-11-30 01:10:50 +01:00
MarkoandAleksandr Bezobchuk 2e3d38f01c refactor: move snapshotstore under store (#14048)
* Move snapshotstore under store

* add changelog entry

* fix build

* move snapshot proto package

* make proto-gen

* Update CHANGELOG.md

Co-authored-by: Aleksandr Bezobchuk <alexanderbez@users.noreply.github.com>

Co-authored-by: Aleksandr Bezobchuk <alexanderbez@users.noreply.github.com>
2022-11-29 23:40:14 +00:00
MarkoandFederico Kunze Küllmer 04f9ad24ab chore: mark WrapSdkContext as deprecated (#14072)
* remove wrapping and mark wrapsdkContext as deprecated

* Update types/context.go

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
2022-11-29 20:11:08 +00:00
730d6313f4 fix: remove unnecessary cms typecasting (#14054)
* fix: remove unnecessary cms typecasting

* Update baseapp/baseapp.go

Co-authored-by: Julien Robert <julien@rbrt.fr>

Co-authored-by: Aleksandr Bezobchuk <alexanderbez@users.noreply.github.com>
Co-authored-by: Julien Robert <julien@rbrt.fr>
Co-authored-by: Marko <marbar3778@yahoo.com>
2022-11-29 19:45:12 +00:00
fffc9d07d5 refactor!: Add context arg to sign mode handler GetSignBytes (#13701)
* refactor!: Add context arg to sign mode handler `GetSignBytes`

* fix build

* fix tests

* Fix goling

* fix lint

* Fix lint

* Fix test

* Update CHANGELOG.md

Co-authored-by: Aleksandr Bezobchuk <alexanderbez@users.noreply.github.com>

* Fix tests

* Fix rosetta deps

* fix

* go mod tidy all

* go mod tidy

Co-authored-by: Aleksandr Bezobchuk <alexanderbez@users.noreply.github.com>
Co-authored-by: Marko <marbar3778@yahoo.com>
Co-authored-by: Julien Robert <julien@rbrt.fr>
2022-11-29 18:49:51 +00:00
Marko b25908b964 refactor: use go context instead of sdk.Context (#14050)
* rely on context.Context instead of homegrown

* changelog entry

* wrap before calling
2022-11-29 11:59:54 +00:00
Jeancarlo Barrios 1ac7d3236e fix(baseapp): fix snapshot interval bug (#14049)
## Description
Fix for
Closes: #13766



---

### Author Checklist

*All items are required. Please add a note to the item if the item is not applicable and
please add links to any relevant follow up issues.*

I have...

- [ ] included the correct [type prefix](https://github.com/commitizen/conventional-commit-types/blob/v3.0.0/index.json) in the PR title
- [ ] added `!` to the type prefix if API or client breaking change
- [ ] targeted the correct branch (see [PR Targeting](https://github.com/cosmos/cosmos-sdk/blob/main/CONTRIBUTING.md#pr-targeting))
- [ ] provided a link to the relevant issue or specification
- [ ] followed the guidelines for [building modules](https://github.com/cosmos/cosmos-sdk/blob/main/docs/building-modules)
- [ ] included the necessary unit and integration [tests](https://github.com/cosmos/cosmos-sdk/blob/main/CONTRIBUTING.md#testing)
- [ ] added a changelog entry to `CHANGELOG.md`
- [ ] included comments for [documenting Go code](https://blog.golang.org/godoc)
- [ ] updated the relevant documentation or specification
- [ ] reviewed "Files changed" and left comments if necessary
- [ ] confirmed all CI checks have passed

### Reviewers Checklist

*All items are required. Please add a note if the item is not applicable and please add
your handle next to the items reviewed if you only reviewed selected items.*

I have...

- [ ] confirmed the correct [type prefix](https://github.com/commitizen/conventional-commit-types/blob/v3.0.0/index.json) in the PR title
- [ ] confirmed `!` in the type prefix if API or client breaking change
- [ ] confirmed all author checklist items have been addressed 
- [ ] reviewed state machine logic
- [ ] reviewed API design and naming
- [ ] reviewed documentation is accurate
- [ ] reviewed tests and test coverage
- [ ] manually tested (if applicable)
2022-11-28 23:45:05 +00:00
Julien RobertandMarko 6f329d70c6 docs: add docs about x/auth/tx (#14021)
* docs: add docs about `x/auth/tx`

* updates

* updates

* updates

* updates

* updates

* updates

* updates

Co-authored-by: Marko <marbar3778@yahoo.com>
2022-11-27 20:30:23 +00:00
908fda1f53 feat: sender mempool impl (#13888)
* draft sender mempool impl

* select

* nit

* random sender update

* nit

* prevent memory leak

* fix nil return

* small fixes

* added tests

* change count

* finish tx order test removed the three address test due to make the test to bloated when including non determinism

* remove unsued variable

* nit

* fix

* temoral commit braking

* nit most

* nit most

* final

* comments

* t

* comments

* test

* add nolint

* Fix comment

* golint comment

* golint

* improve format?

* more gosec disable

* Fix ctr usage

* use #nosec

* Update types/mempool/sender_nonce.go

* Kocubinski/random sender nonce (#13956)

* refactor

* fix iteration logic

* fix merge err

* import fixes

* derive order randomness from seed only

* gosec fix

* ignore gosec again

* comments

* property based

* minor fixes

* added property test

* comment

* fix imports

* comment

* Update types/mempool/sender_nonce_property_test.go

Co-authored-by: Matt Kocubinski <mkocubinski@gmail.com>

* remove unesessary loop

* improve function name

* Update types/mempool/sender_nonce.go

Co-authored-by: Facundo Medica <14063057+facundomedica@users.noreply.github.com>

* change import name

* change validation to be preemvtive

Co-authored-by: Matt Kocubinski <mkocubinski@gmail.com>
Co-authored-by: Facundo Medica <14063057+facundomedica@users.noreply.github.com>
2022-11-24 00:15:41 +01:00
Marko 7e69187e24 extra check (#13846) 2022-11-12 21:09:06 +00:00
Matt KocubinskiandJeancarlo Barrios d66b7fa189 feat: Settable PrepareProposal handler (#13831)
Co-authored-by: Jeancarlo Barrios <JeancarloBarrios@users.noreply.github.com>
2022-11-11 11:57:53 -06:00
Matt Kocubinski 61effe8260 feat: ABCI 1.0 baseapp integration (#13453) 2022-11-09 09:50:27 -06:00
Matt KocubinskiandJeancarlo 2418c3ef2e feat: nonce (sequence number) based mempool (#13645)
simple default mempool implementation

Co-authored-by: Jeancarlo <jeancarlobarrios@gmail.com>
2022-10-26 09:04:34 -05:00
MarkoandJulien Robert 04db139e8a chore: move pruning to store (#13609)
* move pruning to store

* add changelog entry

Co-authored-by: Julien Robert <julien@rbrt.fr>
2022-10-24 14:02:17 +02:00
15accd76fc feat: support alternative query multistore (#13529)
* support customize query multistore

* Update CHANGELOG.md

* fix test

* Update baseapp/abci.go

Co-authored-by: Aleksandr Bezobchuk <alexanderbez@users.noreply.github.com>

* Update baseapp/baseapp.go

Co-authored-by: Aleksandr Bezobchuk <alexanderbez@users.noreply.github.com>

* Update baseapp/options.go

Co-authored-by: Aleksandr Bezobchuk <alexanderbez@users.noreply.github.com>

* Apply suggestions from code review

Co-authored-by: Marko <marbar3778@yahoo.com>
Co-authored-by: Aleksandr Bezobchuk <alexanderbez@users.noreply.github.com>
2022-10-17 23:40:28 +08:00
Julien Robert 3c9b244f62 refactor: automate EventTypeMessage inclusion in every message execution (#13532) 2022-10-16 19:00:34 -04:00
Tyler 81d033e701 perf(x/auth): only check memo when memo is present (#13528) 2022-10-13 19:49:11 +00:00
Aaron Craelius f3a558c6b4 refactor!: require exported app wiring providers (#13292) 2022-10-10 20:27:44 +00:00
Marko 306a9a7170 feat!: consensus module (#12905) 2022-10-05 18:06:24 +00:00
Aleksandr Bezobchuk eb32125f8e chore: improve ABCI 1.0 godocs (#13425) 2022-09-30 10:30:15 +00:00
yihuang a9f02d9cb7 fix: add gRPC nil/zero check in query (#13352) 2022-09-29 01:20:03 +00:00
mmsqe dcb0c9c04c fix: double close (#13400) 2022-09-27 18:16:13 +00:00
Julien Robert 684ee627d1 fix: attempt at fixing flaky e2e tests (#13401)
* fix: attempt at fixing flaky e2e tests

* `make format`

* add links
2022-09-27 13:39:04 -04:00
adu-crypto b60910535a add notice for possible iavl fast node migration (#13390) 2022-09-26 23:26:35 +00:00
Emmanuel T Odeke abdf61e292 fix: all: remove map iteration non-determinism with keys + sorting (#13377) 2022-09-24 16:20:54 +00:00
Marko 412e2fc86e feat: configurable fastnode (#13321) 2022-09-20 08:49:18 +00:00
yihuang 822900b69f fix: streaming listeners are not called for deliver tx event (#13334)
* Problem: streaming listeners are not called for deliver tx event

it was removed accidentally, add back.

* Update CHANGELOG.md

* try to fix e2e test by wait for one more block
2022-09-20 10:02:59 +02:00
Matt Kocubinski b96bed5534 feat: add mempool interfaces (#13249)
* working out interfaces

* integration to checkTx

* use struct fields directly in sz calculation

* fix typo

* nil guard on mempool

* Remove tx builder method

* impl with panic
2022-09-13 21:25:44 +02:00
Julien Robert 6d0ef15b0a refactor: migrate to cosmos/gogoproto (#13070) 2022-09-08 17:27:48 +00:00
Marko e09516f479 chore: bump tendermint version (#13148) 2022-09-05 07:39:12 +00:00
Marko ccdc355eea chore: remove query router (#13142) 2022-09-02 15:52:35 -04:00
Facundo MedicaandMarko 797bd12af5 refactor!: Remove sdk.Router and refactor baseapp tests (#13005)
* test

* progress-ish

* progress

* progress

* make mocks

* progress

* test

* progress

* progress

* progress

* progress

* progress

* progress

* fix mock tests

* progress

* pretty much done, might need some tidying up

* lint

* re-enable blockgas test

* remove router

* gofumpt

* remove more references of Router

* fix

* remove unused code

* remove unused code

Co-authored-by: Marko <marbar3778@yahoo.com>
2022-08-30 23:50:47 +02:00
yihuangandAleksandr Bezobchuk 51d2de582d fix: rollback command don't actually delete multistore versions (#11361)
* rollback command don't actually delete multistore versions

Closes: #11333

- add unit tests
- use LoadVersionForOverwriting
- update tendermint dependency to 0.35.x release branch

Co-authored-by: Aleksandr Bezobchuk <alexanderbez@users.noreply.github.com>

flushMetadata after rollback

Update server/rollback.go

Co-authored-by: Aleksandr Bezobchuk <alexanderbez@users.noreply.github.com>

fix build

gofumpt

* fix unit test
2022-08-30 05:50:00 +00:00
Julien Robert c73171fbd6 fix: missing return statement in BaseApp.Query (#13046)
## Description

Closes: #13040

---

### Author Checklist

*All items are required. Please add a note to the item if the item is not applicable and
please add links to any relevant follow up issues.*

I have...

- [ ] included the correct [type prefix](https://github.com/commitizen/conventional-commit-types/blob/v3.0.0/index.json) in the PR title
- [ ] added `!` to the type prefix if API or client breaking change
- [ ] targeted the correct branch (see [PR Targeting](https://github.com/cosmos/cosmos-sdk/blob/main/CONTRIBUTING.md#pr-targeting))
- [ ] provided a link to the relevant issue or specification
- [ ] followed the guidelines for [building modules](https://github.com/cosmos/cosmos-sdk/blob/main/docs/building-modules)
- [ ] included the necessary unit and integration [tests](https://github.com/cosmos/cosmos-sdk/blob/main/CONTRIBUTING.md#testing)
- [ ] added a changelog entry to `CHANGELOG.md`
- [ ] included comments for [documenting Go code](https://blog.golang.org/godoc)
- [ ] updated the relevant documentation or specification
- [ ] reviewed "Files changed" and left comments if necessary
- [ ] confirmed all CI checks have passed

### Reviewers Checklist

*All items are required. Please add a note if the item is not applicable and please add
your handle next to the items reviewed if you only reviewed selected items.*

I have...

- [ ] confirmed the correct [type prefix](https://github.com/commitizen/conventional-commit-types/blob/v3.0.0/index.json) in the PR title
- [ ] confirmed `!` in the type prefix if API or client breaking change
- [ ] confirmed all author checklist items have been addressed 
- [ ] reviewed state machine logic
- [ ] reviewed API design and naming
- [ ] reviewed documentation is accurate
- [ ] reviewed tests and test coverage
- [ ] manually tested (if applicable)
2022-08-25 15:54:50 +00:00
Julien Robert 1dee068932 chore: downgrade to tendermint v0.34.x (#12958) 2022-08-20 02:33:07 +02:00
0943a70215 chore: fix linting issues exposed by fixing golangci-lint (#12895)
Co-authored-by: Marko <marbar3778@yahoo.com>
Co-authored-by: Julien Robert <julien@rbrt.fr>
2022-08-11 22:00:24 +02:00
Matt Kocubinski 9f9553484b refactor: remove dependency on simapp from baseapp tests (#12543) 2022-07-13 00:17:00 +02:00
1815981b02 feat: deprecate x/params usage in x/auth (#12475)
* generate proto files

* wip

* wip: fix tests

* wip: add tests

* fix tests

* fix tests

* add changelog

* address review comments

* address review comments

* add err check for setparams

* updates

Co-authored-by: Aleksandr Bezobchuk <alexanderbez@users.noreply.github.com>
Co-authored-by: Aleksandr Bezobchuk <aleks.bezobchuk@gmail.com>
2022-07-11 19:16:27 +02:00
Robert Zaremba f70b67fc91 feat: add query telemetry (#12405)
Closes: #12333



---

### Author Checklist

*All items are required. Please add a note to the item if the item is not applicable and
please add links to any relevant follow up issues.*

I have...

- [ ] included the correct [type prefix](https://github.com/commitizen/conventional-commit-types/blob/v3.0.0/index.json) in the PR title
- [ ] added `!` to the type prefix if API or client breaking change
- [ ] targeted the correct branch (see [PR Targeting](https://github.com/cosmos/cosmos-sdk/blob/main/CONTRIBUTING.md#pr-targeting))
- [ ] provided a link to the relevant issue or specification
- [ ] followed the guidelines for [building modules](https://github.com/cosmos/cosmos-sdk/blob/main/docs/building-modules)
- [ ] included the necessary unit and integration [tests](https://github.com/cosmos/cosmos-sdk/blob/main/CONTRIBUTING.md#testing)
- [ ] added a changelog entry to `CHANGELOG.md`
- [ ] included comments for [documenting Go code](https://blog.golang.org/godoc)
- [ ] updated the relevant documentation or specification
- [ ] reviewed "Files changed" and left comments if necessary
- [ ] confirmed all CI checks have passed

### Reviewers Checklist

*All items are required. Please add a note if the item is not applicable and please add
your handle next to the items reviewed if you only reviewed selected items.*

I have...

- [ ] confirmed the correct [type prefix](https://github.com/commitizen/conventional-commit-types/blob/v3.0.0/index.json) in the PR title
- [ ] confirmed `!` in the type prefix if API or client breaking change
- [ ] confirmed all author checklist items have been addressed 
- [ ] reviewed state machine logic
- [ ] reviewed API design and naming
- [ ] reviewed documentation is accurate
- [ ] reviewed tests and test coverage
- [ ] manually tested (if applicable)
2022-07-05 23:25:35 +00:00
Julien RobertandJeancarloBarrios 77cf43009a feat: migrate x/crisis use app wiring (#12389)
Co-authored-by: JeancarloBarrios <jeancarlobarrios@users.noreply.github.com>
2022-06-30 17:57:19 +02:00
Julien Robert 91b1d83f13 feat!: migrate x/upgrade to use app wiring (#12312) 2022-06-22 13:05:40 +02:00