Skip to content

Force consumerId properties in plugin components#75

Merged
alexander-yevsyukov merged 12 commits intomasterfrom
force-consumer-id-property
Mar 12, 2026
Merged

Force consumerId properties in plugin components#75
alexander-yevsyukov merged 12 commits intomasterfrom
force-consumer-id-property

Conversation

@alexander-yevsyukov
Copy link
Contributor

@alexander-yevsyukov alexander-yevsyukov commented Mar 12, 2026

This PR addresses the change of the behaviour of multiple interface inheritance in Kotlin classes in version 2.3.10.

Previously, an open val introduced in an abstract base could be overridden by implementing an mix-in interface which overrides the getter. Now the class-provided val prevails. This PR updates the plugin parts that have such multiple inheritance to supply consumerId property via the final class.

Other notable changes

  • config was partially updated brining the Writer agent skill.

Copilot AI review requested due to automatic review settings March 12, 2026 20:22
@alexander-yevsyukov alexander-yevsyukov self-assigned this Mar 12, 2026
@alexander-yevsyukov alexander-yevsyukov marked this pull request as ready for review March 12, 2026 20:23
Copy link
Contributor

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

Updates plugin components and build tooling to accommodate Kotlin 2.3.10’s changed multiple-interface-inheritance behavior, ensuring consumerId is resolved from the final class and aligning dependency/tooling versions.

Changes:

  • Explicitly override consumerId in affected plugin renderer/components to avoid Kotlin 2.3.10 inheritance ambiguity.
  • Bump core/project and dependency versions (Core JVM compiler, Spine Base, Protobuf, etc.).
  • Adjust Gradle build tooling (test logging listener, repositories, Kotlin compiler options, forced deps).

Reviewed changes

Copilot reviewed 24 out of 26 changed files in this pull request and generated 5 comments.

Show a summary per file
File Description
version.gradle.kts Bumps published Core JVM compiler snapshot version.
signal/src/main/kotlin/io/spine/tools/core/jvm/signal/Renderers.kt Forces consumerId resolution in renderer class.
pom.xml Updates project and dependency versions (Spine Base/Annotations, Protobuf toolchain).
message-group/src/main/kotlin/io/spine/tools/core/jvm/mgroup/GroupedMessageRenderer.kt Forces consumerId resolution in renderer class.
entity/src/main/kotlin/io/spine/tools/core/jvm/entity/EntityStateRenderer.kt Forces consumerId resolution in renderer class.
dependencies.md Regenerates dependency/license report for updated versions.
config Updates submodule pointer.
buildSrc/src/main/kotlin/module.gradle.kts Forces additional dependency (Base.environment) in configurations.
buildSrc/src/main/kotlin/io/spine/gradle/testing/Logging.kt Replaces Groovy interop closure with native TestListener.
buildSrc/src/main/kotlin/io/spine/gradle/repo/Repositories.kt Adds JetBrains cache redirector and broadens IntelliJ dependency include patterns.
buildSrc/src/main/kotlin/io/spine/gradle/kotlin/KotlinConfig.kt Switches JVM default methods configuration to typed DSL property.
buildSrc/src/main/kotlin/io/spine/dependency/local/ModelCompiler.kt Updates local model compiler snapshot version.
buildSrc/src/main/kotlin/io/spine/dependency/local/CoreJvmCompiler.kt Updates local Core JVM compiler versions used for dogfooding/tests.
buildSrc/src/main/kotlin/io/spine/dependency/local/Change.kt Updates spine-change snapshot version.
buildSrc/src/main/kotlin/io/spine/dependency/local/Base.kt Updates Spine Base snapshot versions.
buildSrc/src/main/kotlin/io/spine/dependency/lib/Protobuf.kt Upgrades Protobuf and protobuf-gradle-plugin versions.
buildSrc/src/main/kotlin/io/spine/dependency/build/Ksp.kt Bumps KSP version.
buildSrc/build.gradle.kts Upgrades Guava and protobuf-gradle-plugin versions for buildSrc.
build.gradle.kts Adds base.environment to buildscript classpath.
.agents/skills/writer/assets/templates/kotlin-java-example.md Adds a docs template asset.
.agents/skills/writer/assets/templates/kdoc-example.md Adds a KDoc template asset.
.agents/skills/writer/assets/templates/doc-page.md Adds a documentation page template asset.
.agents/skills/writer/agents/openai.yaml Adds a “writer” agent configuration.
.agents/skills/writer/SKILL.md Adds repository-specific documentation skill guidance.
.agents/documentation-guidelines.md Fixes/updates link to the text-flow diagram asset.

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

You can also share your feedback on Copilot code review. Take the survey.

Copy link

@chatgpt-codex-connector chatgpt-codex-connector bot left a comment

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 9ce825372c

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@alexander-yevsyukov alexander-yevsyukov merged commit 9134824 into master Mar 12, 2026
10 of 11 checks passed
@alexander-yevsyukov alexander-yevsyukov deleted the force-consumer-id-property branch March 12, 2026 21:04
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