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