* add kotlinter 3.14
* force trailing commas
* bump ktlint action to 1.5.1
* run ./gradlew formatKotlin
* disable kotlinter plugin because it triggers a problem in the kotlin compiler
* Fix deprecation warning in KAPT
> Task :kotlin-power-assert-plugin:kaptTestKotlin
Annotation processors discovery from compile classpath is deprecated.
Set 'kapt.include.compile.classpath=false' to disable discovery.
* Fix kotlinc warning in InfixFunctionTest
> Task :kotlin-power-assert-plugin:compileTestKotlin
w: P:\projects\contrib\github-kotlin-power-assert\kotlin-power-assert-plugin\src\test\kotlin\com\bnorm\power\InfixFunctionTest.kt: (357, 9): Name shadowed: main
* Fix kotlinc warning in PowerAssertCallTransformer
> Task :kotlin-power-assert-plugin:compileKotlin
w: P:\projects\contrib\github-kotlin-power-assert\kotlin-power-assert-plugin\src\main\kotlin\com\bnorm\power\PowerAssertCallTransformer.kt: (174, 77): Name shadowed: newVariables
* Fix Gradle 8 breaking change, add dependency between tasks.
> Task :kotlin-power-assert-gradle:publishPluginJar
Execution optimizations have been disabled for task ':kotlin-power-assert-gradle:publishPluginJar' to ensure correctness due to the following reasons:
- Gradle detected a problem with the following location: 'P:\projects\contrib\github-kotlin-power-assert\kotlin-power-assert-gradle\build\generated\source\buildConfig\main\main'. Reason: Task ':kotlin-power-assert-gradle:publishPluginJar' uses this output of task ':kotlin-power-assert-gradle:generateBuildConfig' without declaring an explicit or implicit dependency. This can lead to incorrect results being produced, depending on what order the tasks are executed. Please refer to https://docs.gradle.org/7.4.2/userguide/validation_problems.html#implicit_dependency for more details about this problem.
Gradle detected a problem with the following location: 'P:\projects\contrib\github-kotlin-power-assert\kotlin-power-assert-gradle\build\generated\source\buildConfig\main\main'. Reason: Task ':kotlin-power-assert-gradle:publishPluginJar' uses this output of task ':kotlin-power-assert-gradle:generateBuildConfig' without declaring an explicit or implicit dependency. This can lead to incorrect results being produced, depending on what order the tasks are executed. Please refer to https://docs.gradle.org/7.4.2/userguide/validation_problems.html#implicit_dependency for more details about this problem. This behaviour has been deprecated and is scheduled to be removed in Gradle 8.0. Execution optimizations are disabled to ensure correctness. See https://docs.gradle.org/7.4.2/userguide/more_about_tasks.html#sec:up_to_date_checks for more details.
* Fix https://github.com/gmazzo/gradle-buildconfig-plugin/issues/38 by using the latest version.
* Update Gradle wrapper to 7.x latest 7.6.1
* Build URI using built-in function instead of string manipulation.
* Reduce code duplication and be a bit more explicit.
* Upgrade plugin-publish to latest 1.1.0
Action "Deprecate the entire `pluginBundle` block when using Gradle version 7.6 or later,
mark for removal in version 8.0" from https://plugins.gradle.org/plugin/com.gradle.plugin-publish/1.0.0-rc-3
Gradle publishing has to execute publishPlugins directly, because the new version already applies the Maven Publish Plugin, that creates the task "publish", which publishes to registered repositories only.
* Add test repository to all modules (enabled by plugin-publish 1.0)
* Bump Gradle to latest 8.x stable 8.0.2
* Downgrade Gradle in sample project because of removed outdated API (details below), assuming Kotlin 1.7 to 1.8 bump is not wanted yet.
* What went wrong:
Failed to notify task execution graph listener.
> org.gradle.api.reporting.DirectoryReport.setEnabled(Z)V
Caused by: java.lang.NoSuchMethodError: org.gradle.api.reporting.DirectoryReport.setEnabled(Z)V
at org.jetbrains.kotlin.gradle.testing.internal.KotlinTestReport.disableTestReporting(KotlinTestReport.kt:242)
https://github.com/JetBrains/kotlin/blob/v1.7.0/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/testing/internal/KotlinTestReport.kt#L242
Gradle 8.0 removed that deprecated property:
https://docs.gradle.org/current/userguide/upgrading_version_7.html#report_and_testreport_api_cleanup
Fixed in Kotlin 1.8.0: https://github.com/JetBrains/kotlin/commit/e902ae7c09639559ac734842ebe5c383ec6e6e14
Deprecation warnings in sample project are all related to this, run: `sample$ gradlew build --warning-mode=all` for more info.