Add a mode which preserves carriage returns
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Aptitud para principiantes
- 25/100
Línea de trabajo
Comienza trazando cómo se cargan, analizan y escriben los archivos .ss y el formato .ss.asar, incluida la normalización de retornos de carro descrita aquí. Define el comportamiento del modo en torno a conservar \r y hacer round-trip de los archivos sin cambiar otras reglas de escape; se considera terminado cuando los snapshots .ss.asar conservan los retornos de carro, mientras que los snapshots normales mantienen el comportamiento actual.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Here are two important properties of the .ss snapshot files:
- exactly character-for-character accurate, no slop around leading or trailing whitespace, no forbidden characters
- what you see in the snapshot file is exactly what you get, except for the following escaping rules which preserve the above
- the following characters are escaped:
𐝃->𐝃𐝃,𐝁->𐝃𐝁(they are from an untranslated dead language) - if the first character on a line within a snapshot is
╔then it is replaced with𐝁(this preserves ASCII art within snapshots)
- the following characters are escaped:
This combination of character-accurate + WYSIWYG breaks down in only one place - line endings. You can't see them, and git's complex and poorly understood line-ending-mutation rules mean that most teams can't reliably do source control that differentiates between \n and \r\n.
Rather than randomly punch users in the face with this triviality, we do the following:
- Internally, every text-based snapshot in spotless-snapshot has a
.replace("\r", ""), so snapshots will never fail because of line-ending differences - New
.ssfiles are always written using\nline endings - If an
.ssfile is loaded from disk with\r\n, it is converted and parsed using\n, but will be written back to disk as\r\n
However, this means that the snapshots are not exactly character-for-character accurate because they do not preserve \r. For users that want to preserve \r, we could add a mode which preserves the \r character if the user uses the .ss.asar format
- #1
Adding support for storing \r within .ss files might be possible (maybe encode them as 𐝃r?), but doesn't seem like a good idea.
- Lenguaje dominante
- Kotlin
- Estrellas
- 101
- Forks
- 18
- Merge medio
- 6 d 11 h
- PR fusionados (30 d)
- 5
Guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de diffplug/selfie
-
Selfie JVM Snapshot Garbage Collection is overly zealous when using multiple test suites in gradle Abiertobug jvm
Dificultad 4/5 3-5 días Aptitud para principiantes 48/100
-
enhancement jvm
Dificultad 5/5 Más de una semana Aptitud para principiantes 25/100
-
bug jvm
Dificultad 4/5 3-5 días Aptitud para principiantes 35/100
-
bug docs jvm
Dificultad 2/5 1-3 horas Aptitud para principiantes 50/100
-
bug jvm py
Dificultad 2/5 1-3 horas Aptitud para principiantes 48/100
Todos los issues de diffplug/selfie
Issues similares
-
enhancement
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
Richie97/track-history#325 ·
-
bug CLI documentation reliability
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
-
KW-related Type:bug UI / UX
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
RevenueCat/purchases-android#4299 · 1 comentario ·
-
[Bug] 统计页面无法重置token和汇率 Abiertobug
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
AAswordman/Operit#1265 · 3 comentarios ·