Skip to content

Releases: cloudwego/kitex

v0.13.1

08 Apr 12:29
7dbbaca
Compare
Choose a tag to compare

Fix

[#1748] fix(tool): truncate fastpb files when using prutal
[#1747] fix(gRPC): task of cleaning up canceled streams in http2Client has a probability of deadlocking

v0.12.4

08 Apr 06:05
2a128be
Compare
Choose a tag to compare

Hotfix

[#1749] hotfix: task of cleaning up canceled streams in http2Client has a probability of deadlocking

v0.13.0

02 Apr 08:26
1dd7526
Compare
Choose a tag to compare

Feature

[#1719] feat: prutal for replacing protoc
[#1736] feat(ttstream): support WithRecvTimeout stream call option
[#1702] feat(gRPC): add grpc client conn dump to help debug the conn and stream status
[#1723] feat(codec/thrift): use fastcodec/frugal if apache codec not available
[#1724] feat: add tail option to support for delayed initialization of some client options

Optimize

[#1728] optimize(apache): remove apache codec gen and set default protocol from buffered to framed
[#1732] optimize(rpcinfo): purify the transport protocol of rpcinfo in a single rpc request
[#1711] optimize(tool): disable set validate and deep equal code gen to simplify kitex_gen
[#1717] optimize(gRPC): return more detailed error when received invalid http2 frame
Fix:
[#1734] fix(ttstream): adjust stream state transition and remove all SetFinalizer to avoid memory leak
[#1735] fix(generic): support both relative and absolute check for idl includes parse to make it compatible with generation tool
[#1725] fix: code gen import issue for streamx mode, stream call judgement bug and set ttheader streaming as default
[#1727] fix(tool): fix tool UseStdLib remains unexcepted lib issue.

Refactor

[#1658] refactor: streamx api to adapt both grpc and ttheader streaming protocol and provide more user-friendly interface
[#1729] refactor(tool): move pb tpl code to sep pkg

Chore

[#1743] chore: update dependencies version
[#1740] chore(generic): deprecate NewThriftContentProvider
[#1741] chore(streamx): remove redundant streamx package
[#1738] ci: fix typos & crate-ci/typos
[#1737] chore: update dependency and change go support to 1.19-1.24
[#1720] Revert "fix(ttstream): pingpong method refers to server interface defined in Kitex generation code when streamx is enabled and there are other streaming methods"

v0.12.3

27 Feb 03:37
3012782
Compare
Choose a tag to compare

Fix:

[#1713] fix(tool): Kitex Tool exits abnormally when -use is used
[#1712] fix(ttstream): pingpong method refers to server interface defined in Kitex generation code when streamx is enabled and there are other streaming methods

Chore:

[#1714] chore: upgrade cloudwego gopkg

v0.12.2

18 Feb 07:31
a53a472
Compare
Choose a tag to compare

Feature:

[#1640] feat(mw): MiddlewareBuilder can return nil
[#1701] feat: update dynamicgo to remove build constraits
[#1650] feat(gRPC): add monitor closeStreamTask for cancelled gRPC client stream
[#1653] feat: set crrst flag on response header to ensure kitex client won't reuse bad connections
[#1674] feat(tool): use go.mod for -module
[#1673] feat(generic): add an option to specify an IDL service name to be parsed
[#1661] feat(endpoint): MiddlewareBuilder can return nil

Optimize:

[#1696] optimize(tool): optimize fastcodec->frugal replacement
[#1681] optimize(exit): server graceful shutdown logic to avoid EOF when idle connections receive new requests after being closed

Fix:

[#1706] fix(gRPC): golang CI Linter failure on http2Client
[#1690] fix(kitexutil): check if address is nil when GetCallerAddress to prevent panic
[#1688] fix(tool): refer each ServiceInfo directly when -use and -tpl multiple_services are set
[#1698] fix(ttstream): pingpong method refers to server interface defined in Kitex generation code when streamx is enabled and there are other streaming methods
[#1693] fix(server): log recover result
[#1692] fix(tool): some bugfix for kitex tool
[#1666] fix(generic): fix codec to be updated even if there is an idl update
[#1677] fix(gRPC): ignore triggered actively connection error
[#1675] fix(tool): remove redundant dependency for streamx generation code
[#1672] fix(tool): fix kitex tool bugs
[#1659] fix(serviceinline): fix the issue of missing CtxEventBusKey and CtxEventQueueKey during server initialization in the service inline scenario
[#1655] fix: fix the issue which the server-side did not report failure after panic occurred during request processing

Refactor:

[#1680] refactor(tool): rm thriftgo dep from pkg generator
Tests:
[#1691] test(server): fix address already in use
[#1684] test: fix creating tmp dir in unit test
[#1676] test(streamx): fix streamx Recv timeout unit test
[#1671] test(streamx): fix streaming unit tests

Chore:

[#1704] ci: use flag for codecov
[#1700] Revert "fix(ttstream): pingpong method refers to server interface defined in Kitex generation code when streamx is enabled and there are other streaming methods"
[#1699] ci: uses codecov
[#1694] chore(generic): wait until server starts in tests
[#1683] ci: prepare for Windows X64 hosts
[#1643] perf(thrift): optimized skipdecoder for netpoll
[#1678] chore(tool): clearer log pkg usage
[#1667] chore: update deps and adjust dynamicgo's default option
[#1663] chore(tool): delete tool cmd excess err judgment

v0.12.1

03 Jan 07:46
d6f3824
Compare
Choose a tag to compare

Fix:

[#1648] fix(generic): binary generic server returning biz err failed
[#1649] fix(generic): Package information in idl missing when using protobuf generic streaming
[#1644] fix: server data race issue

v0.12.0

13 Dec 01:50
0f3df4d
Compare
Choose a tag to compare

Feature:

[#1541] feat(streamv2): support ttheader streaming
[#1623] feat(gRPC): optimize gRPC error prompt
[#1556] feat(gRPC): support gRPC graceful shutdown
[#1467] feat(generic): support thrift streaming for json generic client
[#1607] feat(tool): kitex tool support gen frugal codec for certain struct
[#1599] feat(tool): call FastWriteNocopy in FastWrite
[#1526] feat(generic): support an option to remove go.tag annotation
[#1536] feat(generic): support an option to set ParseMode for each client
[#1510] feat: register service with service level middleware

Optimize:

[#1635] optimize: add two function for binary protocol to get bufiox reader and writer
[#1630] optimize(tool): implement no recursive generate to support incremental update
[#1617] optimize(retry): optimize UpdatePolicy and add test cases to check invalid retry policy
[#1614] optimize: add ttheader codec api back to keep compatibility
[#1606] optimize(tool): use embedded thriftgo as default option
[#1595] optimize(tool): optimize pb tool code

Fix:

[#1636] fix(tool): fix tool hint
[#1633] fix(ttstream): call DoFinish with exception closing stream
[#1628] fix(client): rpctimeout would cause ctx panic
[#1622] fix(generic): use jsoniter instead of sonic
[#1562] fix: deep copy nil string
[#1602] fix(gRPC): check if the type assertion succeed in ProtocolMatch to avoid panic
[#1598] fix(retry): fix mixed retry update logic
[#1590] fix(generic): set default values for optional fields of primitive types with generic with dynamicgo
[#1580] fix(netpoll): timeout when calling Next
[#1574] fix(trace): stream event handler ignore io.EOF event
[#1572] fix(generic): fix a bug where default values are not set with dynamicgo
[#1563] fix(generic): fix a service search problem with CombineServices parse mode
[#1568] fix(wpool): no allocation and correct ctx
[#1558] fix(bthrift): convert unknown type recursively
[#1555] fix(generic): compatible with legacy code

Refactor:

[#1615] refactor: get rid of apache thrift in go.mod
[#1611] refactor: move ttheader codec logic to gopkg
[#1553] refactor(codec/thrift): unified typecodec & new file layout

Tests:

[#1593] test(server): speed up test time
[#1560] tests(limiter): fix unstable TestConnectionLimiter
[#1561] test: fix gRPC TestClientMix data race

Chore:

[#1634] chore: upgrade frugal
[#1632] chore: update cloudwego dependency versions
[#1581] perf(client): new rpctimeout impl
[#1627] chore(generic): expose generic streaming over gRPC
[#1619] chore(generic): restore proto Message back
[#1616] chore(generic): remove deprecated apis/interfaces/variables
[#1564] perf(circuitbreak): no allocation for MW
[#1567] perf(retry): minimum obj alloc for context
[#1573] chore: update localsession to v0.1.1
[#1557] perf(rpcinfo): rm lock for rpcStats
[#1559] ci: optimized run env and remove unused ci

v0.11.3 same with v0.11.2

11 Sep 09:05
Compare
Choose a tag to compare

version v0.11.3 is a patch from v0.11.2 for updating version.go to fix version mismatched issue #1542

v0.11.2

11 Sep 02:52
c5acf5e
Compare
Choose a tag to compare

Hotfix

[#1539] hotfix: upgrade cloudwego/gopkg to fix WriteBinaryNocopy

v0.11.1

11 Sep 02:35
240f4ab
Compare
Choose a tag to compare

Deprecated: tag on wrong branch