Skip to content

Commit

Permalink
Remove fail fast
Browse files Browse the repository at this point in the history
  • Loading branch information
BraisGabin committed Sep 10, 2022
1 parent 5ced26f commit 29d233f
Show file tree
Hide file tree
Showing 10 changed files with 4 additions and 58 deletions.
Expand Up @@ -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."
Expand Down
Expand Up @@ -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
Expand Down
Expand Up @@ -111,10 +111,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()
}

Expand Down
Expand Up @@ -507,7 +507,6 @@ class DetektTaskDslSpec {
| debug = true
| parallel = true
| disableDefaultRuleSets = true
| failFast = true
| allRules = true
| autoCorrect = true
| buildUponDefaultConfig = true
Expand Down Expand Up @@ -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")
Expand Down Expand Up @@ -652,7 +646,6 @@ class DetektTaskDslSpec {
| parallel = true
| disableDefaultRuleSets = true
| buildUponDefaultConfig = true
| failFast = false
| allRules = false
| ignoreFailures = false
| autoCorrect = false
Expand Down
Expand Up @@ -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
Expand Down Expand Up @@ -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<Boolean>

@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<Boolean>
var allRules: Boolean
Expand Down Expand Up @@ -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),
Expand All @@ -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,
Expand Down
Expand Up @@ -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
Expand Down Expand Up @@ -79,11 +78,6 @@ abstract class DetektCreateBaselineTask : SourceTask() {
@get:Optional
abstract val buildUponDefaultConfig: Property<Boolean>

@get:Input
@get:Optional
@Deprecated("Please use the buildUponDefaultConfig and allRules flags instead.", ReplaceWith("allRules"))
abstract val failFast: Property<Boolean>

@get:Input
@get:Optional
abstract val ignoreFailures: Property<Boolean>
Expand Down Expand Up @@ -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),
Expand All @@ -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),
Expand Down
Expand Up @@ -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
Expand Down
Expand Up @@ -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 })
Expand Down Expand Up @@ -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 })
Expand Down
Expand Up @@ -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"
Expand Down Expand Up @@ -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)
1 change: 0 additions & 1 deletion scripts/compare_releases.main.kts
Expand Up @@ -75,7 +75,6 @@ class CompareReleases : CliktCommand() {
"--input",
analysisPath,
"--build-upon-default-config",
"--fail-fast",
"--config",
configPath,
"--excludes",
Expand Down

0 comments on commit 29d233f

Please sign in to comment.