Skip to content

Release 4.2.0#618

Merged
vincentlauvlwj merged 35 commits into
masterfrom
dev1
May 16, 2026
Merged

Release 4.2.0#618
vincentlauvlwj merged 35 commits into
masterfrom
dev1

Conversation

@vincentlauvlwj
Copy link
Copy Markdown
Member

No description provided.

@vincentlauvlwj vincentlauvlwj requested a review from Copilot May 2, 2026 07:36
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR prepares the 4.2.0 release across the repository. It primarily bumps the published version, updates Kotlin/KSP-related build tooling, and rewrites the KSP Maven integration while doing broad cleanup of imports and source headers.

Changes:

  • Bumps the project release/version metadata and refreshes many source headers for the 2026 release cycle.
  • Migrates KSP-related build/test infrastructure to newer Kotlin/KSP tooling and simplifies generated-code formatting.
  • Replaces the previous Kotlin Maven extension-based KSP integration with dedicated Maven mojos for source/test-source generation.

Reviewed changes

Copilot reviewed 154 out of 155 changed files in this pull request and generated 8 comments.

Show a summary per file
File Description
ktorm.version Releases the root project as 4.2.0.
ktorm-support-sqlserver/src/test/kotlin/org/ktorm/support/sqlserver/CommonTest.kt Removes deprecated org.ktorm.database.use import from SQL Server tests.
ktorm-support-sqlserver/src/main/kotlin/org/ktorm/support/sqlserver/SqlTypes.kt Header year refresh only.
ktorm-support-sqlserver/src/main/kotlin/org/ktorm/support/sqlserver/SqlServerFormatter.kt Header year refresh only.
ktorm-support-sqlserver/src/main/kotlin/org/ktorm/support/sqlserver/SqlServerDialect.kt Header year refresh only.
ktorm-support-sqlite/src/test/kotlin/org/ktorm/support/sqlite/QueryTest.kt Removes deprecated org.ktorm.database.use import from SQLite tests.
ktorm-support-sqlite/src/test/kotlin/org/ktorm/support/sqlite/CommonTest.kt Removes deprecated org.ktorm.database.use import from SQLite tests.
ktorm-support-sqlite/src/main/kotlin/org/ktorm/support/sqlite/SQLiteFormatter.kt Header year refresh only.
ktorm-support-sqlite/src/main/kotlin/org/ktorm/support/sqlite/SQLiteExpressionVisitor.kt Header year refresh only.
ktorm-support-sqlite/src/main/kotlin/org/ktorm/support/sqlite/SQLiteDialect.kt Header refresh and explicit kotlin.use import.
ktorm-support-sqlite/src/main/kotlin/org/ktorm/support/sqlite/InsertOrUpdate.kt Header year refresh only.
ktorm-support-sqlite/src/main/kotlin/org/ktorm/support/sqlite/Functions.kt Header year refresh only.
ktorm-support-sqlite/src/main/kotlin/org/ktorm/support/sqlite/BulkInsert.kt Header year refresh only.
ktorm-support-postgresql/src/test/kotlin/org/ktorm/support/postgresql/QueryTest.kt Removes deprecated org.ktorm.database.use import from PostgreSQL tests.
ktorm-support-postgresql/src/test/kotlin/org/ktorm/support/postgresql/CommonTest.kt Removes deprecated org.ktorm.database.use import from PostgreSQL tests.
ktorm-support-postgresql/src/main/kotlin/org/ktorm/support/postgresql/SqlTypes.kt Header year refresh only.
ktorm-support-postgresql/src/main/kotlin/org/ktorm/support/postgresql/PostgreSqlFormatter.kt Header year refresh only.
ktorm-support-postgresql/src/main/kotlin/org/ktorm/support/postgresql/PostgreSqlExpressionVisitor.kt Header year refresh only.
ktorm-support-postgresql/src/main/kotlin/org/ktorm/support/postgresql/PostgreSqlDialect.kt Header year refresh only.
ktorm-support-postgresql/src/main/kotlin/org/ktorm/support/postgresql/Lock.kt Header year refresh only.
ktorm-support-postgresql/src/main/kotlin/org/ktorm/support/postgresql/InsertOrUpdate.kt Header year refresh only.
ktorm-support-postgresql/src/main/kotlin/org/ktorm/support/postgresql/ILike.kt Header year refresh only.
ktorm-support-postgresql/src/main/kotlin/org/ktorm/support/postgresql/HStore.kt Header year refresh only.
ktorm-support-postgresql/src/main/kotlin/org/ktorm/support/postgresql/Global.kt Header year refresh only.
ktorm-support-postgresql/src/main/kotlin/org/ktorm/support/postgresql/Functions.kt Header year refresh only.
ktorm-support-postgresql/src/main/kotlin/org/ktorm/support/postgresql/EarthDistance.kt Header year refresh only.
ktorm-support-postgresql/src/main/kotlin/org/ktorm/support/postgresql/DefaultValue.kt Header year refresh only.
ktorm-support-postgresql/src/main/kotlin/org/ktorm/support/postgresql/BulkInsert.kt Header year refresh only.
ktorm-support-oracle/src/test/kotlin/org/ktorm/support/oracle/CommonTest.kt Removes deprecated org.ktorm.database.use import from Oracle tests.
ktorm-support-oracle/src/main/kotlin/org/ktorm/support/oracle/OracleFormatter.kt Header year refresh only.
ktorm-support-oracle/src/main/kotlin/org/ktorm/support/oracle/OracleDialect.kt Header year refresh only.
ktorm-support-mysql/src/test/kotlin/org/ktorm/support/mysql/CommonTest.kt Removes deprecated org.ktorm.database.use import from MySQL tests.
ktorm-support-mysql/src/main/kotlin/org/ktorm/support/mysql/NaturalJoin.kt Header year refresh only.
ktorm-support-mysql/src/main/kotlin/org/ktorm/support/mysql/MySqlFormatter.kt Header year refresh only.
ktorm-support-mysql/src/main/kotlin/org/ktorm/support/mysql/MySqlExpressionVisitor.kt Header year refresh only.
ktorm-support-mysql/src/main/kotlin/org/ktorm/support/mysql/MySqlDialect.kt Header year refresh only.
ktorm-support-mysql/src/main/kotlin/org/ktorm/support/mysql/MatchAgainst.kt Header year refresh only.
ktorm-support-mysql/src/main/kotlin/org/ktorm/support/mysql/Lock.kt Header year refresh only.
ktorm-support-mysql/src/main/kotlin/org/ktorm/support/mysql/InsertOrUpdate.kt Header year refresh only.
ktorm-support-mysql/src/main/kotlin/org/ktorm/support/mysql/Global.kt Header year refresh only.
ktorm-support-mysql/src/main/kotlin/org/ktorm/support/mysql/Functions.kt Header year refresh only.
ktorm-support-mysql/src/main/kotlin/org/ktorm/support/mysql/DefaultValue.kt Header year refresh only.
ktorm-support-mysql/src/main/kotlin/org/ktorm/support/mysql/BulkInsert.kt Header year refresh only.
ktorm-ksp-spi/src/main/kotlin/org/ktorm/ksp/spi/TableMetadata.kt Header year refresh only.
ktorm-ksp-spi/src/main/kotlin/org/ktorm/ksp/spi/ExtCodeGenerator.kt Header year refresh only.
ktorm-ksp-spi/src/main/kotlin/org/ktorm/ksp/spi/DatabaseNamingStrategy.kt Header year refresh only.
ktorm-ksp-spi/src/main/kotlin/org/ktorm/ksp/spi/ColumnMetadata.kt Header year refresh only.
ktorm-ksp-spi/src/main/kotlin/org/ktorm/ksp/spi/CodingNamingStrategy.kt Header year refresh only.
ktorm-ksp-spi/ktorm-ksp-spi.gradle.kts Upgrades KSP API dependency for the SPI module.
ktorm-ksp-compiler/src/test/kotlin/org/ktorm/ksp/compiler/BaseKspTest.kt Migrates KSP tests to the newer compile-testing API.
ktorm-ksp-compiler/src/main/resources/ktorm-ksp-compiler/.editorconfig Removes bundled formatter config resource.
ktorm-ksp-compiler/src/main/kotlin/org/ktorm/ksp/compiler/util/SqlTypeMappings.kt Header year refresh only.
ktorm-ksp-compiler/src/main/kotlin/org/ktorm/ksp/compiler/util/Namings.kt Header year refresh only.
ktorm-ksp-compiler/src/main/kotlin/org/ktorm/ksp/compiler/util/KspExtensions.kt Adds primitive-type detection helper for code generation.
ktorm-ksp-compiler/src/main/kotlin/org/ktorm/ksp/compiler/parser/MetadataParser.kt Header year refresh only.
ktorm-ksp-compiler/src/main/kotlin/org/ktorm/ksp/compiler/generator/UpdateFunctionGenerator.kt Header year refresh only.
ktorm-ksp-compiler/src/main/kotlin/org/ktorm/ksp/compiler/generator/TableClassGenerator.kt Header year refresh only.
ktorm-ksp-compiler/src/main/kotlin/org/ktorm/ksp/compiler/generator/RefsPropertyGenerator.kt Header year refresh only.
ktorm-ksp-compiler/src/main/kotlin/org/ktorm/ksp/compiler/generator/RefsClassGenerator.kt Header year refresh only.
ktorm-ksp-compiler/src/main/kotlin/org/ktorm/ksp/compiler/generator/PseudoConstructorFunctionGenerator.kt Adjusts undefined-value comparison for primitive/inline properties.
ktorm-ksp-compiler/src/main/kotlin/org/ktorm/ksp/compiler/generator/FileGenerator.kt Sets explicit indentation on generated KotlinPoet files.
ktorm-ksp-compiler/src/main/kotlin/org/ktorm/ksp/compiler/generator/EntitySequencePropertyGenerator.kt Header year refresh only.
ktorm-ksp-compiler/src/main/kotlin/org/ktorm/ksp/compiler/generator/CopyFunctionGenerator.kt Header year refresh only.
ktorm-ksp-compiler/src/main/kotlin/org/ktorm/ksp/compiler/generator/ComponentFunctionGenerator.kt Header year refresh only.
ktorm-ksp-compiler/src/main/kotlin/org/ktorm/ksp/compiler/generator/AddFunctionGenerator.kt Header year refresh only.
ktorm-ksp-compiler/src/main/kotlin/org/ktorm/ksp/compiler/formatter/StandaloneKtLintCodeFormatter.kt Removes standalone ktlint-backed formatter implementation.
ktorm-ksp-compiler/src/main/kotlin/org/ktorm/ksp/compiler/formatter/SimpleCodeFormatter.kt Introduces a lightweight regex-based formatter.
ktorm-ksp-compiler/src/main/kotlin/org/ktorm/ksp/compiler/formatter/KtLintCodeFormatter.kt Removes embedded ktlint rule-engine formatter implementation.
ktorm-ksp-compiler/src/main/kotlin/org/ktorm/ksp/compiler/formatter/CodeFormatter.kt Simplifies formatter interface documentation.
ktorm-ksp-compiler/src/main/kotlin/org/ktorm/ksp/compiler/KtormProcessorProvider.kt Switches processor formatting strategy to the new simple formatter option.
ktorm-ksp-compiler/ktorm-ksp-compiler.gradle.kts Upgrades KSP/test tooling and drops ktlint formatter dependencies.
ktorm-ksp-compiler-maven-plugin/src/main/resources/META-INF/plexus/components.xml Removes old Plexus component-based Kotlin Maven extension registration.
ktorm-ksp-compiler-maven-plugin/src/main/kotlin/org/ktorm/ksp/compiler/maven/KtormKspMavenPluginExtension.kt Deletes legacy Kotlin Maven plugin extension implementation.
ktorm-ksp-compiler-maven-plugin/src/main/kotlin/org/ktorm/ksp/compiler/maven/KspMavenLogger.kt Adds a Maven-backed KSP logger adapter.
ktorm-ksp-compiler-maven-plugin/src/main/kotlin/org/ktorm/ksp/compiler/maven/AbstractGenerateSourcesMojo.kt Adds shared logic for new Maven source-generation mojos.
ktorm-ksp-compiler-maven-plugin/src/main/java/org/ktorm/ksp/compiler/maven/GenerateTestSourcesMojo.java Adds Maven goal for test-source generation.
ktorm-ksp-compiler-maven-plugin/src/main/java/org/ktorm/ksp/compiler/maven/GenerateSourcesMojo.java Adds Maven goal for main-source generation.
ktorm-ksp-compiler-maven-plugin/ktorm-ksp-compiler-maven-plugin.gradle.kts Rebuilds Maven plugin packaging/dependencies around the new mojo approach.
ktorm-ksp-annotations/src/test/kotlin/org/ktorm/ksp/annotation/UndefinedTest.kt Updates undefined sentinel identity assertions for boxed primitives/inline types.
ktorm-ksp-annotations/src/main/kotlin/org/ktorm/ksp/annotation/Undefined.kt Header year refresh only.
ktorm-ksp-annotations/src/main/kotlin/org/ktorm/ksp/annotation/Table.kt Removes explicit SOURCE retention from @Table.
ktorm-ksp-annotations/src/main/kotlin/org/ktorm/ksp/annotation/References.kt Removes explicit SOURCE retention from @References.
ktorm-ksp-annotations/src/main/kotlin/org/ktorm/ksp/annotation/PrimaryKey.kt Removes explicit SOURCE retention from @PrimaryKey.
ktorm-ksp-annotations/src/main/kotlin/org/ktorm/ksp/annotation/Ignore.kt Removes explicit SOURCE retention from @Ignore.
ktorm-ksp-annotations/src/main/kotlin/org/ktorm/ksp/annotation/Column.kt Removes explicit SOURCE retention from @Column.
ktorm-jackson/src/main/kotlin/org/ktorm/jackson/PackageVersion.kt.tmpl Header year refresh only.
ktorm-jackson/src/main/kotlin/org/ktorm/jackson/KtormModule.kt Header year refresh only.
ktorm-jackson/src/main/kotlin/org/ktorm/jackson/JsonSqlType.kt Header year refresh only.
ktorm-jackson/src/main/kotlin/org/ktorm/jackson/JacksonExtensions.kt Header year refresh only.
ktorm-jackson/src/main/kotlin/org/ktorm/jackson/EntityTypeResolverBuilder.kt Header year refresh only.
ktorm-jackson/src/main/kotlin/org/ktorm/jackson/EntitySerializers.kt Header year refresh only.
ktorm-jackson/src/main/kotlin/org/ktorm/jackson/EntityDeserializers.kt Header year refresh only.
ktorm-global/src/test/kotlin/org/ktorm/global/GlobalQueryTest.kt Removes deprecated org.ktorm.database.use import from global tests.
ktorm-global/src/test/kotlin/org/ktorm/global/GlobalDatabaseTest.kt Removes deprecated org.ktorm.database.use import from global tests.
ktorm-global/src/main/kotlin/org/ktorm/global/Query.kt Header year refresh only.
ktorm-global/src/main/kotlin/org/ktorm/global/Global.kt Header year refresh only.
ktorm-global/src/main/kotlin/org/ktorm/global/EntitySequence.kt Header year refresh only.
ktorm-global/src/main/kotlin/org/ktorm/global/Dml.kt Header year refresh only.
ktorm-global/src/main/kotlin/org/ktorm/global/Aggregations.kt Header year refresh only.
ktorm-core/src/test/kotlin/org/ktorm/entity/InlineClassTest.kt Removes deprecated org.ktorm.database.use import from core tests.
ktorm-core/src/test/kotlin/org/ktorm/database/DatabaseTest.kt Switches test import to stdlib kotlin.use.
ktorm-core/src/test/kotlin/org/ktorm/BaseTest.kt Removes deprecated org.ktorm.database.use import from base tests.
ktorm-core/src/main/kotlin/org/ktorm/schema/TypeReference.kt Header year refresh only.
ktorm-core/src/main/kotlin/org/ktorm/schema/Table.kt Header year refresh only.
ktorm-core/src/main/kotlin/org/ktorm/schema/SqlTypes.kt Header year refresh only.
ktorm-core/src/main/kotlin/org/ktorm/schema/SqlType.kt Header year refresh only.
ktorm-core/src/main/kotlin/org/ktorm/schema/RefCounter.kt Header year refresh only.
ktorm-core/src/main/kotlin/org/ktorm/schema/ColumnBindingHandler.kt Header year refresh only.
ktorm-core/src/main/kotlin/org/ktorm/schema/Column.kt Header year refresh only.
ktorm-core/src/main/kotlin/org/ktorm/schema/BaseTable.kt Header year refresh only.
ktorm-core/src/main/kotlin/org/ktorm/logging/Slf4jLoggerAdapter.kt Header year refresh only.
ktorm-core/src/main/kotlin/org/ktorm/logging/NoOpLogger.kt Header year refresh only.
ktorm-core/src/main/kotlin/org/ktorm/logging/Logger.kt Header year refresh only.
ktorm-core/src/main/kotlin/org/ktorm/logging/JdkLoggerAdapter.kt Header year refresh only.
ktorm-core/src/main/kotlin/org/ktorm/logging/ConsoleLogger.kt Header year refresh only.
ktorm-core/src/main/kotlin/org/ktorm/logging/CommonsLoggerAdapter.kt Header year refresh only.
ktorm-core/src/main/kotlin/org/ktorm/logging/AndroidLoggerAdapter.kt Header year refresh only.
ktorm-core/src/main/kotlin/org/ktorm/expression/SqlFormatter.kt Header year refresh only.
ktorm-core/src/main/kotlin/org/ktorm/expression/SqlExpressions.kt Header year refresh only.
ktorm-core/src/main/kotlin/org/ktorm/expression/SqlExpressionVisitorInterceptor.kt Header year refresh only.
ktorm-core/src/main/kotlin/org/ktorm/expression/SqlExpressionVisitor.kt Header year refresh only.
ktorm-core/src/main/kotlin/org/ktorm/entity/Reflections.kt Header year refresh only.
ktorm-core/src/main/kotlin/org/ktorm/entity/EntitySequence.kt Header year refresh only.
ktorm-core/src/main/kotlin/org/ktorm/entity/EntityImplementation.kt Header year refresh only.
ktorm-core/src/main/kotlin/org/ktorm/entity/EntityGrouping.kt Header year refresh only.
ktorm-core/src/main/kotlin/org/ktorm/entity/EntityExtensionsApi.kt Header year refresh only.
ktorm-core/src/main/kotlin/org/ktorm/entity/EntityExtensions.kt Header year refresh only.
ktorm-core/src/main/kotlin/org/ktorm/entity/EntityDml.kt Header year refresh only.
ktorm-core/src/main/kotlin/org/ktorm/entity/Entity.kt Header year refresh only.
ktorm-core/src/main/kotlin/org/ktorm/entity/DefaultMethodHandler.kt Header year refresh only.
ktorm-core/src/main/kotlin/org/ktorm/dsl/WindowFunctions.kt Header year refresh only.
ktorm-core/src/main/kotlin/org/ktorm/dsl/QuerySource.kt Header year refresh only.
ktorm-core/src/main/kotlin/org/ktorm/dsl/QueryRowSet.kt Header year refresh only.
ktorm-core/src/main/kotlin/org/ktorm/dsl/Query.kt Header year refresh only.
ktorm-core/src/main/kotlin/org/ktorm/dsl/Operators.kt Header year refresh only.
ktorm-core/src/main/kotlin/org/ktorm/dsl/Dml.kt Header year refresh only.
ktorm-core/src/main/kotlin/org/ktorm/dsl/CountExpression.kt Header year refresh only.
ktorm-core/src/main/kotlin/org/ktorm/dsl/CaseWhen.kt Header year refresh only.
ktorm-core/src/main/kotlin/org/ktorm/dsl/Aggregation.kt Header year refresh only.
ktorm-core/src/main/kotlin/org/ktorm/database/TransactionManager.kt Header year refresh only.
ktorm-core/src/main/kotlin/org/ktorm/database/SqlDialect.kt Header refresh and explicit kotlin.use import.
ktorm-core/src/main/kotlin/org/ktorm/database/SpringManagedTransactionManager.kt Header year refresh only.
ktorm-core/src/main/kotlin/org/ktorm/database/Keywords.kt Header year refresh only.
ktorm-core/src/main/kotlin/org/ktorm/database/JdbcTransactionManager.kt Header year refresh only.
ktorm-core/src/main/kotlin/org/ktorm/database/JdbcExtensions.kt Deprecates Ktorm's custom use extension in favor of stdlib kotlin.use.
ktorm-core/src/main/kotlin/org/ktorm/database/Database.kt Imports stdlib kotlin.use for database internals.
ktorm-core/src/main/kotlin/org/ktorm/database/CachedRowSetMetadata.kt Header year refresh only.
ktorm-core/src/main/kotlin/org/ktorm/database/CachedRowSet.kt Minor Kotlin cleanup around Array aliasing, copyOf, and use.
buildSrc/src/main/kotlin/ktorm.tuples-codegen.gradle.kts Updates generated source header year.
buildSrc/src/main/kotlin/ktorm.source-header-check.gradle.kts Updates enforced source header template year.
buildSrc/src/main/kotlin/ktorm.publish.gradle.kts Switches publishing endpoints to newer Sonatype Central URLs.
buildSrc/src/main/kotlin/ktorm.dokka.gradle.kts Updates Dokka source-link URL construction style.
buildSrc/src/main/kotlin/ktorm.base.gradle.kts Migrates Kotlin compile config to compilerOptions and suppresses Java 8 option warnings.
buildSrc/build.gradle.kts Upgrades Kotlin Gradle plugin and Dokka versions.
.gitignore Ignores the .kotlin workspace directory.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines +51 to +58
override fun execute() {
try {
val config = buildKspConfig()
if (log.isDebugEnabled) {
log.debug("[ktorm-ksp-compiler] ksp config: ${sharedObjectMapper.writeValueAsString(config)}")
}

val code = KotlinSymbolProcessing(config, listOf(KtormProcessorProvider()), KspMavenLogger(log)).execute()
Comment on lines 22 to 23
@Target(AnnotationTarget.CLASS)
@Retention(AnnotationRetention.SOURCE)
public annotation class Table(
Comment on lines 24 to 25
@Target(AnnotationTarget.PROPERTY)
@Retention(AnnotationRetention.SOURCE)
public annotation class References(
Comment on lines 22 to 23
@Target(AnnotationTarget.PROPERTY)
@Retention(AnnotationRetention.SOURCE)
public annotation class PrimaryKey
Comment on lines 22 to 23
@Target(AnnotationTarget.PROPERTY)
@Retention(AnnotationRetention.SOURCE)
public annotation class Ignore
Comment on lines 25 to 26
@Target(AnnotationTarget.PROPERTY)
@Retention(AnnotationRetention.SOURCE)
public annotation class Column(
Comment on lines +69 to +76
javaSourceRoots = emptyList(),
javaOutputDir = sourceOutputDirectory,
jdkHome = jdkHome(),
jvmTarget = jvmTarget(),
jvmDefaultMode = "enable",
moduleName = project.artifactId,
sourceRoots = sourceRoots,
commonSourceRoots = emptyList(),
Comment on lines +21 to +29
override fun format(fileName: String, code: String): String {
return code
.replace(Regex("""\(\s*"""), "(")
.replace(Regex("""\s*\)"""), ")")
.replace(Regex(""",\s*"""), ", ")
.replace(Regex(""",\s*\)"""), ")")
.replace(Regex("""\s+get\(\)\s="""), " get() =")
.replace(Regex("""\s+=\s+"""), " = ")
.replace("import org.ktorm.ksp.`annotation`", "import org.ktorm.ksp.annotation")
@vincentlauvlwj vincentlauvlwj merged commit 94e3641 into master May 16, 2026
10 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants