diffplug / diffplug/spotless

take toggleOffOn into account for linters

Abierto
#719 3 comentarios 0 reacciones 0 asignados Ver en GitHub
enhancement
Lenguaje dominante
Java
Estrellas
5.6k
Forks
559
Merge medio
1 d 14 h
PR fusionados (30 d)
43

Descripción

First of all, I'm expecting a solution to this to be something extremely obvious but here it is.
Spotless setup in the project looks like this:
```
apply plugin: "com.diffplug.spotless"

spotless {

ext.targetBranch = "develop"
if (project.hasProperty('target_branch') && project.getProperty('target_branch')?.trim()) {
targetBranch = project.getProperty('target_branch')
}

ratchetFrom "origin/$targetBranch"

kotlin {
target '**/*.kt'
trimTrailingWhitespace()
indentWithSpaces()
toggleOffOn('format:off', 'format:on')

ktlint().userData([
'max_line_length': '120',
'disabled_rules' : 'import-ordering' //https://github.com/pinterest/ktlint/issues/527, https://youtrack.jetbrains.com/issue/KT-10974
])
}
}
```

The problem occurs when trying to exclude a part of the code using `spotless:off` and `spotless:on`
I also tried (as seen in the snippet above) with different tags but running `./gradlew spotlessCheck` still fails.

The part where it fails looks something like this:
```

// format:off
private fun functionName(): ReturnType = when (this) {
// A bunch of stuff, one line is >120 chars, our line limit
}
// format:on

```
Reason for failure:
```
java.lang.AssertionError: Error on line: 70, column: 1
Exceeded max line length (120)
```

What is it that I'm missing here?

Guía de contribución

Abrir la guía de contribución

Línea de trabajo

Empieza reproduciendo el fallo con ./gradlew spotlessCheck utilizando la configuración de Kotlin Spotless mostrada en la incidencia. Sigue cómo se gestionan los marcadores toggleOffOn antes de que se ejecute el paso ktlint(), y verifica después que la región marcada se excluye y que el comando tiene éxito a pesar de su línea larga.

Escrito por el modelo de indexación a partir del texto del issue.

Evaluación

Stack tecnológico
kotlin
Área
tooling
Tipo de issue
Error
Dificultad
3/5
Tiempo estimado
1-2 días
Estado de actividad
Estancado
Claridad
Bastante claro
Aptitud para principiantes
35/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.