You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: content/en/blog/releases/Kitex/release-v0_15_1.md
+101Lines changed: 101 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -62,6 +62,107 @@ Kitex will ensure compatibility with normal usage patterns of internal users. Ho
62
62
63
63
This version has made minor adjustments to non-standard usage of `remote.Message`, `rpcinfo.RPCInfo` or `generic.Generic` interfaces. If there are special usages, they need to be adjusted to conform to the new version's interface definition.
64
64
65
+
1.`rpcinfo.RPCInfo().Invocation()` added `MethodInfo()` method, returning MethodInfo for the current RPC:
66
+
```diff
67
+
commit 62979e4b95e5a5ed73d0bfd9e218cfc61c5ce253
68
+
type Invocation interface {
69
+
PackageName() string
70
+
ServiceName() string
71
+
MethodName() string
72
+
+ MethodInfo() serviceinfo.MethodInfo
73
+
StreamingMode() serviceinfo.StreamingMode
74
+
SeqID() int32
75
+
BizStatusErr() kerrors.BizStatusErrorIface
76
+
}
77
+
```
78
+
79
+
2.`remote.Message` interface removed some redundant interfaces:
80
+
```diff
81
+
// Message is the core abstraction for Kitex message.
- // MessageReaderWriter returns reader and writer
121
+
- // this is used for generic which needs IDL
122
+
- MessageReaderWriter() interface{}
123
+
+ // GetExtra returns extra info by key
124
+
+ GetExtra(key string) interface{}
125
+
}
126
+
```
127
+
- The `PayloadCodec()` interface was completely removed. This adjustment was made because, after Kitex generic interface supported the multi-service feature, it no longer relies on hijacking PayloadCodec to inject the generic codec; instead, it's implemented by hijacking Args/Results structs. Currently, only `generic.BinaryThriftGeneric()` relies on the old method, but this interface has been marked as deprecated. Please migrate to using `generic.BinaryThriftGenericV2()`, refer to [Generic Call User Guide](/docs/kitex/tutorials/advanced-feature/generic-call/basic_usage).
128
+
-`Framed() bool` is a deprecated interface because Kitex has defaulted to framed mode for clients since v0.13.*.
129
+
-`MessageReaderWriter` and `GetMethod` interfaces are merged into a unified `GenericMethod()` interface. The new unified interface returns a closure function that accepts context and method name as arguments and returns the corresponding method info. This method info includes the hijacked Args/Results parameters, thus implementing different types of generic call codec logic.
0 commit comments