prettier / prettier/plugin-php
Prettier adds incorrect semicolon with nested foreach, for, try/catch
Nadie ha tomado este issue todavía.
- Lenguaje dominante
- PHP
- Estrellas
- 1.9k
- Forks
- 139
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Descripción
@prettier/plugin-php v0.18.8
Playground link
Input:
<?php
foreach( $x as $y)
foreach ($a as $b) {
$a = $x;
}
foreach ($x as $y)
for ($a = 1; $a < 10; a++) {
$a = $x;
};
if( $foo)
foreach($b as $a)
{
$foo = bar;
}
if($foo)
try {
} catch (Exception $e){
}
Output:
<?php
foreach ($x as $y) {
foreach ($a as $b) {
$a = $x;
};
}
foreach ($x as $y) {
for ($a = 1; $a < 10; a++) {
$a = $x;
};
}
if ($foo) {
foreach ($b as $a) {
$foo = bar;
};
}
if ($foo) {
try {
} catch (Exception $e) {
};
}
I think this shows the issue. The expected output should be the same as the output, without the extra semicolons.
If you run prettier on the same file a second time, it will removed the extra semicolons. I know this affects foreach, for, try/catch, but I'm not sure that is a comprehensive list.
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.
Línea de trabajo
Comienza con el ejemplo de Playground enlazado y compara la primera pasada de formateo con la segunda. Reproduce los casos anidados de foreach, for, try/catch y casos relacionados, y verifica después que el formateo no produzca punto y coma adicionales y permanezca sin cambios al ejecutarse de nuevo.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- php
- Á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
- 45/100