Skip to content

Commit

Permalink
Merge branch 'main' into julien/fix-iavl-nil
Browse files Browse the repository at this point in the history
  • Loading branch information
julienrbrt authored Dec 20, 2024
2 parents 2379d4b + 5856fb6 commit 86b5ea1
Show file tree
Hide file tree
Showing 15 changed files with 206 additions and 57 deletions.
18 changes: 9 additions & 9 deletions runtime/v2/go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -2,22 +2,22 @@ module cosmossdk.io/runtime/v2

go 1.23

// server v2 integration
replace (
cosmossdk.io/server/v2/appmanager => ../../server/v2/appmanager
cosmossdk.io/server/v2/stf => ../../server/v2/stf
cosmossdk.io/store/v2 => ../../store/v2
)
// server v2 integration (uncomment during development, but comment before release)
// replace (
// cosmossdk.io/server/v2/appmanager => ../../server/v2/appmanager
// cosmossdk.io/server/v2/stf => ../../server/v2/stf
// cosmossdk.io/store/v2 => ../../store/v2
// )

require (
cosmossdk.io/api v0.8.0-rc.1
cosmossdk.io/core v1.0.0-alpha.6
cosmossdk.io/depinject v1.1.0
cosmossdk.io/log v1.5.0
cosmossdk.io/schema v1.0.0
cosmossdk.io/server/v2/appmanager v0.0.0-00010101000000-000000000000
cosmossdk.io/server/v2/stf v0.0.0-00010101000000-000000000000
cosmossdk.io/store/v2 v2.0.0-00010101000000-000000000000
cosmossdk.io/server/v2/appmanager v1.0.0-beta.1
cosmossdk.io/server/v2/stf v1.0.0-beta.1
cosmossdk.io/store/v2 v2.0.0-beta.1
cosmossdk.io/x/tx v1.0.0-alpha.3
github.com/cosmos/gogoproto v1.7.0
github.com/stretchr/testify v1.10.0
Expand Down
6 changes: 6 additions & 0 deletions runtime/v2/go.sum
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,12 @@ cosmossdk.io/log v1.5.0 h1:dVdzPJW9kMrnAYyMf1duqacoidB9uZIl+7c6z0mnq0g=
cosmossdk.io/log v1.5.0/go.mod h1:Tr46PUJjiUthlwQ+hxYtUtPn4D/oCZXAkYevBeh5+FI=
cosmossdk.io/schema v1.0.0 h1:/diH4XJjpV1JQwuIozwr+A4uFuuwanFdnw2kKeiXwwQ=
cosmossdk.io/schema v1.0.0/go.mod h1:RDAhxIeNB4bYqAlF4NBJwRrgtnciMcyyg0DOKnhNZQQ=
cosmossdk.io/server/v2/appmanager v1.0.0-beta.1 h1:EISWki+z9SDAt3OJnUl2y5Ow4qjOb+epYjLb1C7CN/E=
cosmossdk.io/server/v2/appmanager v1.0.0-beta.1/go.mod h1:RVYxIaEdIT10nWSRqbwKDLFWfvCVx+cwAorCyPAQg9A=
cosmossdk.io/server/v2/stf v1.0.0-beta.1 h1:s+nRgjhKVC08/qpr51eFVodLhyyQ9ASvJBanLBfQVNI=
cosmossdk.io/server/v2/stf v1.0.0-beta.1/go.mod h1:nfjihbofEF2GGadkYSFmgy5tqrAnSrmGcXUDZmmWyi8=
cosmossdk.io/store/v2 v2.0.0-beta.1 h1:p1fdZ9uNijhpXZXdqs0QS6NmXNDVPNyT4DHV4yQnF64=
cosmossdk.io/store/v2 v2.0.0-beta.1/go.mod h1:qHQmf/9mnsXwo/Ypp2u2Zs6BmkYcx1R/Jrpyn9Ro13A=
cosmossdk.io/x/tx v1.0.0-alpha.3 h1:+55/JFH5QRqnFhOI2heH3DKsaNL0RpXcJOQNzUvHiaQ=
cosmossdk.io/x/tx v1.0.0-alpha.3/go.mod h1:h4pQ/j6Gfu8goB1R3Jbl4qY4RjYVNAsoylcleTXdSRg=
github.com/DataDog/datadog-go v3.2.0+incompatible/go.mod h1:LButxg5PwREeZtORoXG3tL4fMGNddJ+vMq1mwgfaqoQ=
Expand Down
27 changes: 27 additions & 0 deletions server/v2/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
<!--
Guiding Principles:
Changelogs are for humans, not machines.
There should be an entry for every single version.
The same types of changes should be grouped.
Versions and sections should be linkable.
The latest version comes first.
The release date of each version is displayed.
Mention whether you follow Semantic Versioning.
Usage:
Change log entries are to be added to the Unreleased section from newest to oldest.
Each entry must include the Github issue reference in the following format:
* [#<issue-number>] Changelog message.
-->

# Changelog

## [Unreleased]

## [v2.0.0-beta.1](https://github.com/cosmos/cosmos-sdk/releases/tag/server/v2.0.0-beta.1)

Initial tag of `cosmossdk.io/server/v2`.
17 changes: 17 additions & 0 deletions server/v2/api/telemetry/config.go
Original file line number Diff line number Diff line change
Expand Up @@ -59,3 +59,20 @@ type Config struct {
// Datadog. Only utilized if MetricsSink is set to "dogstatsd".
DatadogHostname string `mapstructure:"datadog-hostname" toml:"data-dog-hostname" comment:"DatadogHostname defines the hostname to use when emitting metrics to Datadog. Only utilized if MetricsSink is set to \"dogstatsd\"."`
}

// CfgOption is a function that allows to overwrite the default server configuration.
type CfgOption func(*Config)

// OverwriteDefaultConfig overwrites the default config with the new config.
func OverwriteDefaultConfig(newCfg *Config) CfgOption {
return func(cfg *Config) {
*cfg = *newCfg
}
}

// Disable the telemetry server by default (default enabled).
func Disable() CfgOption {
return func(cfg *Config) {
cfg.Enable = false
}
}
29 changes: 23 additions & 6 deletions server/v2/api/telemetry/server.go
Original file line number Diff line number Diff line change
Expand Up @@ -21,14 +21,15 @@ var (
const ServerName = "telemetry"

type Server[T transaction.Tx] struct {
logger log.Logger
config *Config
server *http.Server
metrics *Metrics
logger log.Logger
config *Config
cfgOptions []CfgOption
server *http.Server
metrics *Metrics
}

// New creates a new telemetry server.
func New[T transaction.Tx](cfg server.ConfigMap, logger log.Logger, enableTelemetry func()) (*Server[T], error) {
func New[T transaction.Tx](cfg server.ConfigMap, logger log.Logger, enableTelemetry func(), cfgOptions ...CfgOption) (*Server[T], error) {
srv := &Server[T]{}
serverCfg := srv.Config().(*Config)
if len(cfg) > 0 {
Expand All @@ -37,6 +38,7 @@ func New[T transaction.Tx](cfg server.ConfigMap, logger log.Logger, enableTeleme
}
}
srv.config = serverCfg
srv.cfgOptions = cfgOptions
srv.logger = logger.With(log.ModuleKey, srv.Name())

if enableTelemetry == nil {
Expand Down Expand Up @@ -66,14 +68,29 @@ func New[T transaction.Tx](cfg server.ConfigMap, logger log.Logger, enableTeleme
return srv, nil
}

// NewWithConfigOptions creates a new telemetry server with the provided config options.
// It is *not* a fully functional server (since it has been created without dependencies)
// The returned server should only be used to get and set configuration.
func NewWithConfigOptions[T transaction.Tx](opts ...CfgOption) *Server[T] {
return &Server[T]{
cfgOptions: opts,
}
}

// Name returns the server name.
func (s *Server[T]) Name() string {
return ServerName
}

func (s *Server[T]) Config() any {
if s.config == nil || s.config.Address == "" {
return DefaultConfig()
cfg := DefaultConfig()
// overwrite the default config with the provided options
for _, opt := range s.cfgOptions {
opt(cfg)
}

return cfg
}

return s.config
Expand Down
27 changes: 27 additions & 0 deletions server/v2/appmanager/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
<!--
Guiding Principles:
Changelogs are for humans, not machines.
There should be an entry for every single version.
The same types of changes should be grouped.
Versions and sections should be linkable.
The latest version comes first.
The release date of each version is displayed.
Mention whether you follow Semantic Versioning.
Usage:
Change log entries are to be added to the Unreleased section from newest to oldest.
Each entry must include the Github issue reference in the following format:
* [#<issue-number>] Changelog message.
-->

# Changelog

## [Unreleased]

## [v1.0.0-beta.1](https://github.com/cosmos/cosmos-sdk/releases/tag/server/v2/appmanager%2Fv1.0.0-beta.1)

Initial tag of `cosmossdk.io/server/v2/appmanager`.
27 changes: 27 additions & 0 deletions server/v2/cometbft/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
<!--
Guiding Principles:
Changelogs are for humans, not machines.
There should be an entry for every single version.
The same types of changes should be grouped.
Versions and sections should be linkable.
The latest version comes first.
The release date of each version is displayed.
Mention whether you follow Semantic Versioning.
Usage:
Change log entries are to be added to the Unreleased section from newest to oldest.
Each entry must include the Github issue reference in the following format:
* [#<issue-number>] Changelog message.
-->

# Changelog

## [Unreleased]

## [v1.0.0-beta.1](https://github.com/cosmos/cosmos-sdk/releases/tag/server/v2/cometbft%2Fv1.0.0-beta.1)

Initial tag of `cosmossdk.io/server/v2/cometbft`.
8 changes: 4 additions & 4 deletions server/v2/cometbft/go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -21,10 +21,10 @@ require (
cosmossdk.io/errors/v2 v2.0.0
cosmossdk.io/log v1.5.0
cosmossdk.io/schema v1.0.0
cosmossdk.io/server/v2 v2.0.0-00010101000000-000000000000
cosmossdk.io/server/v2/appmanager v0.0.0-20240802110823-cffeedff643d
cosmossdk.io/server/v2/stf v0.0.0-20240708142107-25e99c54bac1
cosmossdk.io/store/v2 v2.0.0-00010101000000-000000000000
cosmossdk.io/server/v2 v2.0.0-beta.1
cosmossdk.io/server/v2/appmanager v1.0.0-beta.1
cosmossdk.io/server/v2/stf v1.0.0-beta.1
cosmossdk.io/store/v2 v2.0.0-beta.1
cosmossdk.io/x/consensus v0.0.0-00010101000000-000000000000
github.com/cometbft/cometbft v1.0.0
github.com/cometbft/cometbft/api v1.0.0
Expand Down
15 changes: 7 additions & 8 deletions server/v2/go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -2,20 +2,19 @@ module cosmossdk.io/server/v2

go 1.23

replace (
cosmossdk.io/server/v2/appmanager => ./appmanager
cosmossdk.io/server/v2/stf => ./stf
cosmossdk.io/store/v2 => ../../store/v2
cosmossdk.io/store/v2/db => ../../store/v2/db
)
// server v2 integration (uncomment during development, but comment before release)
// replace (
// cosmossdk.io/server/v2/appmanager => ./appmanager
// cosmossdk.io/store/v2 => ../../store/v2
// )

require (
cosmossdk.io/api v0.8.0-rc.1
cosmossdk.io/core v1.0.0-alpha.6
cosmossdk.io/core/testing v0.0.1
cosmossdk.io/log v1.5.0
cosmossdk.io/server/v2/appmanager v0.0.0-00010101000000-000000000000
cosmossdk.io/store/v2 v2.0.0-00010101000000-000000000000
cosmossdk.io/server/v2/appmanager v1.0.0-beta.1
cosmossdk.io/store/v2 v2.0.0-beta.1
github.com/cosmos/cosmos-proto v1.0.0-beta.5
github.com/cosmos/gogogateway v1.2.0
github.com/cosmos/gogoproto v1.7.0
Expand Down
4 changes: 4 additions & 0 deletions server/v2/go.sum
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,10 @@ cosmossdk.io/log v1.5.0 h1:dVdzPJW9kMrnAYyMf1duqacoidB9uZIl+7c6z0mnq0g=
cosmossdk.io/log v1.5.0/go.mod h1:Tr46PUJjiUthlwQ+hxYtUtPn4D/oCZXAkYevBeh5+FI=
cosmossdk.io/schema v1.0.0 h1:/diH4XJjpV1JQwuIozwr+A4uFuuwanFdnw2kKeiXwwQ=
cosmossdk.io/schema v1.0.0/go.mod h1:RDAhxIeNB4bYqAlF4NBJwRrgtnciMcyyg0DOKnhNZQQ=
cosmossdk.io/server/v2/appmanager v1.0.0-beta.1 h1:EISWki+z9SDAt3OJnUl2y5Ow4qjOb+epYjLb1C7CN/E=
cosmossdk.io/server/v2/appmanager v1.0.0-beta.1/go.mod h1:RVYxIaEdIT10nWSRqbwKDLFWfvCVx+cwAorCyPAQg9A=
cosmossdk.io/store/v2 v2.0.0-beta.1 h1:p1fdZ9uNijhpXZXdqs0QS6NmXNDVPNyT4DHV4yQnF64=
cosmossdk.io/store/v2 v2.0.0-beta.1/go.mod h1:qHQmf/9mnsXwo/Ypp2u2Zs6BmkYcx1R/Jrpyn9Ro13A=
github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU=
github.com/DataDog/datadog-go v3.2.0+incompatible/go.mod h1:LButxg5PwREeZtORoXG3tL4fMGNddJ+vMq1mwgfaqoQ=
github.com/DataDog/datadog-go v4.8.3+incompatible h1:fNGaYSuObuQb5nzeTQqowRAd9bpDIRRV4/gUtIBjh8Q=
Expand Down
27 changes: 27 additions & 0 deletions server/v2/stf/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
<!--
Guiding Principles:
Changelogs are for humans, not machines.
There should be an entry for every single version.
The same types of changes should be grouped.
Versions and sections should be linkable.
The latest version comes first.
The release date of each version is displayed.
Mention whether you follow Semantic Versioning.
Usage:
Change log entries are to be added to the Unreleased section from newest to oldest.
Each entry must include the Github issue reference in the following format:
* [#<issue-number>] Changelog message.
-->

# Changelog

## [Unreleased]

## [v1.0.0-beta.1](https://github.com/cosmos/cosmos-sdk/releases/tag/server/v2/stf%2Fv1.0.0-beta.1)

Initial tag of `cosmossdk.io/server/v2/stf`.
21 changes: 9 additions & 12 deletions simapp/v2/go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -7,14 +7,19 @@ require (
cosmossdk.io/client/v2 v2.0.0-beta.6
cosmossdk.io/core v1.0.0-alpha.6
cosmossdk.io/depinject v1.1.0
cosmossdk.io/indexer/postgres v0.1.0
cosmossdk.io/log v1.5.0
cosmossdk.io/math v1.4.0
cosmossdk.io/runtime/v2 v2.0.0-00010101000000-000000000000
cosmossdk.io/server/v2 v2.0.0-20240718121635-a877e3e8048a
cosmossdk.io/server/v2 v2.0.0-beta.1
cosmossdk.io/server/v2/cometbft v0.0.0-20241015140036-ee3d320eaa55
cosmossdk.io/store/v2 v2.0.0
cosmossdk.io/tools/benchmark v0.0.0-00010101000000-000000000000
cosmossdk.io/tools/confix v0.0.0-00010101000000-000000000000
cosmossdk.io/x/accounts v0.0.0-20240913065641-0064ccbce64e
cosmossdk.io/x/accounts/defaults/base v0.0.0-00010101000000-000000000000
cosmossdk.io/x/accounts/defaults/lockup v0.0.0-00010101000000-000000000000
cosmossdk.io/x/accounts/defaults/multisig v0.0.0-00010101000000-000000000000
cosmossdk.io/x/authz v0.0.0-00010101000000-000000000000
cosmossdk.io/x/bank v0.0.0-20240226161501-23359a0b6d91
cosmossdk.io/x/circuit v0.0.0-20230613133644-0a778132a60f
Expand All @@ -34,6 +39,7 @@ require (
github.com/cometbft/cometbft v1.0.0
// this version is not used as it is always replaced by the latest Cosmos SDK version
github.com/cosmos/cosmos-sdk v0.53.0
github.com/jackc/pgx/v5 v5.7.1
github.com/spf13/cast v1.7.1 // indirect
github.com/spf13/cobra v1.8.1
github.com/spf13/pflag v1.0.5
Expand All @@ -42,15 +48,6 @@ require (
google.golang.org/protobuf v1.36.0
)

require (
cosmossdk.io/indexer/postgres v0.1.0
cosmossdk.io/tools/benchmark v0.0.0-00010101000000-000000000000
cosmossdk.io/x/accounts/defaults/base v0.0.0-00010101000000-000000000000
cosmossdk.io/x/accounts/defaults/lockup v0.0.0-00010101000000-000000000000
cosmossdk.io/x/accounts/defaults/multisig v0.0.0-00010101000000-000000000000
github.com/jackc/pgx/v5 v5.7.1
)

require (
buf.build/gen/go/cometbft/cometbft/protocolbuffers/go v1.36.0-20241120201313-68e42a58b301.1 // indirect
buf.build/gen/go/cosmos/gogo-proto/protocolbuffers/go v1.36.0-20240130113600-88ef6483f90f.1 // indirect
Expand All @@ -65,8 +62,8 @@ require (
cosmossdk.io/errors v1.0.1 // indirect
cosmossdk.io/errors/v2 v2.0.0 // indirect
cosmossdk.io/schema v1.0.0 // indirect
cosmossdk.io/server/v2/appmanager v0.0.0-20240802110823-cffeedff643d // indirect
cosmossdk.io/server/v2/stf v0.0.0-20240708142107-25e99c54bac1 // indirect
cosmossdk.io/server/v2/appmanager v1.0.0-beta.1 // indirect
cosmossdk.io/server/v2/stf v1.0.0-beta.1 // indirect
cosmossdk.io/store v1.10.0-rc.1 // indirect
cosmossdk.io/x/tx v1.0.0-alpha.3 // indirect
filippo.io/edwards25519 v1.1.0 // indirect
Expand Down
Loading

0 comments on commit 86b5ea1

Please sign in to comment.