Skip to content

Update config, migrate to Kover#315

Merged
alexander-yevsyukov merged 27 commits into
masterfrom
update-config-etc
Jun 2, 2026
Merged

Update config, migrate to Kover#315
alexander-yevsyukov merged 27 commits into
masterfrom
update-config-etc

Conversation

@alexander-yevsyukov
Copy link
Copy Markdown
Collaborator

This PR applies latest config and migrates to Kover. Several minor tests were also added under jvm-runtime module.

Copilot AI review requested due to automatic review settings June 1, 2026 17:54
@alexander-yevsyukov alexander-yevsyukov marked this pull request as ready for review June 1, 2026 17:54
@alexander-yevsyukov alexander-yevsyukov self-assigned this Jun 1, 2026
Copy link
Copy Markdown
Collaborator Author

@alexander-yevsyukov alexander-yevsyukov left a comment

Choose a reason for hiding this comment

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

@copilot, please see my comments and questions.

Comment thread build.gradle.kts
Copy link
Copy Markdown
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

This PR syncs the repository with the latest shared config changes, migrates JVM coverage tooling from JaCoCo to Kover, and adds/extends unit tests in the jvm-runtime module to cover newly supported validation behaviors.

Changes:

  • Migrated coverage configuration to Kover (including updating build scripts and coverage-related build logic).
  • Standardized Gradle task grouping via a shared SpineTaskGroup constant and applied it across many custom tasks.
  • Added new jvm-runtime tests for ValidatableMessage, TemplateString placeholder filling, ViolationText messaging, and ValidatorRegistry parent context propagation.

Reviewed changes

Copilot reviewed 95 out of 103 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
version.gradle.kts Bumps published Validation version snapshot.
jvm-runtime/src/test/kotlin/io/spine/validation/ValidatorRegistrySpec.kt Adds tests for parent path/type propagation and field-path/value merging in violations.
jvm-runtime/src/test/kotlin/io/spine/validation/ValidatableMessageSpec.kt Adds a test ensuring ValidatableMessage.validate() default overload delegates correctly.
jvm-runtime/src/test/kotlin/io/spine/validation/TemplateStringExtsSpec.kt Adds tests for filling standard placeholders in template strings.
jvm-runtime/src/test/kotlin/io/spine/validation/diags/ViolationTextSpec.kt Adds tests for default vs custom error message selection.
docs/dependencies/pom.xml Updates generated dependency POM versions and switches to JaCoCo org.jacoco.report.
buildSrc/src/main/kotlin/write-manifest.gradle.kts Adds task metadata (group/description) using shared task-group constant.
buildSrc/src/main/kotlin/uber-jar-module.gradle.kts Updates ShadowJar config and publishing setup wiring.
buildSrc/src/main/kotlin/module.gradle.kts Replaces jacoco with Kover plugin in shared module convention.
buildSrc/src/main/kotlin/kmp-module.gradle.kts Updates copyright year (config sync).
buildSrc/src/main/kotlin/jvm-module.gradle.kts Updates copyright year (config sync) and task metadata.
buildSrc/src/main/kotlin/jacoco-kotlin-jvm.gradle.kts Marks legacy JaCoCo script plugin deprecated and emits warning.
buildSrc/src/main/kotlin/jacoco-kmm-jvm.gradle.kts Marks legacy JaCoCo script plugin deprecated and emits warning.
buildSrc/src/main/kotlin/io/spine/gradle/testing/Tasks.kt Moves test task grouping to SpineTaskGroup.
buildSrc/src/main/kotlin/io/spine/gradle/SpineTaskGroup.kt Introduces shared Gradle task-group constant (spine).
buildSrc/src/main/kotlin/io/spine/gradle/report/pom/PomGenerator.kt Adds task metadata using SpineTaskGroup.
buildSrc/src/main/kotlin/io/spine/gradle/report/license/LicenseReporter.kt Adds task metadata using SpineTaskGroup.
buildSrc/src/main/kotlin/io/spine/gradle/report/coverage/TaskName.kt Removes JaCoCo task-name enum (coverage migration).
buildSrc/src/main/kotlin/io/spine/gradle/report/coverage/PathMarker.kt Removes JaCoCo path-marker enum (coverage migration).
buildSrc/src/main/kotlin/io/spine/gradle/report/coverage/KoverConfig.kt Adds root aggregation + generated-code exclusion configuration for Kover.
buildSrc/src/main/kotlin/io/spine/gradle/report/coverage/JacocoConfig.kt Removes legacy JaCoCo aggregation configuration.
buildSrc/src/main/kotlin/io/spine/gradle/report/coverage/FileFilter.kt Removes JaCoCo-era file filtering utility.
buildSrc/src/main/kotlin/io/spine/gradle/report/coverage/FileExtensions.kt Removes JaCoCo-era file extension/path parsing helpers.
buildSrc/src/main/kotlin/io/spine/gradle/report/coverage/CodebaseFilter.kt Removes JaCoCo-era compiled-output filtering utility.
buildSrc/src/main/kotlin/io/spine/gradle/publish/PublishingExts.kt Adds task metadata for publishing/support jars; standardizes task group.
buildSrc/src/main/kotlin/io/spine/gradle/publish/IncrementGuard.kt Adds task metadata using SpineTaskGroup.
buildSrc/src/main/kotlin/io/spine/gradle/javascript/task/Webpack.kt Standardizes JS task grouping to SpineTaskGroup.
buildSrc/src/main/kotlin/io/spine/gradle/javascript/task/Publish.kt Standardizes JS task grouping to SpineTaskGroup.
buildSrc/src/main/kotlin/io/spine/gradle/javascript/task/LicenseReport.kt Standardizes JS task grouping to SpineTaskGroup.
buildSrc/src/main/kotlin/io/spine/gradle/javascript/task/JsTasks.kt Removes old per-language task-group constants in favor of SpineTaskGroup.
buildSrc/src/main/kotlin/io/spine/gradle/javascript/task/IntegrationTest.kt Standardizes JS task grouping to SpineTaskGroup.
buildSrc/src/main/kotlin/io/spine/gradle/javascript/task/Clean.kt Standardizes JS task grouping to SpineTaskGroup.
buildSrc/src/main/kotlin/io/spine/gradle/javascript/task/Check.kt Standardizes JS task grouping to SpineTaskGroup.
buildSrc/src/main/kotlin/io/spine/gradle/javascript/task/Assemble.kt Standardizes JS task grouping to SpineTaskGroup.
buildSrc/src/main/kotlin/io/spine/gradle/javadoc/ExcludeInternalDoclet.kt Adds task metadata using SpineTaskGroup.
buildSrc/src/main/kotlin/io/spine/gradle/github/pages/UpdateGitHubPages.kt Adds task metadata using SpineTaskGroup.
buildSrc/src/main/kotlin/io/spine/gradle/dart/task/Publish.kt Standardizes Dart task grouping to SpineTaskGroup.
buildSrc/src/main/kotlin/io/spine/gradle/dart/task/IntegrationTest.kt Standardizes Dart task grouping to SpineTaskGroup.
buildSrc/src/main/kotlin/io/spine/gradle/dart/task/DartTasks.kt Removes old per-language task-group constants in favor of SpineTaskGroup.
buildSrc/src/main/kotlin/io/spine/gradle/dart/task/Build.kt Standardizes Dart task grouping to SpineTaskGroup.
buildSrc/src/main/kotlin/io/spine/gradle/ConfigTester.kt Adds task metadata using SpineTaskGroup.
buildSrc/src/main/kotlin/io/spine/dependency/test/Kover.kt Bumps Kover plugin version constant.
buildSrc/src/main/kotlin/io/spine/dependency/test/Jacoco.kt Bumps JaCoCo engine version constant.
buildSrc/src/main/kotlin/io/spine/dependency/local/Validation.kt Updates referenced Validation artifact version.
buildSrc/src/main/kotlin/io/spine/dependency/local/ToolBase.kt Updates ToolBase dependency versions.
buildSrc/src/main/kotlin/io/spine/dependency/local/CoreJvmCompiler.kt Updates Core JVM compiler plugin versions.
buildSrc/src/main/kotlin/io/spine/dependency/local/Compiler.kt Updates Compiler dependency fallback versions.
buildSrc/src/main/kotlin/io/spine/dependency/local/Base.kt Updates Base dependency versions.
buildSrc/src/main/kotlin/DokkaExts.kt Adds task metadata using SpineTaskGroup.
buildSrc/src/main/kotlin/config-tester.gradle.kts Adds task metadata using SpineTaskGroup.
buildSrc/build.gradle.kts Bumps buildSrc Kover plugin version used on build classpath.
build.gradle.kts Switches root coverage wiring from JaCoCo to Kover.
AGENTS.md Adds guideline for asking at most one question per message.
.claude/commands/raise-coverage.md Adds Claude command wrapper for the raise-coverage skill.
.agents/tasks/spine-task-group-constant.md Adds task plan documenting the task-group constant migration.
.agents/tasks/gradle-caching-plan.md Adds build-caching rollout plan (draft).
.agents/tasks/enforce-max-line-length.md Adds plan to enforce max line length in agent guidance (draft).
.agents/tasks/cross-agent-skill-best-practices.md Adds cross-agent skills best-practices audit (draft).
.agents/tasks/buildsrc-gradle-review-findings.md Captures Gradle review findings and remediation plan (draft).
.agents/tasks/archive/raise-coverage.md Archives an earlier raise-coverage task plan.
.agents/skills/version-bumped/SKILL.md Updates wording to refer to skills without slash-command phrasing.
.agents/skills/version-bumped/agents/openai.yaml Adds OpenAI/Codex metadata for version-bumped.
.agents/skills/update-copyright/SKILL.md Tightens scope rules for automatic copyright updates.
.agents/skills/update-copyright/agents/openai.yaml Updates OpenAI/Codex metadata prompt.
.agents/skills/review-docs/SKILL.md Improves repo-aware filtering and adds API-doc scope constraints.
.agents/skills/review-docs/agents/openai.yaml Adds OpenAI/Codex metadata for review-docs.
.agents/skills/raise-coverage/SKILL.md Introduces raise-coverage skill with Kover-first workflow.
.agents/skills/raise-coverage/references/migrate-to-kover.md Adds detailed JaCoCo→Kover migration recipe.
.agents/skills/raise-coverage/references/coverage-signals.md Adds Kover/JaCoCo XML interpretation guide for coverage triage.
.agents/skills/raise-coverage/agents/openai.yaml Adds OpenAI/Codex metadata for raise-coverage.
.agents/skills/pre-pr/SKILL.md Improves repo-aware filtering and clarifies reviewer execution flow.
.agents/skills/pre-pr/agents/openai.yaml Adds OpenAI/Codex metadata for pre-pr.
.agents/skills/move-files/SKILL.md Updates wording to refer to skills without slash-command phrasing.
.agents/skills/kotlin-review/SKILL.md Improves repo-aware filtering for config vs consumer repos.
.agents/skills/kotlin-review/agents/openai.yaml Adds OpenAI/Codex metadata for kotlin-review.
.agents/skills/kotlin-engineer/SKILL.md Introduces Kotlin policy/pitfalls skill.
.agents/skills/kotlin-engineer/references/idioms.md Adds Kotlin API/idioms reference.
.agents/skills/kotlin-engineer/references/coroutines.md Adds coroutines/Flow pitfalls reference.
.agents/skills/kotlin-engineer/references/build-setup.md Adds Kotlin build-setup pitfalls reference.
.agents/skills/kotlin-engineer/agents/openai.yaml Adds OpenAI/Codex metadata for kotlin-engineer.
.agents/skills/java-to-kotlin/SKILL.md Updates wording to refer to skills without slash-command phrasing.
.agents/skills/gradle-review/spine-task-conventions.md Adds Spine Gradle task metadata conventions reference.
.agents/skills/gradle-review/SKILL.md Introduces gradle-review skill.
.agents/skills/gradle-review/practices/tasks.md Adds ingested Gradle tasks best-practices reference.
.agents/skills/gradle-review/practices/README.md Adds index and ingest procedure for Gradle practices.
.agents/skills/gradle-review/agents/openai.yaml Adds OpenAI/Codex metadata for gradle-review.
.agents/skills/dependency-update/SKILL.md Updates wording to refer to skills without slash-command phrasing.
.agents/skills/dependency-audit/SKILL.md Clarifies tool-agnostic language and updates skill references.
.agents/skills/dependency-audit/agents/openai.yaml Adds OpenAI/Codex metadata for dependency-audit.
.agents/skills/check-links/SKILL.md Makes link-checking skill Hugo-site-aware and adjusts phrasing.
.agents/skills/check-links/agents/openai.yaml Adds OpenAI/Codex metadata for check-links.
.agents/skills/bump-version/SKILL.md Clarifies commit message quoting/backticks guidance.
.agents/skills/bump-gradle/SKILL.md Updates wording to refer to skills without slash-command phrasing.
.agents/skills/api-discovery/SKILL.md Makes guidance tool-agnostic and adjusts phrasing.
.agents/skills/api-discovery/agents/openai.yaml Adds OpenAI/Codex metadata for api-discovery.
.agents/documentation-guidelines.md Adds rule preventing repo-internal references in API docs.
.agents/_TOC.md Adds TOC entries for new skills.

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Copilot AI review requested due to automatic review settings June 1, 2026 18:01
alexander-yevsyukov and others added 3 commits June 1, 2026 21:06
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Copy link
Copy Markdown
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

Copilot reviewed 95 out of 103 changed files in this pull request and generated 2 comments.

alexander-yevsyukov and others added 3 commits June 1, 2026 21:08
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Copilot AI review requested due to automatic review settings June 1, 2026 18:10
Copy link
Copy Markdown
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

Copilot reviewed 95 out of 103 changed files in this pull request and generated 1 comment.

Comment thread jvm-runtime/src/test/kotlin/io/spine/validation/ValidatableMessageSpec.kt Outdated
Copilot AI review requested due to automatic review settings June 1, 2026 18:24
Copy link
Copy Markdown
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

Copilot reviewed 95 out of 103 changed files in this pull request and generated 3 comments.

Comment thread jvm-runtime/src/test/kotlin/io/spine/validation/ValidatorRegistrySpec.kt Outdated
Comment thread docs/dependencies/pom.xml
Comment thread docs/dependencies/pom.xml
Copilot AI review requested due to automatic review settings June 1, 2026 20:12
Copy link
Copy Markdown
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

Copilot reviewed 102 out of 108 changed files in this pull request and generated 1 comment.

Comment thread jvm-runtime/src/test/kotlin/io/spine/validation/ValidateSpec.kt
Copilot AI review requested due to automatic review settings June 1, 2026 20:21
Copy link
Copy Markdown
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

Copilot reviewed 102 out of 108 changed files in this pull request and generated no new comments.

Comments suppressed due to low confidence (1)

jvm-runtime/src/test/kotlin/io/spine/validation/StandardPlaceholderSpec.kt:18

  • The Apache 2.0 license header was truncated in this file (the standard disclaimer lines about implied warranties and liability are missing), which makes it inconsistent with the rest of the codebase’s headers.

@codecov
Copy link
Copy Markdown

codecov Bot commented Jun 1, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 12.09%. Comparing base (3a7ad80) to head (dd8c421).

Additional details and impacted files
@@             Coverage Diff              @@
##             master     #315      +/-   ##
============================================
+ Coverage      9.53%   12.09%   +2.55%     
- Complexity       62       82      +20     
============================================
  Files            82       82              
  Lines          2034     2034              
  Branches        160      160              
============================================
+ Hits            194      246      +52     
+ Misses         1834     1786      -48     
+ Partials          6        2       -4     
🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Copy link
Copy Markdown
Collaborator

@armiol armiol left a comment

Choose a reason for hiding this comment

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

@alexander-yevsyukov LGTM in general. Please see my comments, though.

import org.junit.jupiter.api.DisplayName
import org.junit.jupiter.api.Test

@DisplayName("message validation extensions should")
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Let's at least capitalize the display name.

internal class MessageExtensionsSpec {

@Test
fun `delegate 'checkValid' to 'Validate_check'`() {
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

How about we use -> in such cases? E.g. delegate 'checkValid' to 'Validate->check'?

I remember, there is even a better arrow, but it's more difficult to type: :)
delegate 'checkValid' to 'Validate→check'

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

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

We cannot have > in a function name. The causes warning.

@alexander-yevsyukov alexander-yevsyukov merged commit 6aec690 into master Jun 2, 2026
10 checks passed
@alexander-yevsyukov alexander-yevsyukov deleted the update-config-etc branch June 2, 2026 15:22
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.

4 participants