Switch from com.squareup.javapoet to com.palantir.javapoet (#790)

Motivation:
com.squareup.javapoet is EOL.
com.palantir.javapoet is an actively maintained fork that supports generating record classes.
This commit is contained in:
translatenix
2024-11-20 16:16:51 -08:00
committed by GitHub
parent e6c1e1411b
commit 45302c8a00
8 changed files with 24 additions and 23 deletions

View File

@@ -65,7 +65,7 @@ val relocations =
"io.leangen.geantyref." to "org.pkl.thirdparty.geantyref.", "io.leangen.geantyref." to "org.pkl.thirdparty.geantyref.",
// pkl-codegen-java dependencies // pkl-codegen-java dependencies
"com.squareup.javapoet." to "org.pkl.thirdparty.javapoet.", "com.palantir.javapoet." to "org.pkl.thirdparty.javapoet.",
// pkl-codegen-kotlin dependencies // pkl-codegen-kotlin dependencies
"com.squareup.kotlinpoet." to "org.pkl.thirdparty.kotlinpoet.", "com.squareup.kotlinpoet." to "org.pkl.thirdparty.kotlinpoet.",

View File

@@ -18,7 +18,7 @@ graalVmSha256-linux-x64 = "b6f3dace24cf1960ec790216f4c86f00d4f43df64e4e8b548f638
graalVmSha256-linux-aarch64 = "bd991d486b92deb74337b881e0f13a764c9c1e90fc358819080f7321fa5175e8" graalVmSha256-linux-aarch64 = "bd991d486b92deb74337b881e0f13a764c9c1e90fc358819080f7321fa5175e8"
graalVmSha256-windows-x64 = "8b978e56dddc0edc60db99794b56975740d9c52293b31549cfc3f7516fc18b43" graalVmSha256-windows-x64 = "8b978e56dddc0edc60db99794b56975740d9c52293b31549cfc3f7516fc18b43"
ideaExtPlugin = "1.1.9" ideaExtPlugin = "1.1.9"
javaPoet = "1.+" javaPoet = "0.+"
javaxInject = "1" javaxInject = "1"
jansi = "2.+" jansi = "2.+"
jimfs = "1.+" jimfs = "1.+"
@@ -62,7 +62,7 @@ geantyref = { group = "io.leangen.geantyref", name = "geantyref", version.ref =
graalCompiler = { group = "org.graalvm.compiler", name = "compiler", version.ref = "graalVm" } graalCompiler = { group = "org.graalvm.compiler", name = "compiler", version.ref = "graalVm" }
graalSdk = { group = "org.graalvm.sdk", name = "graal-sdk", version.ref = "graalVm" } graalSdk = { group = "org.graalvm.sdk", name = "graal-sdk", version.ref = "graalVm" }
graalJs = { group = "org.graalvm.js", name = "js", version.ref = "graalVm" } graalJs = { group = "org.graalvm.js", name = "js", version.ref = "graalVm" }
javaPoet = { group = "com.squareup", name = "javapoet", version.ref = "javaPoet" } javaPoet = { group = "com.palantir.javapoet", name = "javapoet", version.ref = "javaPoet" }
javaxInject = { group = "javax.inject", name = "javax.inject", version.ref = "javaxInject" } javaxInject = { group = "javax.inject", name = "javax.inject", version.ref = "javaxInject" }
jansi = { group = "org.fusesource.jansi", name = "jansi", version.ref = "jansi" } jansi = { group = "org.fusesource.jansi", name = "jansi", version.ref = "jansi" }
jimfs = { group = "com.google.jimfs", name = "jimfs", version.ref = "jimfs" } jimfs = { group = "com.google.jimfs", name = "jimfs", version.ref = "jimfs" }

View File

@@ -3,7 +3,7 @@
# This file is expected to be part of source control. # This file is expected to be part of source control.
com.github.ajalt.clikt:clikt-jvm:3.5.4=compileClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath com.github.ajalt.clikt:clikt-jvm:3.5.4=compileClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
com.github.ajalt.clikt:clikt:3.5.4=apiDependenciesMetadata,compileClasspath,implementationDependenciesMetadata,runtimeClasspath,testCompileClasspath,testImplementationDependenciesMetadata,testRuntimeClasspath com.github.ajalt.clikt:clikt:3.5.4=apiDependenciesMetadata,compileClasspath,implementationDependenciesMetadata,runtimeClasspath,testCompileClasspath,testImplementationDependenciesMetadata,testRuntimeClasspath
com.squareup:javapoet:1.13.0=compileClasspath,implementationDependenciesMetadata,runtimeClasspath,testCompileClasspath,testImplementationDependenciesMetadata,testRuntimeClasspath com.palantir.javapoet:javapoet:0.5.0=compileClasspath,implementationDependenciesMetadata,runtimeClasspath,testCompileClasspath,testImplementationDependenciesMetadata,testRuntimeClasspath
com.tunnelvisionlabs:antlr4-runtime:4.9.0=runtimeClasspath,testRuntimeClasspath com.tunnelvisionlabs:antlr4-runtime:4.9.0=runtimeClasspath,testRuntimeClasspath
io.leangen.geantyref:geantyref:1.3.16=testRuntimeClasspath io.leangen.geantyref:geantyref:1.3.16=testRuntimeClasspath
net.bytebuddy:byte-buddy:1.14.18=testCompileClasspath,testImplementationDependenciesMetadata,testRuntimeClasspath net.bytebuddy:byte-buddy:1.14.18=testCompileClasspath,testImplementationDependenciesMetadata,testRuntimeClasspath

View File

@@ -15,7 +15,7 @@
*/ */
package org.pkl.codegen.java package org.pkl.codegen.java
import com.squareup.javapoet.* import com.palantir.javapoet.*
import java.io.StringWriter import java.io.StringWriter
import java.lang.Deprecated import java.lang.Deprecated
import java.net.URI import java.net.URI
@@ -91,6 +91,7 @@ class JavaCodeGenerator(
) { ) {
companion object { companion object {
private val OBJECT = ClassName.get(Object::class.java)
private val STRING = ClassName.get(String::class.java) private val STRING = ClassName.get(String::class.java)
private val DURATION = ClassName.get(Duration::class.java) private val DURATION = ClassName.get(Duration::class.java)
private val DURATION_UNIT = ClassName.get(DurationUnit::class.java) private val DURATION_UNIT = ClassName.get(DurationUnit::class.java)
@@ -721,15 +722,15 @@ class JavaCodeGenerator(
private fun PType.toJavaPoetName(nullable: Boolean = false, boxed: Boolean = false): TypeName = private fun PType.toJavaPoetName(nullable: Boolean = false, boxed: Boolean = false): TypeName =
when (this) { when (this) {
PType.UNKNOWN -> TypeName.OBJECT.nullableIf(nullable) PType.UNKNOWN -> OBJECT.nullableIf(nullable)
PType.NOTHING -> TypeName.VOID PType.NOTHING -> TypeName.VOID
is PType.StringLiteral -> STRING.nullableIf(nullable) is PType.StringLiteral -> STRING.nullableIf(nullable)
is PType.Class -> { is PType.Class -> {
// if in doubt, spell it out // if in doubt, spell it out
when (val classInfo = pClass.info) { when (val classInfo = pClass.info) {
PClassInfo.Any -> TypeName.OBJECT PClassInfo.Any -> OBJECT
PClassInfo.Typed, PClassInfo.Typed,
PClassInfo.Dynamic -> TypeName.OBJECT.nullableIf(nullable) PClassInfo.Dynamic -> OBJECT.nullableIf(nullable)
PClassInfo.Boolean -> TypeName.BOOLEAN.boxIf(boxed).nullableIf(nullable) PClassInfo.Boolean -> TypeName.BOOLEAN.boxIf(boxed).nullableIf(nullable)
PClassInfo.String -> STRING.nullableIf(nullable) PClassInfo.String -> STRING.nullableIf(nullable)
// seems more useful to generate `double` than `java.lang.Number` // seems more useful to generate `double` than `java.lang.Number`
@@ -742,12 +743,12 @@ class JavaCodeGenerator(
ParameterizedTypeName.get( ParameterizedTypeName.get(
PAIR, PAIR,
if (typeArguments.isEmpty()) { if (typeArguments.isEmpty()) {
TypeName.OBJECT OBJECT
} else { } else {
typeArguments[0].toJavaPoetTypeArgumentName() typeArguments[0].toJavaPoetTypeArgumentName()
}, },
if (typeArguments.isEmpty()) { if (typeArguments.isEmpty()) {
TypeName.OBJECT OBJECT
} else { } else {
typeArguments[1].toJavaPoetTypeArgumentName() typeArguments[1].toJavaPoetTypeArgumentName()
} }
@@ -757,7 +758,7 @@ class JavaCodeGenerator(
ParameterizedTypeName.get( ParameterizedTypeName.get(
COLLECTION, COLLECTION,
if (typeArguments.isEmpty()) { if (typeArguments.isEmpty()) {
TypeName.OBJECT OBJECT
} else { } else {
typeArguments[0].toJavaPoetTypeArgumentName() typeArguments[0].toJavaPoetTypeArgumentName()
} }
@@ -768,7 +769,7 @@ class JavaCodeGenerator(
ParameterizedTypeName.get( ParameterizedTypeName.get(
LIST, LIST,
if (typeArguments.isEmpty()) { if (typeArguments.isEmpty()) {
TypeName.OBJECT OBJECT
} else { } else {
typeArguments[0].toJavaPoetTypeArgumentName() typeArguments[0].toJavaPoetTypeArgumentName()
} }
@@ -779,7 +780,7 @@ class JavaCodeGenerator(
ParameterizedTypeName.get( ParameterizedTypeName.get(
SET, SET,
if (typeArguments.isEmpty()) { if (typeArguments.isEmpty()) {
TypeName.OBJECT OBJECT
} else { } else {
typeArguments[0].toJavaPoetTypeArgumentName() typeArguments[0].toJavaPoetTypeArgumentName()
} }
@@ -790,12 +791,12 @@ class JavaCodeGenerator(
ParameterizedTypeName.get( ParameterizedTypeName.get(
MAP, MAP,
if (typeArguments.isEmpty()) { if (typeArguments.isEmpty()) {
TypeName.OBJECT OBJECT
} else { } else {
typeArguments[0].toJavaPoetTypeArgumentName() typeArguments[0].toJavaPoetTypeArgumentName()
}, },
if (typeArguments.isEmpty()) { if (typeArguments.isEmpty()) {
TypeName.OBJECT OBJECT
} else { } else {
typeArguments[1].toJavaPoetTypeArgumentName() typeArguments[1].toJavaPoetTypeArgumentName()
} }
@@ -820,7 +821,7 @@ class JavaCodeGenerator(
is PType.Constrained -> baseType.toJavaPoetName(nullable = nullable, boxed = boxed) is PType.Constrained -> baseType.toJavaPoetName(nullable = nullable, boxed = boxed)
is PType.Alias -> is PType.Alias ->
when (typeAlias.qualifiedName) { when (typeAlias.qualifiedName) {
"pkl.base#NonNull" -> TypeName.OBJECT.nullableIf(nullable) "pkl.base#NonNull" -> OBJECT.nullableIf(nullable)
"pkl.base#Int8" -> TypeName.BYTE.boxIf(boxed).nullableIf(nullable) "pkl.base#Int8" -> TypeName.BYTE.boxIf(boxed).nullableIf(nullable)
"pkl.base#Int16", "pkl.base#Int16",
"pkl.base#UInt8" -> TypeName.SHORT.boxIf(boxed).nullableIf(nullable) "pkl.base#UInt8" -> TypeName.SHORT.boxIf(boxed).nullableIf(nullable)

View File

@@ -3,7 +3,7 @@
# This file is expected to be part of source control. # This file is expected to be part of source control.
com.github.ajalt.clikt:clikt-jvm:3.5.4=pklCodegenJava com.github.ajalt.clikt:clikt-jvm:3.5.4=pklCodegenJava
com.github.ajalt.clikt:clikt:3.5.4=pklCodegenJava com.github.ajalt.clikt:clikt:3.5.4=pklCodegenJava
com.squareup:javapoet:1.13.0=pklCodegenJava com.palantir.javapoet:javapoet:0.5.0=pklCodegenJava
com.tunnelvisionlabs:antlr4-runtime:4.9.0=pklCodegenJava,runtimeClasspath,testRuntimeClasspath com.tunnelvisionlabs:antlr4-runtime:4.9.0=pklCodegenJava,runtimeClasspath,testRuntimeClasspath
io.leangen.geantyref:geantyref:1.3.16=compileClasspath,implementationDependenciesMetadata,runtimeClasspath,testCompileClasspath,testImplementationDependenciesMetadata,testRuntimeClasspath io.leangen.geantyref:geantyref:1.3.16=compileClasspath,implementationDependenciesMetadata,runtimeClasspath,testCompileClasspath,testImplementationDependenciesMetadata,testRuntimeClasspath
javax.inject:javax.inject:1=testCompileClasspath,testImplementationDependenciesMetadata,testRuntimeClasspath javax.inject:javax.inject:1=testCompileClasspath,testImplementationDependenciesMetadata,testRuntimeClasspath

View File

@@ -2,7 +2,7 @@
# Manual edits can break the build and are not advised. # Manual edits can break the build and are not advised.
# This file is expected to be part of source control. # This file is expected to be part of source control.
com.google.code.findbugs:jsr305:3.0.2=compileClasspath,compileOnlyDependenciesMetadata com.google.code.findbugs:jsr305:3.0.2=compileClasspath,compileOnlyDependenciesMetadata
com.squareup:javapoet:1.13.0=generatorCompileClasspath,generatorImplementationDependenciesMetadata,generatorRuntimeClasspath com.palantir.javapoet:javapoet:0.5.0=generatorCompileClasspath,generatorImplementationDependenciesMetadata,generatorRuntimeClasspath
com.tunnelvisionlabs:antlr4-annotations:4.9.0=antlr com.tunnelvisionlabs:antlr4-annotations:4.9.0=antlr
com.tunnelvisionlabs:antlr4-runtime:4.9.0=antlr,compileClasspath,implementationDependenciesMetadata,runtimeClasspath,testCompileClasspath,testImplementationDependenciesMetadata,testRuntimeClasspath com.tunnelvisionlabs:antlr4-runtime:4.9.0=antlr,compileClasspath,implementationDependenciesMetadata,runtimeClasspath,testCompileClasspath,testImplementationDependenciesMetadata,testRuntimeClasspath
com.tunnelvisionlabs:antlr4:4.9.0=antlr com.tunnelvisionlabs:antlr4:4.9.0=antlr

View File

@@ -16,10 +16,10 @@
package org.pkl.core.generator package org.pkl.core.generator
import com.oracle.truffle.api.dsl.GeneratedBy import com.oracle.truffle.api.dsl.GeneratedBy
import com.squareup.javapoet.ClassName import com.palantir.javapoet.ClassName
import com.squareup.javapoet.JavaFile import com.palantir.javapoet.JavaFile
import com.squareup.javapoet.MethodSpec import com.palantir.javapoet.MethodSpec
import com.squareup.javapoet.TypeSpec import com.palantir.javapoet.TypeSpec
import javax.annotation.processing.AbstractProcessor import javax.annotation.processing.AbstractProcessor
import javax.annotation.processing.RoundEnvironment import javax.annotation.processing.RoundEnvironment
import javax.lang.model.SourceVersion import javax.lang.model.SourceVersion

View File

@@ -3,7 +3,7 @@
# This file is expected to be part of source control. # This file is expected to be part of source control.
com.github.ajalt.clikt:clikt-jvm:3.5.4=compileClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath com.github.ajalt.clikt:clikt-jvm:3.5.4=compileClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
com.github.ajalt.clikt:clikt:3.5.4=compileClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath com.github.ajalt.clikt:clikt:3.5.4=compileClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
com.squareup:javapoet:1.13.0=runtimeClasspath,testRuntimeClasspath com.palantir.javapoet:javapoet:0.5.0=runtimeClasspath,testRuntimeClasspath
com.squareup:kotlinpoet:1.6.0=runtimeClasspath,testRuntimeClasspath com.squareup:kotlinpoet:1.6.0=runtimeClasspath,testRuntimeClasspath
com.tunnelvisionlabs:antlr4-runtime:4.9.0=runtimeClasspath,testRuntimeClasspath com.tunnelvisionlabs:antlr4-runtime:4.9.0=runtimeClasspath,testRuntimeClasspath
io.leangen.geantyref:geantyref:1.3.16=runtimeClasspath,testRuntimeClasspath io.leangen.geantyref:geantyref:1.3.16=runtimeClasspath,testRuntimeClasspath