evmos.proto.autogen.py.cosmos.app.v1alpha1
Classes
|
Config represents the configuration for a Cosmos SDK ABCI app. |
|
GolangBinding is an explicit interface type to implementing type binding for dependency injection. |
|
MigrateFromInfo is information on a module version that a newer module can migrate from. |
|
ModuleConfig is a module configuration for an app. |
|
ModuleDescriptor describes an app module. |
|
PackageReference is a reference to a protobuf package used by a module. |
QueryConfigRequest is the Query/Config request type. |
|
|
QueryConfigRequest is the Query/Config response type. |
|
- class evmos.proto.autogen.py.cosmos.app.v1alpha1.Config(modules: ~typing.List[~evmos.proto.autogen.py.cosmos.app.v1alpha1.ModuleConfig] = <object object>, golang_bindings: ~typing.List[~evmos.proto.autogen.py.cosmos.app.v1alpha1.GolangBinding] = <object object>)[source]
Bases:
MessageConfig represents the configuration for a Cosmos SDK ABCI app. It is intended that all state machine logic including the version of baseapp and tx handlers (and possibly even Tendermint) that an app needs can be described in a config object. For compatibility, the framework should allow a mixture of declarative and imperative app wiring, however, apps that strive for the maximum ease of maintainability should be able to describe their state machine with a config object alone.
- golang_bindings: List[GolangBinding] = <object object>
golang_bindings specifies explicit interface to implementation type bindings which depinject uses to resolve interface inputs to provider functions. The scope of this field’s configuration is global (not module specific).
- modules: List[ModuleConfig] = <object object>
modules are the module configurations for the app.
- class evmos.proto.autogen.py.cosmos.app.v1alpha1.GolangBinding(interface_type: str = <object object>, implementation: str = <object object>)[source]
Bases:
MessageGolangBinding is an explicit interface type to implementing type binding for dependency injection.
- class evmos.proto.autogen.py.cosmos.app.v1alpha1.MigrateFromInfo(module: str = <object object>)[source]
Bases:
MessageMigrateFromInfo is information on a module version that a newer module can migrate from.
- class evmos.proto.autogen.py.cosmos.app.v1alpha1.ModuleConfig(name: str = <object object>, config: ~betterproto.lib.google.protobuf.Any = <object object>, golang_bindings: ~typing.List[~evmos.proto.autogen.py.cosmos.app.v1alpha1.GolangBinding] = <object object>)[source]
Bases:
MessageModuleConfig is a module configuration for an app.
- config: Any = <object object>
config is the config object for the module. Module config messages should define a ModuleDescriptor using the cosmos.app.v1alpha1.is_module extension.
- golang_bindings: List[GolangBinding] = <object object>
golang_bindings specifies explicit interface to implementation type bindings which depinject uses to resolve interface inputs to provider functions. The scope of this field’s configuration is module specific.
- name: str = <object object>
name is the unique name of the module within the app. It should be a name that persists between different versions of a module so that modules can be smoothly upgraded to new versions. For example, for the module cosmos.bank.module.v1.Module, we may chose to simply name the module “bank” in the app. When we upgrade to cosmos.bank.module.v2.Module, the app-specific name “bank” stays the same and the framework knows that the v2 module should receive all the same state that the v1 module had. Note: modules should provide info on which versions they can migrate from in the ModuleDescriptor.can_migration_from field.
- class evmos.proto.autogen.py.cosmos.app.v1alpha1.ModuleDescriptor(go_import: str = <object object>, use_package: ~typing.List[~evmos.proto.autogen.py.cosmos.app.v1alpha1.PackageReference] = <object object>, can_migrate_from: ~typing.List[~evmos.proto.autogen.py.cosmos.app.v1alpha1.MigrateFromInfo] = <object object>)[source]
Bases:
MessageModuleDescriptor describes an app module.
- can_migrate_from: List[MigrateFromInfo] = <object object>
can_migrate_from defines which module versions this module can migrate state from. The framework will check that one module version is able to migrate from a previous module version before attempting to update its config. It is assumed that modules can transitively migrate from earlier versions. For instance if v3 declares it can migrate from v2, and v2 declares it can migrate from v1, the framework knows how to migrate from v1 to v3, assuming all 3 module versions are registered at runtime.
- go_import: str = <object object>
go_import names the package that should be imported by an app to load the module in the runtime module registry. It is required to make debugging of configuration errors easier for users.
- use_package: List[PackageReference] = <object object>
use_package refers to a protobuf package that this module uses and exposes to the world. In an app, only one module should “use” or own a single protobuf package. It is assumed that the module uses all of the .proto files in a single package.
- class evmos.proto.autogen.py.cosmos.app.v1alpha1.PackageReference(name: str = <object object>, revision: int = <object object>)[source]
Bases:
MessagePackageReference is a reference to a protobuf package used by a module.
- revision: int = <object object>
revision is the optional revision of the package that is being used. Protobuf packages used in Cosmos should generally have a major version as the last part of the package name, ex. foo.bar.baz.v1. The revision of a package can be thought of as the minor version of a package which has additional backwards compatible definitions that weren’t present in a previous version. A package should indicate its revision with a source code comment above the package declaration in one of its files containing the text “Revision N” where N is an integer revision. All packages start at revision 0 the first time they are released in a module. When a new version of a module is released and items are added to existing .proto files, these definitions should contain comments of the form “Since: Revision N” where N is an integer revision. When the module runtime starts up, it will check the pinned proto image and panic if there are runtime protobuf definitions that are not in the pinned descriptor which do not have a “Since Revision N” comment or have a “Since Revision N” comment where N is <= to the revision specified here. This indicates that the protobuf files have been updated, but the pinned file descriptor hasn’t. If there are items in the pinned file descriptor with a revision greater than the value indicated here, this will also cause a panic as it may mean that the pinned descriptor for a legacy module has been improperly updated or that there is some other versioning discrepancy. Runtime protobuf definitions will also be checked for compatibility with pinned file descriptors to make sure there are no incompatible changes. This behavior ensures that: * pinned proto images are up-to-date * protobuf files are carefully annotated with revision comments which are important good client UX * protobuf files are changed in backwards and forwards compatible ways
- class evmos.proto.autogen.py.cosmos.app.v1alpha1.QueryBase[source]
Bases:
ServiceBase- async config(query_config_request: QueryConfigRequest) QueryConfigResponse[source]
- class evmos.proto.autogen.py.cosmos.app.v1alpha1.QueryConfigRequest[source]
Bases:
MessageQueryConfigRequest is the Query/Config request type.
- class evmos.proto.autogen.py.cosmos.app.v1alpha1.QueryConfigResponse(config: ~evmos.proto.autogen.py.cosmos.app.v1alpha1.Config = <object object>)[source]
Bases:
MessageQueryConfigRequest is the Query/Config response type.
- class evmos.proto.autogen.py.cosmos.app.v1alpha1.QueryStub(channel: Channel, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: Mapping[str, str | bytes] | Collection[Tuple[str, str | bytes]] | None = None)[source]
Bases:
ServiceStub- async config(query_config_request: QueryConfigRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) QueryConfigResponse[source]