Skip to content

Commit

Permalink
Merge branch 'main' into randy/version-modifier
Browse files Browse the repository at this point in the history
  • Loading branch information
randygrok authored Sep 3, 2024
2 parents 5de8340 + 8431dbd commit 09bd7b0
Show file tree
Hide file tree
Showing 280 changed files with 5,924 additions and 2,766 deletions.
69 changes: 66 additions & 3 deletions .github/CODEOWNERS
Validating CODEOWNERS rules …
Original file line number Diff line number Diff line change
Expand Up @@ -2,12 +2,75 @@

# NOTE: Order is important; the last matching pattern takes the most precedence

# Primary repo maintainers
# Cosmos SDK Codeowners

* @cosmos/sdk-core-dev
# Core team as default owners

# CODEOWNERS for docs configuration
* @cosmos/sdk-core-dev

# Components

/baseapp/ @facundomedica @aaronc @testinginprod @kocubinski @cosmos/sdk-core-dev
/client/ @julienrbrt @JulianToledano @cosmos/sdk-core-dev
/client/v2/ @julienrbrt @JulianToledano @cosmos/sdk-core-dev
/collections/ @testinginprod @facundomedica @cosmos/sdk-core-dev
/core/ @cosmos/sdk-core-dev
/crypto/ @JulianToledano @raynaudoe @cosmos/sdk-core-dev
/depinject/ @aaronc @kocubinski @julienrbrt @cosmos/sdk-core-dev
/indexer/ @aaronc @cool-develope @cosmos/sdk-core-dev
/log/ @julienrbrt @sontrinh16 @cosmos/sdk-core-dev
/math/ @testinginprod @alpe @cosmos/sdk-core-dev
/orm/ @aaronc @testinginprod @lucaslopezf @cosmos/sdk-core-dev
/runtime/ @julienrbrt @hieuvubk @cosmos/sdk-core-dev
/runtime/v2/ @julienrbrt @hieuvubk @cosmos/sdk-core-dev
/schema/ @aaronc @testinginprod @cosmos/sdk-core-dev
/server/ @cosmos/sdk-core-dev
/server/v2/ @julienrbrt @hieuvubk @cosmos/sdk-core-dev
/server/v2/stf/ @testinginprod @kocubinski @cosmos/sdk-core-dev
/server/v2/appmanager/ @testinginprod @facundomedica @cosmos/sdk-core-dev
/server/v2/cometbft/ @facundomedica @sontrinh16 @cosmos/sdk-core-dev
/simapp/ @facundomedica @julienrbrt @cosmos/sdk-core-dev
/simapp/v2/ @kocubinski @julienrbrt @cosmos/sdk-core-dev
/store/ @cool-develope @kocubinski @cosmos/sdk-core-dev
/store/v2/ @cool-develope @kocubinski @cosmos/sdk-core-dev
/types/mempool/ @kocubinski @cosmos/sdk-core-dev
/tools/hubl @julienrbrt @JulianToledano @cosmos/sdk-core-dev
/tools/cosmovisor @julienrbrt @facundomedica @cosmos/sdk-core-dev
/tools/confix @julienrbrt @akhilkumarpilli @cosmos/sdk-core-dev

# x modules

/x/accounts/ @testinginprod @sontrinh16 @cosmos/sdk-core-dev
/x/auth/ @facundomedica @testinginprod @aaronc @cosmos/sdk-core-dev
/x/authz/ @akhilkumarpilli @raynaudoe @cosmos/sdk-core-dev
/x/bank/ @julienrbrt @sontrinh16 @cosmos/sdk-core-dev
/x/circuit/ @kocubinski @akhilkumarpilli @raynaudoe @cosmos/sdk-core-dev
/x/consensus/ @testinginprod @raynaudoe @cosmos/sdk-core-dev
/x/distribution/ @alpe @JulianToledano @cosmos/sdk-core-dev
/x/epochs/ @alpe @facundomedica @cosmos/sdk-core-dev
/x/evidence/ @alpe @akhilkumarpilli @cosmos/sdk-core-dev
/x/feegrant/ @cool-develope @alpe @cosmos/sdk-core-dev
/x/genutil/ @kocubinski @hieuvubk @julienrbrt @cosmos/sdk-core-dev
/x/gov/ @julienrbrt @sontrinh16 @cosmos/sdk-core-dev
/x/group/ @kocubinski @akhilkumarpilli @cosmos/sdk-core-dev
/x/mint/ @lucaslopezf @facundomedica @cosmos/sdk-core-dev
/x/nft/ @alpe @lucaslopezf @cosmos/sdk-core-dev
/x/params/ @cosmos/sdk-core-dev # deprecated so whole team
/x/protocolpool/ @facundomedica @hieuvubk @alpe @cosmos/sdk-core-dev
/x/simulation/ @cosmos/sdk-core-dev # deprecated so whole team
/x/slashing/ @testinginprod @raynaudoe @lucaslopezf @cosmos/sdk-core-dev
/x/staking/ @facundomedica @testinginprod @JulianToledano @ziscky @cosmos/sdk-core-dev
/x/tx/ @kocubinski @testinginprod @aaronc @cosmos/sdk-core-dev
/x/upgrade/ @facundomedica @cool-develope @akhilkumarpilli @lucaslopezf @cosmos/sdk-core-dev

# go mods

**/go.mod @cosmos/sdk-core-dev
**/go.sum @cosmos/sdk-core-dev

# docs configuration

/docs/ @cosmos/sdk-core-dev
/docs/docusaurus.config.js @julienrbrt @tac0turtle
/docs/sidebars.js @julienrbrt @tac0turtle
/docs/pre.sh @julienrbrt @tac0turtle
Expand Down
2 changes: 2 additions & 0 deletions .github/workflows/sims-nightly.yml
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,8 @@ jobs:
go-version: "1.23"
check-latest: true
- name: test-sim-multi-seed-long
env:
GOMEMLIMIT: 14GiB # reserve 2 GiB as buffer for GC to avoid OOM
run: |
make test-sim-multi-seed-long
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -605,7 +605,7 @@ jobs:
simdv2 start &
SIMD_PID=$!
cnt=0
while ! simdv2 query block --type=height 5; do
while ! simdv2 query comet block --type=height 5; do
cnt=$((cnt + 1))
if [ $cnt -gt 30 ]; then
kill -9 "$SIMD_PID"
Expand Down
1 change: 0 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -162,7 +162,6 @@ Every module contains its own CHANGELOG.md. Please refer to the module you are i
* (x/gov/testutil) [#17986](https://github.com/cosmos/cosmos-sdk/pull/18036) `MsgDeposit` has been removed because of AutoCLI migration.
* (x/staking/testutil) [#17986](https://github.com/cosmos/cosmos-sdk/pull/17986) `MsgRedelegateExec`, `MsgUnbondExec` has been removed because of AutoCLI migration.
* (x/group) [#17937](https://github.com/cosmos/cosmos-sdk/pull/17937) Groups module was moved to its own go.mod `cosmossdk.io/x/group`
* (x/slashing) [#18115](https://github.com/cosmos/cosmos-sdk/pull/18115) `NewValidatorSigningInfo` takes strings instead of `sdk.AccAddress`
* (x/gov) [#18197](https://github.com/cosmos/cosmos-sdk/pull/18197) Gov module was moved to its own go.mod `cosmossdk.io/x/gov`
* (x/distribution) [#18199](https://github.com/cosmos/cosmos-sdk/pull/18199) Distribution module was moved to its own go.mod `cosmossdk.io/x/distribution`
* (x/slashing) [#18201](https://github.com/cosmos/cosmos-sdk/pull/18201) Slashing module was moved to its own go.mod `cosmossdk.io/x/slashing`
Expand Down
99 changes: 98 additions & 1 deletion UPGRADING.md
Original file line number Diff line number Diff line change
Expand Up @@ -108,7 +108,104 @@ Additionally, thanks to the genesis simplification, as explained in [the genesis

##### GRPC-WEB

Grpc-web embedded client has been removed from the server. If you would like to use grpc-web, you can use the [envoy proxy](https://www.envoyproxy.io/docs/envoy/latest/start/start).
Grpc-web embedded client has been removed from the server. If you would like to use grpc-web, you can use the [envoy proxy](https://www.envoyproxy.io/docs/envoy/latest/start/start). Here's how to set it up:

<details>
<summary>Step by step guide</summary>

1. Install Envoy following the [official installation guide](https://www.envoyproxy.io/docs/envoy/latest/start/install).

2. Create an Envoy configuration file named `envoy.yaml` with the following content:

```yaml
static_resources:
listeners:
- name: listener_0
address:
socket_address: { address: 0.0.0.0, port_value: 8080 }
filter_chains:
- filters:
- name: envoy.filters.network.http_connection_manager
typed_config:
"@type": type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager
codec_type: auto
stat_prefix: ingress_http
route_config:
name: local_route
virtual_hosts:
- name: local_service
domains: ["*"]
routes:
- match: { prefix: "/" }
route:
cluster: grpc_service
timeout: 0s
max_stream_duration:
grpc_timeout_header_max: 0s
cors:
allow_origin_string_match:
- prefix: "*"
allow_methods: GET, PUT, DELETE, POST, OPTIONS
allow_headers: keep-alive,user-agent,cache-control,content-type,content-transfer-encoding,custom-header-1,x-accept-content-transfer-encoding,x-accept-response-streaming,x-user-agent,x-grpc-web,grpc-timeout
max_age: "1728000"
expose_headers: custom-header-1,grpc-status,grpc-message
http_filters:
- name: envoy.filters.http.grpc_web
typed_config:
"@type": type.googleapis.com/envoy.extensions.filters.http.grpc_web.v3.GrpcWeb
- name: envoy.filters.http.cors
typed_config:
"@type": type.googleapis.com/envoy.extensions.filters.http.cors.v3.Cors
- name: envoy.filters.http.router
typed_config:
"@type": type.googleapis.com/envoy.extensions.filters.http.router.v3.Router
clusters:
- name: grpc_service
connect_timeout: 0.25s
type: logical_dns
http2_protocol_options: {}
lb_policy: round_robin
load_assignment:
cluster_name: cluster_0
endpoints:
- lb_endpoints:
- endpoint:
address:
socket_address:
address: 0.0.0.0
port_value: 9090
```

This configuration tells Envoy to listen on port 8080 and forward requests to your gRPC service on port 9090. Note that this configuration is a starting point and can be modified according to your specific needs and preferences. You may need to adjust ports, addresses, or add additional settings based on your particular setup and requirements.

3. Start your Cosmos SDK application, ensuring it's configured to serve gRPC on port 9090.

4. Start Envoy with the configuration file:

```bash
envoy -c envoy.yaml
```

5. If Envoy starts successfully, you should see output similar to this:

```bash
[2024-08-29 10:47:08.753][6281320][info][config] [source/common/listener_manager/listener_manager_impl.cc:930] all dependencies initialized. starting workers
[2024-08-29 10:47:08.754][6281320][info][main] [source/server/server.cc:978] starting main dispatch loop
```

This indicates that Envoy has started and is ready to proxy requests.

6. Update your client applications to connect to Envoy (http://localhost:8080 by default).

</details>

By following these steps, Envoy will handle the translation between gRPC-Web and gRPC, allowing your existing gRPC-Web clients to continue functioning without modifications to your Cosmos SDK application.

To test the setup, you can use a tool like [grpcurl](https://github.com/fullstorydev/grpcurl). For example:

```bash
grpcurl -plaintext localhost:8080 cosmos.base.tendermint.v1beta1.Service/GetLatestBlock
```

##### AnteHandlers

Expand Down
Loading

0 comments on commit 09bd7b0

Please sign in to comment.