Skip to content

Commit 28fdcdb

Browse files
committed
Split protoc-gen into grpc and protobuf
1 parent 93c246c commit 28fdcdb

File tree

66 files changed

+831
-502
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

66 files changed

+831
-502
lines changed
Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
/*
2+
* Copyright 2023-2025 JetBrains s.r.o and contributors. Use of this source code is governed by the Apache 2.0 license.
3+
*/
4+
5+
import util.other.libs
6+
import org.jetbrains.kotlin.gradle.dsl.ExplicitApiMode
7+
8+
plugins {
9+
id("conventions-jvm")
10+
}
11+
12+
dependencies {
13+
implementation(libs.protobuf.java)
14+
15+
implementation(libs.slf4j.api)
16+
implementation(libs.logback.classic)
17+
18+
testImplementation(libs.kotlin.test)
19+
}
20+
21+
tasks.jar {
22+
duplicatesStrategy = DuplicatesStrategy.EXCLUDE
23+
archiveClassifier = "all"
24+
25+
// Protoc plugins are all fat jars basically (the ones built on jvm)
26+
// be really careful of what you put in the classpath here
27+
from(
28+
configurations.runtimeClasspath.map { prop ->
29+
prop.map { if (it.isDirectory()) it else zipTree(it) }
30+
}
31+
)
32+
}
33+
34+
kotlin {
35+
explicitApi = ExplicitApiMode.Disabled
36+
}
37+
38+
tasks.test {
39+
useJUnitPlatform()
40+
}

gradle-conventions/src/main/kotlin/conventions-publishing.gradle.kts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ import util.other.isPublicModule
1010
import util.tasks.ValidatePublishedArtifactsTask
1111

1212
val isGradlePlugin = project.name == "gradle-plugin"
13-
val isProtocGen = project.name == "protoc-gen"
13+
val isProtocGen = project.rootProject.name.startsWith(PROTOC_GEN)
1414
val publishingExtension = project.extensions.findByType<PublishingExtension>()
1515
val globalRootDir: String by extra
1616

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

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ import java.io.File
1818

1919
const val KOTLINX_RPC_PREFIX = "kotlinx-rpc"
2020
const val PROTOC_GEN = "protoc-gen"
21-
const val PROTOC_GEN_KOTLIN_MULTIPLATFORM = "protoc-gen-kotlin-multiplatform"
21+
const val PROTOC_GEN_KOTLIN_MULTIPLATFORM = "kotlin-multiplatform"
2222

2323
/**
2424
* Important to configure inside [KotlinTarget.mavenPublication]
@@ -28,8 +28,13 @@ const val PROTOC_GEN_KOTLIN_MULTIPLATFORM = "protoc-gen-kotlin-multiplatform"
2828
fun MavenPublication.setPublicArtifactId(project: Project) {
2929
val publication = this
3030

31-
if (publication.artifactId == PROTOC_GEN) {
32-
publication.artifactId = PROTOC_GEN_KOTLIN_MULTIPLATFORM
31+
if (project.rootProject.name == PROTOC_GEN) {
32+
val middle = when (project.name) {
33+
"grpc" -> "grpc-"
34+
"protobuf" -> ""
35+
else -> error("Unsupported project name in $PROTOC_GEN: ${project.name}")
36+
}
37+
publication.artifactId = "$PROTOC_GEN-$middle$PROTOC_GEN_KOTLIN_MULTIPLATFORM"
3338
project.logger.info("Altered artifactId for $name publication: $artifactId")
3439
} else if (!publication.artifactId.startsWith(KOTLINX_RPC_PREFIX)) {
3540
publication.artifactId = "$KOTLINX_RPC_PREFIX-$artifactId"

gradle-plugin/api/gradle-plugin.api

Lines changed: 40 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,10 @@ public abstract interface annotation class kotlinx/rpc/RpcDangerousApi : java/la
44
public class kotlinx/rpc/RpcExtension {
55
public fun <init> (Lorg/gradle/api/model/ObjectFactory;Lorg/gradle/api/Project;)V
66
public final fun getAnnotationTypeSafetyEnabled ()Lorg/gradle/api/provider/Provider;
7-
public final fun getGrpc ()Lkotlinx/rpc/grpc/GrpcExtension;
7+
public final fun getProtoc ()Lkotlinx/rpc/protoc/ProtocExtension;
88
public final fun getStrict ()Lkotlinx/rpc/RpcStrictModeExtension;
9-
public final fun grpc (Lorg/gradle/api/Action;)V
10-
public static synthetic fun grpc$default (Lkotlinx/rpc/RpcExtension;Lorg/gradle/api/Action;ILjava/lang/Object;)V
9+
public final fun protoc (Lorg/gradle/api/Action;)V
10+
public static synthetic fun protoc$default (Lkotlinx/rpc/RpcExtension;Lorg/gradle/api/Action;ILjava/lang/Object;)V
1111
public final fun strict (Lorg/gradle/api/Action;)V
1212
}
1313

@@ -21,6 +21,7 @@ public final class kotlinx/rpc/RpcStrictMode : java/lang/Enum {
2121
public static final field ERROR Lkotlinx/rpc/RpcStrictMode;
2222
public static final field NONE Lkotlinx/rpc/RpcStrictMode;
2323
public static final field WARNING Lkotlinx/rpc/RpcStrictMode;
24+
public static fun getEntries ()Lkotlin/enums/EnumEntries;
2425
public static fun valueOf (Ljava/lang/String;)Lkotlinx/rpc/RpcStrictMode;
2526
public static fun values ()[Lkotlinx/rpc/RpcStrictMode;
2627
}
@@ -61,6 +62,7 @@ public final class kotlinx/rpc/buf/BufExtension$LogFormat : java/lang/Enum {
6162
public static final field Default Lkotlinx/rpc/buf/BufExtension$LogFormat;
6263
public static final field Json Lkotlinx/rpc/buf/BufExtension$LogFormat;
6364
public static final field Text Lkotlinx/rpc/buf/BufExtension$LogFormat;
65+
public static fun getEntries ()Lkotlin/enums/EnumEntries;
6466
public static fun valueOf (Ljava/lang/String;)Lkotlinx/rpc/buf/BufExtension$LogFormat;
6567
public static fun values ()[Lkotlinx/rpc/buf/BufExtension$LogFormat;
6668
}
@@ -79,6 +81,7 @@ public final class kotlinx/rpc/buf/BufGenerateExtension$ErrorFormat : java/lang/
7981
public static final field Junit Lkotlinx/rpc/buf/BufGenerateExtension$ErrorFormat;
8082
public static final field Msvs Lkotlinx/rpc/buf/BufGenerateExtension$ErrorFormat;
8183
public static final field Text Lkotlinx/rpc/buf/BufGenerateExtension$ErrorFormat;
84+
public static fun getEntries ()Lkotlin/enums/EnumEntries;
8285
public static fun valueOf (Ljava/lang/String;)Lkotlinx/rpc/buf/BufGenerateExtension$ErrorFormat;
8386
public static fun values ()[Lkotlinx/rpc/buf/BufGenerateExtension$ErrorFormat;
8487
}
@@ -119,6 +122,7 @@ public abstract class kotlinx/rpc/buf/tasks/BufGenerateTask : kotlinx/rpc/buf/ta
119122
public fun <init> ()V
120123
public abstract fun getAdditionalArgs ()Lorg/gradle/api/provider/ListProperty;
121124
public abstract fun getErrorFormat ()Lorg/gradle/api/provider/Property;
125+
public abstract fun getExecutableFiles ()Lorg/gradle/api/provider/ListProperty;
122126
public abstract fun getIncludeImports ()Lorg/gradle/api/provider/Property;
123127
public abstract fun getIncludeWkt ()Lorg/gradle/api/provider/Property;
124128
public abstract fun getOutputDirectory ()Lorg/gradle/api/provider/Property;
@@ -146,14 +150,8 @@ public final class kotlinx/rpc/buf/tasks/GenerateBufYamlKt$inlined$sam$i$org_gra
146150
public final synthetic fun execute (Ljava/lang/Object;)V
147151
}
148152

149-
public abstract interface class kotlinx/rpc/grpc/GrpcExtension {
150-
public abstract fun buf (Lorg/gradle/api/Action;)V
151-
public abstract fun getBuf ()Lkotlinx/rpc/buf/BufExtension;
152-
public abstract fun getProtocPlugins ()Lorg/gradle/api/NamedDomainObjectContainer;
153-
public abstract fun protocPlugins (Lorg/gradle/api/Action;)V
154-
}
155-
156-
public final class kotlinx/rpc/proto/ConstsKt {
153+
public final class kotlinx/rpc/protoc/ConstsKt {
154+
public static final field PROTOC_GEN_GRPC_KOTLIN_MULTIPLATFORM_JAR_CONFIGURATION Ljava/lang/String;
157155
public static final field PROTOC_GEN_KOTLIN_MULTIPLATFORM_JAR_CONFIGURATION Ljava/lang/String;
158156
public static final field PROTO_BUILD_DIR Ljava/lang/String;
159157
public static final field PROTO_BUILD_GENERATED Ljava/lang/String;
@@ -165,33 +163,39 @@ public final class kotlinx/rpc/proto/ConstsKt {
165163
public static final field PROTO_SOURCE_SETS Ljava/lang/String;
166164
}
167165

168-
public final class kotlinx/rpc/proto/KotlinMultiplatformPluginJarKt {
166+
public final class kotlinx/rpc/protoc/PluginJarsKt {
167+
public static final fun getGrpcKotlinMultiplatformProtocPluginJarPath (Lorg/gradle/api/Project;)Lorg/gradle/api/provider/Provider;
169168
public static final fun getKotlinMultiplatformProtocPluginJarPath (Lorg/gradle/api/Project;)Lorg/gradle/api/provider/Provider;
170169
}
171170

172-
public abstract class kotlinx/rpc/proto/ProcessProtoFiles : org/gradle/api/tasks/Copy {
171+
public abstract class kotlinx/rpc/protoc/ProcessProtoFiles : org/gradle/api/tasks/Copy {
173172
public fun <init> ()V
174173
}
175174

176-
public final class kotlinx/rpc/proto/ProcessProtoFilesKt$inlined$sam$i$org_gradle_api_Action$0 : org/gradle/api/Action {
175+
public final class kotlinx/rpc/protoc/ProcessProtoFilesKt$inlined$sam$i$org_gradle_api_Action$0 : org/gradle/api/Action {
177176
public fun <init> (Lkotlin/jvm/functions/Function1;)V
178177
public final synthetic fun execute (Ljava/lang/Object;)V
179178
}
180179

181-
public abstract interface class kotlinx/rpc/proto/ProtoSourceSet {
180+
public abstract interface class kotlinx/rpc/protoc/ProtoSourceSet {
182181
public abstract fun getName ()Ljava/lang/String;
183182
public abstract fun getProto ()Lorg/gradle/api/file/SourceDirectorySet;
184183
public fun proto (Lorg/gradle/api/Action;)V
185-
public abstract fun protocPlugin (Lkotlinx/rpc/proto/ProtocPlugin;)V
184+
public abstract fun protocPlugin (Lkotlinx/rpc/protoc/ProtocPlugin;)V
186185
public abstract fun protocPlugin (Lorg/gradle/api/NamedDomainObjectProvider;)V
187186
}
188187

189-
public class kotlinx/rpc/proto/ProtocPlugin {
190-
public static final field Companion Lkotlinx/rpc/proto/ProtocPlugin$Companion;
191-
public static final field GRPC_JAVA Ljava/lang/String;
192-
public static final field GRPC_KOTLIN Ljava/lang/String;
188+
public abstract interface class kotlinx/rpc/protoc/ProtocExtension {
189+
public abstract fun buf (Lorg/gradle/api/Action;)V
190+
public abstract fun getBuf ()Lkotlinx/rpc/buf/BufExtension;
191+
public abstract fun getProtocPlugins ()Lorg/gradle/api/NamedDomainObjectContainer;
192+
public abstract fun protocPlugins (Lorg/gradle/api/Action;)V
193+
}
194+
195+
public class kotlinx/rpc/protoc/ProtocPlugin {
196+
public static final field Companion Lkotlinx/rpc/protoc/ProtocPlugin$Companion;
197+
public static final field GRPC_KOTLIN_MULTIPLATFORM Ljava/lang/String;
193198
public static final field KOTLIN_MULTIPLATFORM Ljava/lang/String;
194-
public static final field PROTOBUF_JAVA Ljava/lang/String;
195199
public fun <init> (Ljava/lang/String;Lorg/gradle/api/Project;)V
196200
public final fun getArtifact ()Lorg/gradle/api/provider/Property;
197201
public final fun getExcludeTypes ()Lorg/gradle/api/provider/ListProperty;
@@ -206,42 +210,40 @@ public class kotlinx/rpc/proto/ProtocPlugin {
206210
public final fun remote (Lorg/gradle/api/Action;)V
207211
}
208212

209-
public abstract class kotlinx/rpc/proto/ProtocPlugin$Artifact {
213+
public abstract class kotlinx/rpc/protoc/ProtocPlugin$Artifact {
210214
}
211215

212-
public final class kotlinx/rpc/proto/ProtocPlugin$Artifact$Local : kotlinx/rpc/proto/ProtocPlugin$Artifact {
216+
public final class kotlinx/rpc/protoc/ProtocPlugin$Artifact$Local : kotlinx/rpc/protoc/ProtocPlugin$Artifact {
213217
public fun <init> (Lorg/gradle/api/Project;)V
214218
public final fun executor (Lorg/gradle/api/provider/Provider;)V
215219
public final fun executor ([Ljava/lang/String;)V
220+
public final fun getExecutableFiles ()Lorg/gradle/api/provider/ListProperty;
216221
public final fun getExecutor ()Lorg/gradle/api/provider/ListProperty;
217222
public final fun javaJar (Ljava/lang/String;)V
218223
public final fun javaJar (Lorg/gradle/api/provider/Provider;Lorg/gradle/api/provider/Provider;)V
219-
public static synthetic fun javaJar$default (Lkotlinx/rpc/proto/ProtocPlugin$Artifact$Local;Lorg/gradle/api/provider/Provider;Lorg/gradle/api/provider/Provider;ILjava/lang/Object;)V
224+
public static synthetic fun javaJar$default (Lkotlinx/rpc/protoc/ProtocPlugin$Artifact$Local;Lorg/gradle/api/provider/Provider;Lorg/gradle/api/provider/Provider;ILjava/lang/Object;)V
220225
}
221226

222-
public final class kotlinx/rpc/proto/ProtocPlugin$Artifact$Remote : kotlinx/rpc/proto/ProtocPlugin$Artifact {
227+
public final class kotlinx/rpc/protoc/ProtocPlugin$Artifact$Remote : kotlinx/rpc/protoc/ProtocPlugin$Artifact {
223228
public fun <init> (Lorg/gradle/api/Project;)V
224229
public final fun getLocator ()Lorg/gradle/api/provider/Property;
225230
}
226231

227-
public final class kotlinx/rpc/proto/ProtocPlugin$Companion {
232+
public final class kotlinx/rpc/protoc/ProtocPlugin$Companion {
228233
}
229234

230-
public final class kotlinx/rpc/proto/ProtocPlugin$Strategy : java/lang/Enum {
231-
public static final field All Lkotlinx/rpc/proto/ProtocPlugin$Strategy;
232-
public static final field Directory Lkotlinx/rpc/proto/ProtocPlugin$Strategy;
233-
public static fun valueOf (Ljava/lang/String;)Lkotlinx/rpc/proto/ProtocPlugin$Strategy;
234-
public static fun values ()[Lkotlinx/rpc/proto/ProtocPlugin$Strategy;
235+
public final class kotlinx/rpc/protoc/ProtocPlugin$Strategy : java/lang/Enum {
236+
public static final field All Lkotlinx/rpc/protoc/ProtocPlugin$Strategy;
237+
public static final field Directory Lkotlinx/rpc/protoc/ProtocPlugin$Strategy;
238+
public static fun getEntries ()Lkotlin/enums/EnumEntries;
239+
public static fun valueOf (Ljava/lang/String;)Lkotlinx/rpc/protoc/ProtocPlugin$Strategy;
240+
public static fun values ()[Lkotlinx/rpc/protoc/ProtocPlugin$Strategy;
235241
}
236242

237-
public final class kotlinx/rpc/proto/ProtocPluginKt {
238-
public static final fun getGrpcJava (Lorg/gradle/api/NamedDomainObjectContainer;)Lorg/gradle/api/NamedDomainObjectProvider;
239-
public static final fun getGrpcKotlin (Lorg/gradle/api/NamedDomainObjectContainer;)Lorg/gradle/api/NamedDomainObjectProvider;
243+
public final class kotlinx/rpc/protoc/ProtocPluginKt {
244+
public static final fun getGrpcKotlinMultiplatform (Lorg/gradle/api/NamedDomainObjectContainer;)Lorg/gradle/api/NamedDomainObjectProvider;
240245
public static final fun getKotlinMultiplatform (Lorg/gradle/api/NamedDomainObjectContainer;)Lorg/gradle/api/NamedDomainObjectProvider;
241-
public static final fun getProtobufJava (Lorg/gradle/api/NamedDomainObjectContainer;)Lorg/gradle/api/NamedDomainObjectProvider;
242-
public static final fun grpcJava (Lorg/gradle/api/NamedDomainObjectContainer;Lorg/gradle/api/Action;)V
243-
public static final fun grpcKotlin (Lorg/gradle/api/NamedDomainObjectContainer;Lorg/gradle/api/Action;)V
246+
public static final fun grpcKotlinMultiplatform (Lorg/gradle/api/NamedDomainObjectContainer;Lorg/gradle/api/Action;)V
244247
public static final fun kotlinMultiplatform (Lorg/gradle/api/NamedDomainObjectContainer;Lorg/gradle/api/Action;)V
245-
public static final fun protobufJava (Lorg/gradle/api/NamedDomainObjectContainer;Lorg/gradle/api/Action;)V
246248
}
247249

gradle-plugin/build.gradle.kts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,9 @@ tasks.test {
5454

5555
useJUnitPlatform()
5656

57-
dependsOn(gradle.includedBuild("protoc-gen").task(":publishAllPublicationsToBuildRepoRepository"))
57+
val includedBuild = gradle.includedBuild("protoc-gen")
58+
dependsOn(includedBuild.task(":grpc:publishAllPublicationsToBuildRepoRepository"))
59+
dependsOn(includedBuild.task(":protobuf:publishAllPublicationsToBuildRepoRepository"))
5860
}
5961

6062
// This block is needed to show plugin tasks on --dry-run

gradle-plugin/src/main/kotlin/kotlinx/rpc/Extensions.kt

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,8 @@
66

77
package kotlinx.rpc
88

9-
import kotlinx.rpc.grpc.DefaultGrpcExtension
10-
import kotlinx.rpc.grpc.GrpcExtension
9+
import kotlinx.rpc.protoc.DefaultProtocExtension
10+
import kotlinx.rpc.protoc.ProtocExtension
1111
import org.gradle.api.Action
1212
import org.gradle.api.Project
1313
import org.gradle.api.model.ObjectFactory
@@ -45,21 +45,21 @@ public open class RpcExtension @Inject constructor(objects: ObjectFactory, priva
4545
configure.execute(strict)
4646
}
4747

48-
internal val grpcApplied = AtomicBoolean(false)
48+
internal val protocApplied = AtomicBoolean(false)
4949

5050
/**
51-
* Grpc settings.
51+
* Protoc settings.
5252
*/
53-
public val grpc: GrpcExtension by lazy {
54-
grpcApplied.set(true)
55-
objects.newInstance<DefaultGrpcExtension>()
53+
public val protoc: ProtocExtension by lazy {
54+
protocApplied.set(true)
55+
objects.newInstance<DefaultProtocExtension>()
5656
}
5757

5858
/**
59-
* Grpc settings.
59+
* Protoc settings.
6060
*/
61-
public fun grpc(configure: Action<GrpcExtension> = Action {}) {
62-
configure.execute(grpc)
61+
public fun protoc(configure: Action<ProtocExtension> = Action {}) {
62+
configure.execute(protoc)
6363
}
6464
}
6565

gradle-plugin/src/main/kotlin/kotlinx/rpc/RpcGradlePlugin.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,8 @@
44

55
package kotlinx.rpc
66

7-
import kotlinx.rpc.grpc.configurePluginProtections
8-
import kotlinx.rpc.proto.createProtoExtensions
7+
import kotlinx.rpc.protoc.configurePluginProtections
8+
import kotlinx.rpc.protoc.createProtoExtensions
99
import org.gradle.api.Plugin
1010
import org.gradle.api.Project
1111
import org.gradle.kotlin.dsl.create

gradle-plugin/src/main/kotlin/kotlinx/rpc/buf/BufExtensions.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
package kotlinx.rpc.buf
66

77
import kotlinx.rpc.buf.tasks.BufExecTask
8-
import kotlinx.rpc.proto.ProtocPlugin
8+
import kotlinx.rpc.protoc.ProtocPlugin
99
import org.gradle.api.Action
1010
import org.gradle.api.Project
1111
import org.gradle.api.model.ObjectFactory

gradle-plugin/src/main/kotlin/kotlinx/rpc/buf/tasks/BufExecTask.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ package kotlinx.rpc.buf.tasks
77
import kotlinx.rpc.buf.BUF_EXECUTABLE_CONFIGURATION
88
import kotlinx.rpc.buf.BufExtension
99
import kotlinx.rpc.buf.execBuf
10-
import kotlinx.rpc.proto.PROTO_GROUP
10+
import kotlinx.rpc.protoc.PROTO_GROUP
1111
import kotlinx.rpc.rpcExtension
1212
import org.gradle.api.DefaultTask
1313
import org.gradle.api.Project
@@ -117,7 +117,7 @@ internal fun <T : BufExecTask> Project.registerBufExecTask(
117117
bufExecutable.set(executableConfiguration.singleFile)
118118
this.workingDir.set(workingDir)
119119

120-
val buf = project.rpcExtension().grpc.buf
120+
val buf = project.rpcExtension().protoc.buf
121121
configFile.set(buf.configFile)
122122
logFormat.set(buf.logFormat)
123123
bufTimeoutInWholeSeconds.set(buf.timeout.map { it.inWholeSeconds })

gradle-plugin/src/main/kotlin/kotlinx/rpc/buf/tasks/BufGenerateTask.kt

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,9 @@
44

55
package kotlinx.rpc.buf.tasks
66

7-
import kotlinx.rpc.proto.PROTO_GROUP
7+
import kotlinx.rpc.protoc.PROTO_GROUP
88
import kotlinx.rpc.rpcExtension
9+
import kotlinx.rpc.protoc.ProtocPlugin
910
import org.gradle.api.Project
1011
import org.gradle.api.provider.ListProperty
1112
import org.gradle.api.provider.Property
@@ -16,6 +17,7 @@ import org.gradle.api.tasks.TaskProvider
1617
import java.io.File
1718
import kotlinx.rpc.buf.BufGenerateExtension
1819
import org.gradle.api.tasks.InputDirectory
20+
import org.gradle.api.tasks.InputFiles
1921

2022
/**
2123
* Buf `generate` command.
@@ -31,6 +33,15 @@ public abstract class BufGenerateTask : BufExecTask() {
3133
@get:InputDirectory
3234
internal abstract val importFilesDir: Property<File>
3335

36+
/**
37+
* List of files used during `buf generate` command execution.
38+
*
39+
* @see [ProtocPlugin.Artifact.Local.executableFiles]
40+
*/
41+
// unsued, but required for Gradle to properly recognise inputs
42+
@get:InputFiles
43+
public abstract val executableFiles: ListProperty<File>
44+
3445
/**
3546
* Whether to include imports.
3647
*
@@ -118,7 +129,7 @@ internal fun Project.registerBufGenerateTask(
118129
group = PROTO_GROUP
119130
description = "Generates code from .proto files using 'buf generate'"
120131

121-
val generate = project.rpcExtension().grpc.buf.generate
132+
val generate = project.rpcExtension().protoc.buf.generate
122133

123134
includeImports.set(generate.includeImports)
124135
includeWkt.set(generate.includeWkt)

0 commit comments

Comments
 (0)