Hacktoberfest 2026: as issues que os mantenedores marcaram para outubro, abertas e boas para iniciantes. Ver issues do Hacktoberfest

chained method wrapping inconsistent when comments inside arguments

Aberta
#2,171 0 comentários 0 reações 0 responsáveis Ver no GitHub

Ninguém assumiu esta issue ainda.

Avaliação

Dificuldade
3/5
Tempo estimado
1-2 dias
Facilidade para iniciantes
45/100
Tipo de issue
Bug
Clareza
Razoavelmente clara
Status de atividade
Estagnada
Stack de tecnologia
php
Domínio
tooling

Direção de pesquisa

Reproduza os dois casos do playground vinculado, comparando o wrapping de métodos encadeados com e sem o comentário dentro do argumento de secondMethod. Rastreie como o formatter trata comentários e chamadas encadeadas e, em seguida, adicione um fixture de regressão usando a entrada e as saídas fornecidas. Está concluído quando o comentário não alterar mais o wrapping de forma inesperada e o fixture passar.

Escrita pelo modelo de indexação a partir do texto da issue.

Descrição

When a comment is added inside the argument of secondMethod below, it changes the way that the chained methods are wrapped in a way that doesn't seem intuitive for it to affect.

@prettier/plugin-php v0.19.3
Playground link

Input:

<?php

        $builder->firstMethod()->secondMethod([
            new ClassName('c-' . $some_long_variable, [
                EXTEND::THIS, LINE::SO, IT::HASNEWLINES
            ]),
           new ClassName('c-' . $some_long_variable, [
                EXTEND::THIS, LINE::SO, IT::HASNEWLINES
            ]),
        ]);

Output:

<?php

$builder
    ->firstMethod()
    ->secondMethod([
        new ClassName("c-" . $some_long_variable, [
            EXTEND::THIS,
            LINE::SO,
            IT::HASNEWLINES,
        ]),
        new ClassName("c-" . $some_long_variable, [
            EXTEND::THIS,
            LINE::SO,
            IT::HASNEWLINES,
        ]),
    ]);

@prettier/plugin-php v0.19.3
Playground link

Input:

<?php

        $builder->firstMethod()->secondMethod([
            new ClassName('c-' . $some_long_variable, [
                EXTEND::THIS, LINE::SO, IT::HASNEWLINES
            ]),
           //  comment 
           new ClassName('c-' . $some_long_variable, [
                EXTEND::THIS, LINE::SO, IT::HASNEWLINES
            ]),
        ]);

Output:

<?php

$builder->firstMethod()->secondMethod([
    new ClassName("c-" . $some_long_variable, [
        EXTEND::THIS,
        LINE::SO,
        IT::HASNEWLINES,
    ]),
    //  comment
    new ClassName("c-" . $some_long_variable, [
        EXTEND::THIS,
        LINE::SO,
        IT::HASNEWLINES,
    ]),
]);

Linguagem predominante
PHP
Estrelas
1.9k
Forks
139
Métricas de merge de PRs
Nenhum PR com merge em 30d

Guia de contribuição

Abrir o guia de contribuição

Primeiros passos

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Mais de prettier/plugin-php

Todas as issues de prettier/plugin-php

Issues semelhantes

Mais issues de PHP

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.