Skip to content

Conversation

@alexander-yevsyukov
Copy link
Contributor

@alexander-yevsyukov alexander-yevsyukov commented Sep 18, 2025

This PR updates config and make the Plugin class use string constant for the Protobuf Gradle Plugin ID.

@alexander-yevsyukov alexander-yevsyukov self-assigned this Sep 18, 2025
Copy link

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 updates configuration dependencies and improves the Plugin class by replacing dynamic dependency references with hardcoded string constants for better maintainability and reliability.

  • Updates the project version from 0.12.0 to 0.13.0 across all configuration files
  • Replaces dynamic Protobuf Gradle plugin ID with static string literal "com.google.protobuf"
  • Refactors configuration directory structure and updates Gradle build settings

Reviewed Changes

Copilot reviewed 70 out of 74 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
version.gradle.kts Updates project version from 0.12.0 to 0.13.0
gradle-plugin/src/main/kotlin/io/spine/tools/prototap/gradle/Plugin.kt Replaces dynamic plugin ID reference with hardcoded string constant
pom.xml Updates version references and dependency versions including JUnit upgrade
gradle.properties Improves Gradle configuration with better memory settings and parallel builds
settings.gradle.kts Removes Foojay toolchain plugin configuration
buildSrc/* Extensive configuration updates and new build script plugins
dependencies.md Auto-generated dependency report updates
config Updates Git submodule commit reference
Files not reviewed (1)
  • .idea/dictionaries/common.xml: Language not supported

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.


import com.google.common.annotations.VisibleForTesting
import com.google.protobuf.gradle.GenerateProtoTask
import com.google.protobuf.gradle.id
Copy link

Choose a reason for hiding this comment

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

Copilot's comment makes sense to me.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

This is the extension function imported:

fun <T : Any> NamedDomainObjectContainer<T>.id(id: String, action: (T.() -> Unit)? = null) {
    action?.let { create(id, it) } ?: create(id)
}

We use it here:

private fun GenerateProtoTask.addProtocPlugin() {
    plugins.apply {
        id(PROTOC_PLUGIN_NAME) {  // <----- HERE
            val path = project.codeGeneratorRequestFile
            val encoded = path.base64Encoded()
            option(encoded)
        }
    }
}

@alexander-yevsyukov alexander-yevsyukov merged commit a0b1f74 into master Sep 18, 2025
6 checks passed
@alexander-yevsyukov alexander-yevsyukov deleted the update-config branch September 18, 2025 15:09
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.

3 participants