go-kratos/kratos
 Watch   
 Star   
 Fork   
2025-09-12 18:43:42
kratos

v2.9.1

Dependencies

  • deps: retract v2.9.0 (#3723)

Bug Fixes

  • fix(transport/http): resolve breaking change with ResponseTransporter interface (#3721)

Others

  • Revert "perf(transport/http): optimize URL construction with url.URL for bett…" (#3722)

New Contributors

Full Changelog: https://github.com/go-kratos/kratos/compare/v2.9.0...v2.9.1

2025-09-10 20:42:01
kratos

v2.9.0

Dependencies

  • deps(middleware): upgrade protovalidate to resolve compatibility issue (#3706)

New Features

  • feat(protoc-gen-go-http): mark deprecated methods in generated code (#3711)
  • feat: add MCP transport (#3646)

Bug Fixes

  • fix(encoding): extract all form fields even if some unsupported (#3694)
  • fix meta variable (#3712)
  • fix: honor shutdown timeout when provided context already canceled (#3695)
  • fix stale entries before the each pick operation (#3690)
  • fix: replace strconv.Itoa with strconv.FormatInt for int64 handling (#3667)
  • fix: solve have syntax error when execute make command. (#3682)
  • fix(internal/host): Extract optimizes the return of the minimum index IP (#3421)
  • fix: Fixed zookeeper watcher exiting the loop under exceptional conditions, causing service discovery to terminate (#3517)

Chores

  • chore: add deepwiki badge (#3701)

Others

  • perf(transport/http): optimize URL construction with url.URL for better performance (#3678)
  • perf(transport/http/binding): optimize EncodeURL performance for paths without placeholders (#3679)
  • refactor(all): replace atomic functions with atomic types (#3699)
  • contrib/register/nacos: refactor to use maps.Clone (#3703)
  • *: use net.JoinHostPort to improve IPv6 compatible (#3675)
  • perf(config/env): use strings.LastIndexByte instead of strings.LastIndex (#3660)
  • Add trendshift badge (#3655)
  • perf(metadata): simplify Metadata.Add by avoiding redundant strings.ToLower call (#3671)
  • Mcp options (#3652)
  • Revert "refactor: replace repeated error reasons with constants (#3612)" (#3651)
  • perf(config/env): use strings.Cut to optimize env load method (#3645)
  • add mcp middleware (#3649)
  • refactor(contrib/registry/etcd): use Namespace Name and ID as the unique keys (#3594)
  • go mod tidy (#3648)
  • build(deps): bump golang.org/x/net from 0.23.0 to 0.33.0 (#3527)
  • github: Remove submodule dependencies in Dependabot. (#3643)
  • perf(encoding/form): optimize camelCase and snakeCase conversion (#3592)
  • refactor: extract key for reuse and maintainability (#3602)

New Contributors

Full Changelog: https://github.com/go-kratos/kratos/compare/v2.8.4...v2.9.0

2025-03-08 00:19:52
kratos

v2.8.4

New Features

  • feat: disable grpc reflection configuration
  • feature(middleware/validate): migrate from PGV to protovalidate, since PGV has entered in maintenance (#3498)

Bug Fixes

  • fix: Improve server stop handling with graceful shutdowns (#3525)
  • fix(registry/consul): fix concurrency issues and improve performance (#3511)

Chores

  • chore: replace interface{} with any (#3557)

Others

  • optimize loops, when discover load is nil. (#3507)

New Contributors

Full Changelog: https://github.com/go-kratos/kratos/compare/v2.8.3...v2.8.4

2024-12-19 17:33:06
kratos

v2.8.3

New Features

  • feat(log): add Logger() method for Helper (#3443)

Bug Fixes

  • fix(registry): add timeout validation (#3492)
  • fix k8s headless service miss namespace (#3407)
  • fix: Return inner Logger from GetLogger for log.WithContext reuse (#3455)
  • fix: various typos (#3454)

Others

  • build(deps): bump golang.org/x/net in /contrib/opensergo (#3434)
  • build(deps): bump actions/setup-go from 5.0.2 to 5.1.0 (#3450)

New Contributors

Full Changelog: https://github.com/go-kratos/kratos/compare/v2.8.2...v2.8.3

2024-10-30 10:44:26
kratos

v2.8.2

New Features

  • feat: create build Group in changelog generate. (#3448)

Bug Fixes

  • fix: unit test Recycle watch resolver tick goroutine (#3449)
  • fix: resolve the issue of metrics and logging code default to zero (#3447)

Others

  • build(deps): bump golang.org/x/sync in /contrib/registry/zookeeper (#3387)

Full Changelog: https://github.com/go-kratos/kratos/compare/v2.8.1...v2.8.2

2024-10-14 20:46:17
kratos

v2.8.1

New Features

  • feat(middleware/metrics): make DefaultSecondsHistogram simply (#3385)
  • feat: adding stream interceptor for logging middleware (#3359)
  • feat(contrib/log/zap): If disable this level of logging entirely, avoid additional overhead (#3357)
  • feat(resolver/discovery): expose create watcher timeout error (#3392)

Bug Fixes

  • fix: fix errors reported by Lint CI. (#3435)
  • fix: add timeout configuration in grpc dial function (#3365)
  • fix: when entering idle mode, the old resolve-related resources have not been completely processed, and an exception occurs when exiting idle mode immediately. (#3402)
  • fix(registry/polaris): fix concurrent map iteration and map write #3361 (#3386)
  • fix: fixed typo (#3395)
  • fix: filter redundant endpoints invalid (#3373)

Chores

  • chore: upgrade golangci-lint version to v1.60.3 and fix lint (#3414)
  • chore: remove non-existent test methods (#2770)
  • chore: replace the DisableDebugLog method, which is marked as Deprecated, with the PrintDebugLog method in the discovery test (#3364)

Others

  • faet: add buf config for protoc-gen-go-errors (#3403)
  • perf: optimize the http.ContentType method (#3363)
  • build(deps): bump github/codeql-action from 2 to 3 (#3119)
  • build(deps): bump google.golang.org/protobuf in /cmd/protoc-gen-go-http (#3237)
  • build(deps): bump golang.org/x/net in /contrib/errortracker/sentry (#3288)
  • build(deps): bump golang.org/x/net in /contrib/registry/etcd (#3289)
  • build(deps): bump golang.org/x/net in /contrib/config/kubernetes (#3291)
  • build(deps): bump golang.org/x/net in /contrib/registry/kubernetes (#3290)
  • build(deps): bump golang.org/x/net in /contrib/log/aliyun (#3292)
  • build(deps): bump golang.org/x/net in /contrib/registry/polaris (#3294)
  • build(deps): bump actions/setup-go from 5.0.1 to 5.0.2 (#3362)

New Contributors

Full Changelog: https://github.com/go-kratos/kratos/compare/v2.8.0...v2.8.1

2024-07-22 20:00:02
kratos

v2.8.0

Breaking Changes

  • break(metrics): refactor kratos metrics with otel metrics (#3256)

New Features

  • feat: parsing config input and convert to match the type (#3306)

Bug Fixes

  • fix(contrib/registry/nacos): Abnormal blocking of the Subscribe and Next methods. (#3320)
  • fix(contrib/opensergo): incorrect conversion between integer types (#3309)
  • fix(contrib/polaris): incorrect conversion between integer types (#3300)
  • fix: com patile both map[kratos] and map.kratos for a map type in the query parameters (#3284)

Chores

  • chore(middleware/metrics): if requests and seconds are nil, return directly (#3298)

Others

  • chroe: chore update (#3367)
  • build(deps): bump golang.org/x/net from 0.19.0 to 0.23.0 (#3295)
  • build(deps): bump golang.org/x/net in /contrib/registry/servicecomb (#3285)
  • build(deps): bump golang.org/x/net in /contrib/config/etcd (#3293)
  • adds Set-Cookie method to the HTTP transport. (#3353)
  • build(deps): bump actions/setup-go from 5.0.0 to 5.0.1 (#3315)
  • build(deps): bump golangci/golangci-lint-action from 5 to 6 (#3340)
  • The issue that the response header is not assigned a value is fixed (#3327)
  • build(deps): bump golangci/golangci-lint-action from 4 to 5 (#3305)
  • faat(encoding/form): allow change the default form encoder and decoder tag name (#3328)
  • build(deps): bump github.com/aliyun/aliyun-log-go-sdk (#3332)
  • build(deps): bump golang.org/x/net in /contrib/polaris (#3296)
  • build(deps): bump Yikun/hub-mirror-action from 1.3 to 1.4 (#3307)
  • build(deps): bump google.golang.org/protobuf (#3238)
  • build(deps): bump github.com/aliyun/aliyun-log-go-sdk (#3270)
  • build(deps): bump golang.org/x/net in /contrib/opensergo (#3277)
  • build(deps): bump golang.org/x/sync in /contrib/registry/zookeeper (#3274)
  • dep: change library name of mergo #3149 (#3297)

New Contributors

Full Changelog: https://github.com/go-kratos/kratos/compare/v2.7.3...v2.8.0

2024-03-22 23:50:18
kratos

v2.7.3

New Features

  • feat(transport/http): add unwrap method for returning underlying response writer. #3253 (#3265)
  • feat: use writer directly in stdLogger. (#3121)
  • feat(log): Prevent log.Helper sprintf from running early #3209 (#3221)
  • feat(middleware): adding sentry as errortracker (#3122)
  • feat: add server option for NotFoundHandler and MethodNotAllowedHandler (#3131)
  • feat: improve node alg (#3015)

Bug Fixes

  • fix(encoding/form): Timestamp use local time and fix test wrong mock time zone (#3257)
  • fix(encoding/form): optimize EncodeField and add test cases (#3234)
  • fix: When grpc ends idle mode, it needs to continue to obtain the latest instance of the service (#3162)
  • fix: etcd registry lifecycle (#3180)
  • fix: logging middleware caller issue #3133 (#3134)
  • fix polaris registry bug: nodes is empty at startup (#3160)
  • fix: remove duplicate test codes. (#3187)
  • fix: use .MapKey to get key's FieldDescriptor (#3196)
  • fix(transport/http): no need to call EncodeURL twice (#3218)
  • fix(protoc-gen-go-http): return nil if err == nil。 (#3188)
  • fix: zap log print out multiple msg (#3171)
  • fix: test failed on other timezone.(#3181) (#3183)
  • fix: clear err after app stop err handling (#3146)
  • fix: fix consul heartbeat 404 error (#3147)
  • fix(encoding/form): time with the location set to local time (#2885)

Others

  • nacos stop cannot cancel subscription (#3173)
  • build(deps): bump golang.org/x/sync in /contrib/registry/zookeeper (#3150)
  • build(deps): bump github.com/prometheus/common (#3154)
  • build(deps): bump golang.org/x/net in /contrib/opensergo (#3155)
  • build(deps): bump actions/cache from 3 to 4 (#3158)
  • build(deps): bump golangci/golangci-lint-action from 3 to 4 (#3197)
  • build(lint): upgrade golangci/golangci-lint-action (#3235)
  • build(go): Add go version v1.22.x (#3236)
  • build(deps): bump github.com/go-resty/resty/v2 (#3151)

New Contributors

Full Changelog: https://github.com/go-kratos/kratos/compare/v2.7.2...v2.7.3

2023-12-07 13:34:06
kratos

v2.7.2

New Features

  • feat(config): config support custom merge config (#3106)

Bug Fixes

  • fix:polaris config watch (#3082)
  • fix: sctx cause request ctx canceled during graceful shutdown (#3097)
  • fix: apollo yaml watch (#3021)
  • fix(log): WithContext() changed the ctx field of the parent log.Filter (#3069)
  • fix: Kubernetes misspelling (#3075)

Others

  • build(deps): bump github.com/hashicorp/consul/api (#3080)
  • build(deps): bump google.golang.org/grpc in /contrib/config/polaris (#3055)
  • build(deps): bump google.golang.org/grpc from 1.56.1 to 1.56.3 (#3054)
  • build(deps): bump golang.org/x/net in /contrib/opensergo (#3100)
  • build(deps): bump github.com/emicklei/go-restful (#2933)
  • build(deps): bump google.golang.org/grpc in /contrib/registry/etcd (#3047)
  • build(deps): bump google.golang.org/grpc in /contrib/opensergo (#3048)
  • build(deps): bump google.golang.org/grpc in /contrib/config/etcd (#3046)
  • build(deps): bump google.golang.org/grpc in /contrib/polaris (#3053)
  • build(deps): bump github.com/prometheus/common (#3049)
  • build(deps): bump github.com/aliyun/aliyun-log-go-sdk (#3095)
  • golangci: check misspell (#3086)
  • update golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f to 0.1.0 (#2984)
  • Support adding headers to before calloption header (#3038)
  • build(deps): bump actions/checkout from 3 to 4 (#2982)
  • build(deps): bump github.com/vmihailenco/msgpack/v5 (#3065)
  • build(deps): bump go.etcd.io/etcd/client/v3 in /contrib/registry/etcd (#3066)
  • build(deps): bump github.com/aliyun/aliyun-log-go-sdk (#3079)
  • build(deps): bump go.etcd.io/etcd/client/v3 in /contrib/config/etcd (#3064)
  • build(deps): bump github.com/prometheus/client_golang (#3077)
  • build(deps): bump golang.org/x/sync in /contrib/registry/zookeeper (#3076)
  • build(deps): bump golang.org/x/net in /contrib/opensergo (#3078)
  • build(deps): bump actions/setup-go from 4.0.1 to 4.1.0 (#2949)
  • build(deps): bump github.com/hashicorp/consul/api (#3074)

New Contributors

Full Changelog: https://github.com/go-kratos/kratos/compare/v2.7.1...v2.7.2

2023-10-23 20:53:40
kratos

v2.7.1

contrib -> 6cdd81811e102620ec93b125ea6ed38f06a5e03c

Chores

  • chore: fix typo var name in shell (#2955)

Others

  • bugfix: fix map decode (#2979)
  • ci: support go version 1.21.x

New Contributors

Full Changelog: https://github.com/go-kratos/kratos/compare/v2.7.0...v2.7.1