Skip to content

Commit 8531f0e

Browse files
committed
Update grpc-common onto 0.10.1
1 parent e5b327f commit 8531f0e

File tree

24 files changed

+2857
-404
lines changed

24 files changed

+2857
-404
lines changed

cinterop-c/MODULE.bazel.lock

Lines changed: 6 additions & 36 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

compiler-plugin/compiler-plugin-backend/src/main/kotlin/kotlinx/rpc/codegen/extension/RpcStubGenerator.kt

Lines changed: 30 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -21,13 +21,19 @@ import org.jetbrains.kotlin.ir.builders.declarations.addProperty
2121
import org.jetbrains.kotlin.ir.builders.declarations.addValueParameter
2222
import org.jetbrains.kotlin.ir.builders.declarations.buildFun
2323
import org.jetbrains.kotlin.ir.builders.irAs
24+
import org.jetbrains.kotlin.ir.builders.irBlock
2425
import org.jetbrains.kotlin.ir.builders.irBlockBody
26+
import org.jetbrains.kotlin.ir.builders.irBranch
2527
import org.jetbrains.kotlin.ir.builders.irCall
2628
import org.jetbrains.kotlin.ir.builders.irCallConstructor
2729
import org.jetbrains.kotlin.ir.builders.irDelegatingConstructorCall
30+
import org.jetbrains.kotlin.ir.builders.irEqualsNull
2831
import org.jetbrains.kotlin.ir.builders.irGet
2932
import org.jetbrains.kotlin.ir.builders.irReturn
33+
import org.jetbrains.kotlin.ir.builders.irTemporary
34+
import org.jetbrains.kotlin.ir.builders.irTrue
3035
import org.jetbrains.kotlin.ir.builders.irVararg
36+
import org.jetbrains.kotlin.ir.builders.irWhen
3137
import org.jetbrains.kotlin.ir.declarations.IrAnnotationContainer
3238
import org.jetbrains.kotlin.ir.declarations.IrClass
3339
import org.jetbrains.kotlin.ir.declarations.IrConstructor
@@ -36,8 +42,10 @@ import org.jetbrains.kotlin.ir.declarations.IrFunction
3642
import org.jetbrains.kotlin.ir.declarations.IrProperty
3743
import org.jetbrains.kotlin.ir.declarations.IrSimpleFunction
3844
import org.jetbrains.kotlin.ir.declarations.IrValueParameter
45+
import org.jetbrains.kotlin.ir.declarations.IrVariable
3946
import org.jetbrains.kotlin.ir.expressions.IrCall
4047
import org.jetbrains.kotlin.ir.expressions.IrClassReference
48+
import org.jetbrains.kotlin.ir.expressions.IrConst
4149
import org.jetbrains.kotlin.ir.expressions.IrExpression
4250
import org.jetbrains.kotlin.ir.expressions.IrMemberAccessExpression
4351
import org.jetbrains.kotlin.ir.expressions.IrStatementOrigin
@@ -47,6 +55,7 @@ import org.jetbrains.kotlin.ir.expressions.impl.IrClassReferenceImpl
4755
import org.jetbrains.kotlin.ir.expressions.impl.IrConstImpl
4856
import org.jetbrains.kotlin.ir.expressions.impl.IrConstructorCallImpl
4957
import org.jetbrains.kotlin.ir.expressions.impl.IrFunctionExpressionImpl
58+
import org.jetbrains.kotlin.ir.expressions.impl.IrGetEnumValueImpl
5059
import org.jetbrains.kotlin.ir.expressions.impl.IrGetObjectValueImpl
5160
import org.jetbrains.kotlin.ir.expressions.impl.IrGetValueImpl
5261
import org.jetbrains.kotlin.ir.expressions.impl.IrInstanceInitializerCallImpl
@@ -60,19 +69,26 @@ import org.jetbrains.kotlin.ir.symbols.IrSymbol
6069
import org.jetbrains.kotlin.ir.symbols.IrValueSymbol
6170
import org.jetbrains.kotlin.ir.types.IrSimpleType
6271
import org.jetbrains.kotlin.ir.types.IrType
72+
import org.jetbrains.kotlin.ir.types.classFqName
73+
import org.jetbrains.kotlin.ir.types.classOrFail
6374
import org.jetbrains.kotlin.ir.types.classOrNull
6475
import org.jetbrains.kotlin.ir.types.createType
6576
import org.jetbrains.kotlin.ir.types.defaultType
77+
import org.jetbrains.kotlin.ir.types.makeNotNull
78+
import org.jetbrains.kotlin.ir.types.makeNullable
79+
import org.jetbrains.kotlin.ir.types.starProjectedType
6680
import org.jetbrains.kotlin.ir.types.typeWith
6781
import org.jetbrains.kotlin.ir.util.classId
6882
import org.jetbrains.kotlin.ir.util.companionObject
6983
import org.jetbrains.kotlin.ir.util.constructors
7084
import org.jetbrains.kotlin.ir.util.defaultType
7185
import org.jetbrains.kotlin.ir.util.dumpKotlinLike
7286
import org.jetbrains.kotlin.ir.util.functions
87+
import org.jetbrains.kotlin.ir.util.getAnnotation
7388
import org.jetbrains.kotlin.ir.util.getPropertyGetter
89+
import org.jetbrains.kotlin.ir.util.getValueArgument
7490
import org.jetbrains.kotlin.ir.util.isObject
75-
import org.jetbrains.kotlin.ir.util.packageFqName
91+
import org.jetbrains.kotlin.ir.util.kotlinFqName
7692
import org.jetbrains.kotlin.ir.util.primaryConstructor
7793
import org.jetbrains.kotlin.name.Name
7894
import org.jetbrains.kotlin.name.SpecialNames
@@ -543,8 +559,6 @@ internal class RpcStubGenerator(
543559

544560
generateGetCallableFunction()
545561

546-
generateCallablesProperty()
547-
548562
generateCreateInstanceFunction()
549563

550564
if (declaration.isGrpc) {
@@ -772,18 +786,23 @@ internal class RpcStubGenerator(
772786
val interfaceProperty = ctx.rpcServiceDescriptor.findPropertyByName(Descriptor.CALLABLES)
773787
?: error("Expected RpcServiceDescriptor.callables property to exist")
774788

775-
callableMap = generateMapProperty(
789+
callables = generateMapProperty(
776790
propertyName = Descriptor.CALLABLES,
777791
values = declaration.methods.memoryOptimizedMap { callable ->
778792
stringConst(callable.name) to irRpcCallable(callable)
779793
},
780794
valueType = ctx.rpcCallable.typeWith(declaration.serviceType),
795+
addDefaultGetter = false,
781796
).apply {
782797
overriddenSymbols = listOf(interfaceProperty)
783798

784799
addDefaultGetter(this@generateCallablesProperty, ctx.irBuiltIns) {
785800
visibility = DescriptorVisibilities.PUBLIC
786-
overriddenSymbols = listOf(ctx.rpcServiceDescriptor.getPropertyGetter(Descriptor.CALLABLES)!!)
801+
802+
val propertyGetter = ctx.rpcServiceDescriptor.getPropertyGetter(Descriptor.CALLABLES)
803+
?: error("Expected RpcServiceDescriptor.callables property getter to exist")
804+
805+
overriddenSymbols = listOf(propertyGetter)
787806
}
788807
}
789808
}
@@ -955,7 +974,7 @@ internal class RpcStubGenerator(
955974
functionName = Descriptor.GET_CALLABLE,
956975
resultType = ctx.rpcCallable.createType(hasQuestionMark = true, emptyList()),
957976
overriddenSymbol = ctx.rpcServiceDescriptor.functionByName(Descriptor.GET_CALLABLE),
958-
mapProperty = callableMap,
977+
mapProperty = callables,
959978
)
960979
}
961980

@@ -1636,6 +1655,7 @@ internal class RpcStubGenerator(
16361655
propertyName: String,
16371656
values: List<Pair<IrExpression, IrExpression>>,
16381657
valueType: IrType,
1658+
addDefaultGetter: Boolean = true,
16391659
): IrProperty {
16401660
return addProperty {
16411661
name = Name.identifier(propertyName)
@@ -1661,8 +1681,10 @@ internal class RpcStubGenerator(
16611681
)
16621682
}
16631683

1664-
addDefaultGetter(this@generateMapProperty, ctx.irBuiltIns) {
1665-
visibility = DescriptorVisibilities.PRIVATE
1684+
if (addDefaultGetter) {
1685+
addDefaultGetter(this@generateMapProperty, ctx.irBuiltIns) {
1686+
visibility = DescriptorVisibilities.PRIVATE
1687+
}
16661688
}
16671689
}
16681690
}

gradle-conventions/src/main/kotlin/util/apiValidation.kt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ private val excludedProjects = setOf(
1313
"krpc-compatibility-tests",
1414
"krpc-protocol-compatibility-tests",
1515
"compiler-plugin-tests",
16+
"protobuf-conformance",
1617
"protobuf-plugin",
1718
)
1819

Lines changed: 60 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,60 @@
1+
public abstract interface class kotlinx/rpc/grpc/client/ClientCallScope {
2+
public abstract fun cancel (Ljava/lang/String;Ljava/lang/Throwable;)Ljava/lang/Void;
3+
public abstract fun getCallOptions ()Lio/grpc/CallOptions;
4+
public abstract fun getMethod ()Lio/grpc/MethodDescriptor;
5+
public abstract fun getRequestHeaders ()Lio/grpc/Metadata;
6+
public abstract fun onClose (Lkotlin/jvm/functions/Function2;)V
7+
public abstract fun onHeaders (Lkotlin/jvm/functions/Function1;)V
8+
public abstract fun proceed (Lkotlinx/coroutines/flow/Flow;)Lkotlinx/coroutines/flow/Flow;
9+
}
10+
11+
public final class kotlinx/rpc/grpc/client/ClientCallScope$DefaultImpls {
12+
public static synthetic fun cancel$default (Lkotlinx/rpc/grpc/client/ClientCallScope;Ljava/lang/String;Ljava/lang/Throwable;ILjava/lang/Object;)Ljava/lang/Void;
13+
}
14+
15+
public abstract interface class kotlinx/rpc/grpc/client/ClientInterceptor {
16+
public abstract fun intercept (Lkotlinx/rpc/grpc/client/ClientCallScope;Lkotlinx/coroutines/flow/Flow;)Lkotlinx/coroutines/flow/Flow;
17+
}
18+
19+
public final class kotlinx/rpc/grpc/client/CredentialsKt {
20+
public static final fun TlsClientCredentials (Lkotlin/jvm/functions/Function1;)Lio/grpc/ChannelCredentials;
21+
public static synthetic fun TlsClientCredentials$default (Lkotlin/jvm/functions/Function1;ILjava/lang/Object;)Lio/grpc/ChannelCredentials;
22+
}
23+
24+
public final class kotlinx/rpc/grpc/client/GrpcClient : kotlinx/rpc/RpcClient {
25+
public final fun awaitTermination-VtjQ1oo (JLkotlin/coroutines/Continuation;)Ljava/lang/Object;
26+
public static synthetic fun awaitTermination-VtjQ1oo$default (Lkotlinx/rpc/grpc/client/GrpcClient;JLkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object;
27+
public fun call (Lkotlinx/rpc/RpcCall;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
28+
public fun callServerStreaming (Lkotlinx/rpc/RpcCall;)Lkotlinx/coroutines/flow/Flow;
29+
public final fun shutdown ()V
30+
public final fun shutdownNow ()V
31+
}
32+
33+
public final class kotlinx/rpc/grpc/client/GrpcClientConfiguration {
34+
public final fun getCredentials ()Lio/grpc/ChannelCredentials;
35+
public final fun getMessageCodecResolver ()Lkotlinx/rpc/grpc/codec/MessageCodecResolver;
36+
public final fun getOverrideAuthority ()Ljava/lang/String;
37+
public final fun intercept ([Lkotlinx/rpc/grpc/client/ClientInterceptor;)V
38+
public final fun plaintext ()Lio/grpc/ChannelCredentials;
39+
public final fun setCredentials (Lio/grpc/ChannelCredentials;)V
40+
public final fun setMessageCodecResolver (Lkotlinx/rpc/grpc/codec/MessageCodecResolver;)V
41+
public final fun setOverrideAuthority (Ljava/lang/String;)V
42+
public final fun tls (Lkotlin/jvm/functions/Function1;)Lio/grpc/ChannelCredentials;
43+
}
44+
45+
public final class kotlinx/rpc/grpc/client/GrpcClientKt {
46+
public static final fun GrpcClient (Ljava/lang/String;ILkotlin/jvm/functions/Function1;)Lkotlinx/rpc/grpc/client/GrpcClient;
47+
public static final fun GrpcClient (Ljava/lang/String;Lkotlin/jvm/functions/Function1;)Lkotlinx/rpc/grpc/client/GrpcClient;
48+
public static synthetic fun GrpcClient$default (Ljava/lang/String;ILkotlin/jvm/functions/Function1;ILjava/lang/Object;)Lkotlinx/rpc/grpc/client/GrpcClient;
49+
public static synthetic fun GrpcClient$default (Ljava/lang/String;Lkotlin/jvm/functions/Function1;ILjava/lang/Object;)Lkotlinx/rpc/grpc/client/GrpcClient;
50+
}
51+
52+
public abstract interface class kotlinx/rpc/grpc/client/TlsClientCredentialsBuilder {
53+
public abstract fun keyManager (Ljava/lang/String;Ljava/lang/String;)Lkotlinx/rpc/grpc/client/TlsClientCredentialsBuilder;
54+
public abstract fun trustManager (Ljava/lang/String;)Lkotlinx/rpc/grpc/client/TlsClientCredentialsBuilder;
55+
}
56+
57+
public final class kotlinx/rpc/grpc/client/internal/ManagedChannel_jvmKt {
58+
public static final fun toKotlin (Lio/grpc/ManagedChannel;)Lkotlinx/rpc/grpc/client/internal/ManagedChannel;
59+
}
60+

0 commit comments

Comments
 (0)