From 6fb0d0d3cc057a3e7f9cb41076c24387e5aac19c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Brais=20Gab=C3=ADn?= Date: Sat, 10 Sep 2022 12:36:23 +0200 Subject: [PATCH 1/3] Simplify tests --- .../io/gitlab/arturbosch/detekt/cli/CliArgsSpec.kt | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) diff --git a/detekt-cli/src/test/kotlin/io/gitlab/arturbosch/detekt/cli/CliArgsSpec.kt b/detekt-cli/src/test/kotlin/io/gitlab/arturbosch/detekt/cli/CliArgsSpec.kt index 77c6549fedf..dd487f997df 100644 --- a/detekt-cli/src/test/kotlin/io/gitlab/arturbosch/detekt/cli/CliArgsSpec.kt +++ b/detekt-cli/src/test/kotlin/io/gitlab/arturbosch/detekt/cli/CliArgsSpec.kt @@ -111,15 +111,11 @@ internal class CliArgsSpec { } } - @Nested - inner class `--all-rules and --fail-fast lead to all rules being activated` { - - @ParameterizedTest - @ValueSource(strings = ["--all-rules", "--fail-fast"]) - fun `all rules active`(flag: String) { - val spec = parseArguments(arrayOf(flag)).toSpec() - assertThat(spec.rulesSpec.activateAllRules).isTrue() - } + @ParameterizedTest + @ValueSource(strings = ["--all-rules", "--fail-fast"]) + fun `--all-rules and --fail-fast lead to all rules being activated`(flag: String) { + val spec = parseArguments(arrayOf(flag)).toSpec() + assertThat(spec.rulesSpec.activateAllRules).isTrue() } @Nested From 15cc3c6c68f49ce9fad9310e5e1805f9e50551be Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Brais=20Gab=C3=ADn?= Date: Sat, 10 Sep 2022 12:58:30 +0200 Subject: [PATCH 2/3] Improve naming --- .../arturbosch/detekt/core/WorkaroundConfigurationKtSpec.kt | 4 ++-- .../arturbosch/detekt/core/config/ConfigurationsSpec.kt | 2 +- ...ide-here.yml => activate-all-rules-will-override-here.yml} | 0 ...ide-here.yml => activate-all-rules-wont-override-here.yml} | 0 4 files changed, 3 insertions(+), 3 deletions(-) rename detekt-core/src/test/resources/configs/{fail-fast-will-override-here.yml => activate-all-rules-will-override-here.yml} (100%) rename detekt-core/src/test/resources/configs/{fail-fast-wont-override-here.yml => activate-all-rules-wont-override-here.yml} (100%) diff --git a/detekt-core/src/test/kotlin/io/gitlab/arturbosch/detekt/core/WorkaroundConfigurationKtSpec.kt b/detekt-core/src/test/kotlin/io/gitlab/arturbosch/detekt/core/WorkaroundConfigurationKtSpec.kt index 2fe87cbfa8f..9ad7408cff8 100644 --- a/detekt-core/src/test/kotlin/io/gitlab/arturbosch/detekt/core/WorkaroundConfigurationKtSpec.kt +++ b/detekt-core/src/test/kotlin/io/gitlab/arturbosch/detekt/core/WorkaroundConfigurationKtSpec.kt @@ -42,10 +42,10 @@ class WorkaroundConfigurationKtSpec { } @Nested - inner class `fail fast override` { + inner class `activate all rules override` { private val config = ProcessingSpec { - config { resources = listOf(resourceUrl("/configs/fail-fast-will-override-here.yml")) } + config { resources = listOf(resourceUrl("/configs/activate-all-rules-will-override-here.yml")) } rules { activateAllRules = true } }.let { spec -> spec.workaroundConfiguration(spec.loadConfiguration()) diff --git a/detekt-core/src/test/kotlin/io/gitlab/arturbosch/detekt/core/config/ConfigurationsSpec.kt b/detekt-core/src/test/kotlin/io/gitlab/arturbosch/detekt/core/config/ConfigurationsSpec.kt index 307b6955db8..f0aad1a5822 100644 --- a/detekt-core/src/test/kotlin/io/gitlab/arturbosch/detekt/core/config/ConfigurationsSpec.kt +++ b/detekt-core/src/test/kotlin/io/gitlab/arturbosch/detekt/core/config/ConfigurationsSpec.kt @@ -81,7 +81,7 @@ class ConfigurationsSpec { private val config = ProcessingSpec { config { - resources = listOf(resourceUrl("/configs/fail-fast-wont-override-here.yml")) + resources = listOf(resourceUrl("/configs/activate-all-rules-wont-override-here.yml")) useDefaultConfig = true } rules { activateAllRules = true } diff --git a/detekt-core/src/test/resources/configs/fail-fast-will-override-here.yml b/detekt-core/src/test/resources/configs/activate-all-rules-will-override-here.yml similarity index 100% rename from detekt-core/src/test/resources/configs/fail-fast-will-override-here.yml rename to detekt-core/src/test/resources/configs/activate-all-rules-will-override-here.yml diff --git a/detekt-core/src/test/resources/configs/fail-fast-wont-override-here.yml b/detekt-core/src/test/resources/configs/activate-all-rules-wont-override-here.yml similarity index 100% rename from detekt-core/src/test/resources/configs/fail-fast-wont-override-here.yml rename to detekt-core/src/test/resources/configs/activate-all-rules-wont-override-here.yml From 9791e66781d41fef5e669f289ab628ea7a662751 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Brais=20Gab=C3=ADn?= Date: Sat, 10 Sep 2022 13:23:25 +0200 Subject: [PATCH 3/3] Remove fail fast --- .../io/gitlab/arturbosch/detekt/cli/CliArgs.kt | 10 ---------- .../io/gitlab/arturbosch/detekt/cli/Spec.kt | 3 +-- .../gitlab/arturbosch/detekt/cli/CliArgsSpec.kt | 9 +++------ .../gitlab/arturbosch/detekt/DetektTaskDslSpec.kt | 7 ------- .../kotlin/io/gitlab/arturbosch/detekt/Detekt.kt | 15 --------------- .../arturbosch/detekt/DetektCreateBaselineTask.kt | 11 ----------- .../detekt/extensions/DetektExtension.kt | 3 --- .../arturbosch/detekt/internal/SharedTasks.kt | 2 -- .../arturbosch/detekt/invoke/CliArgument.kt | 3 --- scripts/compare_releases.main.kts | 1 - 10 files changed, 4 insertions(+), 60 deletions(-) diff --git a/detekt-cli/src/main/kotlin/io/gitlab/arturbosch/detekt/cli/CliArgs.kt b/detekt-cli/src/main/kotlin/io/gitlab/arturbosch/detekt/cli/CliArgs.kt index 851f0a2ee8e..c2f8c02073f 100644 --- a/detekt-cli/src/main/kotlin/io/gitlab/arturbosch/detekt/cli/CliArgs.kt +++ b/detekt-cli/src/main/kotlin/io/gitlab/arturbosch/detekt/cli/CliArgs.kt @@ -107,16 +107,6 @@ class CliArgs { ) var buildUponDefaultConfig: Boolean = false - @Parameter( - names = ["--fail-fast"], - description = "DEPRECATED: please use '--build-upon-default-config' together with '--all-rules'. " + - "Same as 'build-upon-default-config' but explicitly running all available rules. " + - "With this setting only exit code 0 is returned when the analysis does not find a single code smell. " + - "Additional configuration files can override rule properties which includes turning off specific rules." - ) - @Deprecated("Please use the buildUponDefaultConfig and allRules flags instead.", ReplaceWith("allRules")) - var failFast: Boolean = false - @Parameter( names = ["--all-rules"], description = "Activates all available (even unstable) rules." diff --git a/detekt-cli/src/main/kotlin/io/gitlab/arturbosch/detekt/cli/Spec.kt b/detekt-cli/src/main/kotlin/io/gitlab/arturbosch/detekt/cli/Spec.kt index 4d5eaa55cef..cad47438c63 100644 --- a/detekt-cli/src/main/kotlin/io/gitlab/arturbosch/detekt/cli/Spec.kt +++ b/detekt-cli/src/main/kotlin/io/gitlab/arturbosch/detekt/cli/Spec.kt @@ -22,8 +22,7 @@ internal fun CliArgs.createSpec(output: Appendable, error: Appendable): Processi rules { autoCorrect = args.autoCorrect - @Suppress("DEPRECATION") - activateAllRules = args.failFast || args.allRules + activateAllRules = args.allRules maxIssuePolicy = when (val count = args.maxIssues) { null -> RulesSpec.MaxIssuePolicy.NonSpecified // prefer to read from config 0 -> RulesSpec.MaxIssuePolicy.NoneAllowed diff --git a/detekt-cli/src/test/kotlin/io/gitlab/arturbosch/detekt/cli/CliArgsSpec.kt b/detekt-cli/src/test/kotlin/io/gitlab/arturbosch/detekt/cli/CliArgsSpec.kt index dd487f997df..0ea9e7aebc4 100644 --- a/detekt-cli/src/test/kotlin/io/gitlab/arturbosch/detekt/cli/CliArgsSpec.kt +++ b/detekt-cli/src/test/kotlin/io/gitlab/arturbosch/detekt/cli/CliArgsSpec.kt @@ -8,8 +8,6 @@ import org.assertj.core.api.Assertions.assertThatExceptionOfType import org.assertj.core.api.Assertions.assertThatIllegalArgumentException import org.junit.jupiter.api.Nested import org.junit.jupiter.api.Test -import org.junit.jupiter.params.ParameterizedTest -import org.junit.jupiter.params.provider.ValueSource import java.nio.file.Path import java.nio.file.Paths @@ -111,10 +109,9 @@ internal class CliArgsSpec { } } - @ParameterizedTest - @ValueSource(strings = ["--all-rules", "--fail-fast"]) - fun `--all-rules and --fail-fast lead to all rules being activated`(flag: String) { - val spec = parseArguments(arrayOf(flag)).toSpec() + @Test + fun `--all-rules lead to all rules being activated`() { + val spec = parseArguments(arrayOf("--all-rules")).toSpec() assertThat(spec.rulesSpec.activateAllRules).isTrue() } diff --git a/detekt-gradle-plugin/src/functionalTest/kotlin/io/gitlab/arturbosch/detekt/DetektTaskDslSpec.kt b/detekt-gradle-plugin/src/functionalTest/kotlin/io/gitlab/arturbosch/detekt/DetektTaskDslSpec.kt index 1d95ff815b9..83d3324de58 100644 --- a/detekt-gradle-plugin/src/functionalTest/kotlin/io/gitlab/arturbosch/detekt/DetektTaskDslSpec.kt +++ b/detekt-gradle-plugin/src/functionalTest/kotlin/io/gitlab/arturbosch/detekt/DetektTaskDslSpec.kt @@ -507,7 +507,6 @@ class DetektTaskDslSpec { | debug = true | parallel = true | disableDefaultRuleSets = true - | failFast = true | allRules = true | autoCorrect = true | buildUponDefaultConfig = true @@ -546,11 +545,6 @@ class DetektTaskDslSpec { assertThat(result.output).contains("--all-rules") } - @Test - fun `enables fail fast`() { - assertThat(result.output).contains("--fail-fast") - } - @Test fun `enables auto correcting`() { assertThat(result.output).contains("--auto-correct") @@ -652,7 +646,6 @@ class DetektTaskDslSpec { | parallel = true | disableDefaultRuleSets = true | buildUponDefaultConfig = true - | failFast = false | allRules = false | ignoreFailures = false | autoCorrect = false diff --git a/detekt-gradle-plugin/src/main/kotlin/io/gitlab/arturbosch/detekt/Detekt.kt b/detekt-gradle-plugin/src/main/kotlin/io/gitlab/arturbosch/detekt/Detekt.kt index 7a7d29cb0a1..3a2af241842 100644 --- a/detekt-gradle-plugin/src/main/kotlin/io/gitlab/arturbosch/detekt/Detekt.kt +++ b/detekt-gradle-plugin/src/main/kotlin/io/gitlab/arturbosch/detekt/Detekt.kt @@ -17,7 +17,6 @@ import io.gitlab.arturbosch.detekt.invoke.DebugArgument import io.gitlab.arturbosch.detekt.invoke.DefaultReportArgument import io.gitlab.arturbosch.detekt.invoke.DetektInvoker import io.gitlab.arturbosch.detekt.invoke.DisableDefaultRuleSetArgument -import io.gitlab.arturbosch.detekt.invoke.FailFastArgument import io.gitlab.arturbosch.detekt.invoke.InputArgument import io.gitlab.arturbosch.detekt.invoke.JdkHomeArgument import io.gitlab.arturbosch.detekt.invoke.JvmTargetArgument @@ -132,15 +131,6 @@ abstract class Detekt @Inject constructor( get() = buildUponDefaultConfigProp.getOrElse(false) set(value) = buildUponDefaultConfigProp.set(value) - @get:Internal - internal abstract val failFastProp: Property - - @Deprecated("Please use the buildUponDefaultConfig and allRules flags instead.", ReplaceWith("allRules")) - var failFast: Boolean - @Input - get() = failFastProp.getOrElse(false) - set(value) = failFastProp.set(value) - @get:Internal internal abstract val allRulesProp: Property var allRules: Boolean @@ -235,7 +225,6 @@ abstract class Detekt @Inject constructor( DebugArgument(debugProp.getOrElse(false)), ParallelArgument(parallelProp.getOrElse(false)), BuildUponDefaultConfigArgument(buildUponDefaultConfigProp.getOrElse(false)), - FailFastArgument(failFastProp.getOrElse(false)), AllRulesArgument(allRulesProp.getOrElse(false)), AutoCorrectArgument(autoCorrectProp.getOrElse(false)), BasePathArgument(basePathProp.orNull), @@ -262,10 +251,6 @@ abstract class Detekt @Inject constructor( @TaskAction fun check() { - if (failFastProp.getOrElse(false)) { - logger.warn("'failFast' is deprecated. Please use 'buildUponDefaultConfig' together with 'allRules'.") - } - DetektInvoker.create(task = this, isDryRun = isDryRun).invokeCli( arguments = arguments.get(), ignoreFailures = ignoreFailures, diff --git a/detekt-gradle-plugin/src/main/kotlin/io/gitlab/arturbosch/detekt/DetektCreateBaselineTask.kt b/detekt-gradle-plugin/src/main/kotlin/io/gitlab/arturbosch/detekt/DetektCreateBaselineTask.kt index add1f5143c1..1c55255fd35 100644 --- a/detekt-gradle-plugin/src/main/kotlin/io/gitlab/arturbosch/detekt/DetektCreateBaselineTask.kt +++ b/detekt-gradle-plugin/src/main/kotlin/io/gitlab/arturbosch/detekt/DetektCreateBaselineTask.kt @@ -12,7 +12,6 @@ import io.gitlab.arturbosch.detekt.invoke.CreateBaselineArgument import io.gitlab.arturbosch.detekt.invoke.DebugArgument import io.gitlab.arturbosch.detekt.invoke.DetektInvoker import io.gitlab.arturbosch.detekt.invoke.DisableDefaultRuleSetArgument -import io.gitlab.arturbosch.detekt.invoke.FailFastArgument import io.gitlab.arturbosch.detekt.invoke.InputArgument import io.gitlab.arturbosch.detekt.invoke.JvmTargetArgument import io.gitlab.arturbosch.detekt.invoke.ParallelArgument @@ -79,11 +78,6 @@ abstract class DetektCreateBaselineTask : SourceTask() { @get:Optional abstract val buildUponDefaultConfig: Property - @get:Input - @get:Optional - @Deprecated("Please use the buildUponDefaultConfig and allRules flags instead.", ReplaceWith("allRules")) - abstract val failFast: Property - @get:Input @get:Optional abstract val ignoreFailures: Property @@ -132,7 +126,6 @@ abstract class DetektCreateBaselineTask : SourceTask() { DebugArgument(debug.getOrElse(false)), ParallelArgument(parallel.getOrElse(false)), BuildUponDefaultConfigArgument(buildUponDefaultConfig.getOrElse(false)), - FailFastArgument(@Suppress("DEPRECATION") failFast.getOrElse(false)), AutoCorrectArgument(autoCorrect.getOrElse(false)), AllRulesArgument(allRules.getOrElse(false)), BasePathArgument(basePathProp.orNull), @@ -148,10 +141,6 @@ abstract class DetektCreateBaselineTask : SourceTask() { @TaskAction fun baseline() { - if (@Suppress("DEPRECATION") failFast.getOrElse(false)) { - logger.warn("'failFast' is deprecated. Please use 'buildUponDefaultConfig' together with 'allRules'.") - } - DetektInvoker.create(task = this).invokeCli( arguments = arguments.get(), ignoreFailures = ignoreFailures.getOrElse(false), diff --git a/detekt-gradle-plugin/src/main/kotlin/io/gitlab/arturbosch/detekt/extensions/DetektExtension.kt b/detekt-gradle-plugin/src/main/kotlin/io/gitlab/arturbosch/detekt/extensions/DetektExtension.kt index d100b34ec2a..6e2c9bd64a7 100644 --- a/detekt-gradle-plugin/src/main/kotlin/io/gitlab/arturbosch/detekt/extensions/DetektExtension.kt +++ b/detekt-gradle-plugin/src/main/kotlin/io/gitlab/arturbosch/detekt/extensions/DetektExtension.kt @@ -59,9 +59,6 @@ open class DetektExtension @Inject constructor(objects: ObjectFactory) : CodeQua var parallel: Boolean = DEFAULT_PARALLEL_VALUE - @Deprecated("Please use the buildUponDefaultConfig and allRules flags instead.", ReplaceWith("allRules")) - var failFast: Boolean = DEFAULT_FAIL_FAST_VALUE - var allRules: Boolean = DEFAULT_ALL_RULES_VALUE var buildUponDefaultConfig: Boolean = DEFAULT_BUILD_UPON_DEFAULT_CONFIG_VALUE diff --git a/detekt-gradle-plugin/src/main/kotlin/io/gitlab/arturbosch/detekt/internal/SharedTasks.kt b/detekt-gradle-plugin/src/main/kotlin/io/gitlab/arturbosch/detekt/internal/SharedTasks.kt index 5997a817dc9..462aee547a7 100644 --- a/detekt-gradle-plugin/src/main/kotlin/io/gitlab/arturbosch/detekt/internal/SharedTasks.kt +++ b/detekt-gradle-plugin/src/main/kotlin/io/gitlab/arturbosch/detekt/internal/SharedTasks.kt @@ -62,7 +62,6 @@ internal fun Project.registerDetektTask( it.parallelProp.convention(provider { extension.parallel }) it.disableDefaultRuleSetsProp.convention(provider { extension.disableDefaultRuleSets }) it.buildUponDefaultConfigProp.convention(provider { extension.buildUponDefaultConfig }) - it.failFastProp.convention(provider { @Suppress("DEPRECATION") extension.failFast }) it.autoCorrectProp.convention(provider { extension.autoCorrect }) it.config.setFrom(provider { extension.config }) it.ignoreFailuresProp.convention(project.provider { extension.ignoreFailures }) @@ -96,7 +95,6 @@ internal fun Project.registerCreateBaselineTask( it.parallel.convention(project.provider { extension.parallel }) it.disableDefaultRuleSets.convention(project.provider { extension.disableDefaultRuleSets }) it.buildUponDefaultConfig.convention(project.provider { extension.buildUponDefaultConfig }) - @Suppress("DEPRECATION") it.failFast.convention(project.provider { extension.failFast }) it.autoCorrect.convention(project.provider { extension.autoCorrect }) it.basePathProp.convention(extension.basePath) it.allRules.convention(provider { extension.allRules }) diff --git a/detekt-gradle-plugin/src/main/kotlin/io/gitlab/arturbosch/detekt/invoke/CliArgument.kt b/detekt-gradle-plugin/src/main/kotlin/io/gitlab/arturbosch/detekt/invoke/CliArgument.kt index 01768b6f108..3ccc8a53db1 100644 --- a/detekt-gradle-plugin/src/main/kotlin/io/gitlab/arturbosch/detekt/invoke/CliArgument.kt +++ b/detekt-gradle-plugin/src/main/kotlin/io/gitlab/arturbosch/detekt/invoke/CliArgument.kt @@ -14,7 +14,6 @@ private const val PARALLEL_PARAMETER = "--parallel" private const val DISABLE_DEFAULT_RULESETS_PARAMETER = "--disable-default-rulesets" private const val BUILD_UPON_DEFAULT_CONFIG_PARAMETER = "--build-upon-default-config" private const val AUTO_CORRECT_PARAMETER = "--auto-correct" -private const val FAIL_FAST_PARAMETER = "--fail-fast" private const val ALL_RULES_PARAMETER = "--all-rules" private const val REPORT_PARAMETER = "--report" private const val GENERATE_CONFIG_PARAMETER = "--generate-config" @@ -109,8 +108,6 @@ internal data class BuildUponDefaultConfigArgument( override val value: Boolean ) : BoolCliArgument(value, BUILD_UPON_DEFAULT_CONFIG_PARAMETER) -internal data class FailFastArgument(override val value: Boolean) : BoolCliArgument(value, FAIL_FAST_PARAMETER) - internal data class AllRulesArgument(override val value: Boolean) : BoolCliArgument(value, ALL_RULES_PARAMETER) internal data class AutoCorrectArgument(override val value: Boolean) : BoolCliArgument(value, AUTO_CORRECT_PARAMETER) diff --git a/scripts/compare_releases.main.kts b/scripts/compare_releases.main.kts index b321f63213e..b48fa8e88f1 100755 --- a/scripts/compare_releases.main.kts +++ b/scripts/compare_releases.main.kts @@ -75,7 +75,6 @@ class CompareReleases : CliktCommand() { "--input", analysisPath, "--build-upon-default-config", - "--fail-fast", "--config", configPath, "--excludes",