cosmos-sdk/proto
Aaron Craelius 4de7d40010
feat(orm)!: add orm app wiring proto definitions (#11119)
## Description

This follows up on #11119 and adds app wiring proto definitions for the ORM. These would be used together with an app-wiring `cosmos.app.v1.module` option like so:

```proto
package foo.bar.my_module.v1;

message Module {
    option (cosmos.app.v1.module) = {
      go_import: "github.com/foo/bar/x/my_module"
    };
  
    option (cosmos.orm.v1alpha1.module_schema) = {
      schema_file: {
        id: 1
        path: "foo/bar/my_module/state.proto"
      }
      schema_file: {
        id: 2
        path: "foo/bar/my_module/memory.proto"
        storage_type: cosmos.orm.v1alpha1.STORAGE_TYPE_MEMORY
      }
    };
}
```

This supports various alternative storage types (memory, transient, etc.) which can be scoped to individual file descriptor schemas.

This PR also removes the `references` fields currently in `cosmos.orm.v1alpha`. I do think something like that should be supported, but I don't like having a field unsupported by the tooling when the documentation says otherwise.




---

### 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/master/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/master/docs/building-modules)
- [ ] included the necessary unit and integration [tests](https://github.com/cosmos/cosmos-sdk/blob/master/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-02-24 17:26:59 +00:00
..
cosmos feat(orm)!: add orm app wiring proto definitions (#11119) 2022-02-24 17:26:59 +00:00
tendermint feat: full api module building alongside gogo proto files with buf schema registry support (#10669) 2022-01-06 14:57:55 -05:00
README.md docs: Code blocks in SDK docs are broken (#11189) 2022-02-14 23:39:35 +01:00
buf.gen.gogo.yaml feat: full api module building alongside gogo proto files with buf schema registry support (#10669) 2022-01-06 14:57:55 -05:00
buf.gen.pulsar.yaml fix: messed up api proto-gen (#10902) 2022-01-11 07:36:56 +00:00
buf.lock feat: full api module building alongside gogo proto files with buf schema registry support (#10669) 2022-01-06 14:57:55 -05:00
buf.md docs: Improve markdownlint configuration (#11104) 2022-02-10 12:07:01 +00:00
buf.yaml feat: full api module building alongside gogo proto files with buf schema registry support (#10669) 2022-01-06 14:57:55 -05:00

README.md

Maintaining Cosmos SDK Proto Files

All of the Cosmos SDK proto files are defined here. This folder should be synced regularly with buf.build/cosmos/cosmos-sdk regularly by a maintainer by running buf push in this folder.

User facing documentation should not be placed here but instead goes in buf.md and in each protobuf package following the guidelines in https://docs.buf.build/bsr/documentation.