Skip to content

Releases: Tooark/vscode-ark-format

shell1.0.13

Choose a tag to compare

@github-actions github-actions released this 14 Sep 03:27

Release shell1.0.13

Alterações desta versão

  • Versão do pacote atualizada de 1.0.12 para 1.0.13.
  • Correção: as regras de espaçamento do motor interno eram aplicadas ao trecho de código da linha inteiro, e esse trecho incluía o comentário (#) até o fim da linha. Consequências:
    • collapseSpaces removia os espaços de alinhamento em colunas dentro de comentários — por exemplo, blocos Usage:/Env: de cabeçalhos de script perdiam a tabulação visual (# scripts/check.sh --all everything above virava # scripts/check.sh --all everything above).
    • As regras de palavras-chave e de função alteravam código citado em comentários: for(for (, if[if [, ;then; then, name(){name() {.
  • O texto do comentário passa a ser preservado literalmente. O comportamento restante não muda:
    • As regras continuam sendo aplicadas ao código que precede o comentário (if[ x ];then # notaif [ x ]; then # nota).
    • O espaço entre o código e o # de um comentário inline continua sendo colapsado (echo ok # notaecho ok # nota).
    • O espaço após o marcador continua sendo normalizado (#texto# texto), sem tocar no restante do comentário.
    • Shebang, ${#var} e ${var##padrão} continuam sendo reconhecidos como não-comentário.
  • Testes: novos casos de regressão em applyShellSpacing (alinhamento em comentário de linha inteira e inline, código citado em comentário, regras ainda aplicadas ao código antes do #, espaço do marcador) e um caso de documento com cabeçalho Usage:/Env: verificado como ponto fixo do formatador.
  • O engine shfmt não é afetado. Sem novas opções de configuração.

Informações Adicionais

  • Tag relacionada: shell1.0.13
  • Data de lançamento: 2026-09-13

powershell1.2.3

Choose a tag to compare

@github-actions github-actions released this 14 Sep 03:27

Release powershell1.2.3

Alterações desta versão

  • Versão do pacote atualizada de 1.2.2 para 1.2.3.
  • Correção: as regras de espaçamento eram aplicadas ao trecho de código da linha inteiro, e esse trecho incluía o comentário de linha (#) até o fim da linha. Consequências:
    • collapseSpaces removia os espaços de alinhamento em colunas dentro de comentários — por exemplo, blocos Uso:/Env: de cabeçalhos de script perdiam a tabulação visual (# ./build.ps1 -Target Test executa apenas os testes virava # ./build.ps1 -Target Test executa apenas os testes).
    • A regra de espaço antes da chave de abertura alterava código citado em comentários: function Test{function Test {, if ($x){if ($x) {.
  • O texto do comentário passa a ser preservado literalmente. O comportamento restante não muda:
    • As regras continuam sendo aplicadas ao código que precede o comentário (if ($x){ # notaif ($x) { # nota).
    • O espaço entre o código e o # de um comentário inline continua sendo colapsado ($x = 1 # nota$x = 1 # nota).
    • O espaço após o marcador continua sendo normalizado (#texto# texto), sem tocar no restante do comentário; #> segue preservado.
    • # escapado por crase (`#) e shebang continuam sendo reconhecidos como não-comentário.
  • Comentários em bloco (<# ... #>) já não passavam por essas regras e continuam regidos exclusivamente por formatBlockComments.
  • Testes: novos casos de regressão em applyPowerShellSpacing (alinhamento em comentário de linha inteira e inline, código citado em comentário, regras ainda aplicadas ao código antes do #, espaço do marcador, # escapado por crase) e um caso de documento com cabeçalho Uso:/Env: verificado como ponto fixo do formatador.
  • Sem novas opções de configuração. Mesma correção aplicada ao formatador de Shell na versão 1.0.13.

Informações Adicionais

  • Tag relacionada: powershell1.2.3
  • Data de lançamento: 2026-09-13

powershell1.2.2

Choose a tag to compare

@github-actions github-actions released this 20 Jul 23:00

Release powershell1.2.2

Alterações desta versão

  • Versão do pacote atualizada de 1.2.1 para 1.2.2.
  • Correção: here-strings (@' ... '@ e @" ... "@) declaradas indentadas (por exemplo, dentro de um bloco if, function ou try) deixavam de ser preservadas: o formatador aplicava a indentação do bloco a todas as linhas do corpo e também ao terminador ('@/"@). Como o PowerShell exige que o terminador da here-string fique na coluna 0, o script resultante ficava inválido e o conteúdo literal (por exemplo, código C# passado a Add-Type -TypeDefinition) era corrompido.
  • Here-strings agora são tratadas pelo mecanismo de heredoc e preservadas verbatim: o corpo é mantido byte a byte e o terminador permanece na coluna 0, independentemente do nível de indentação da linha de abertura.
  • A correção é específica do PowerShell: o comportamento do formatador de Shell (que reindenta, de propósito, conteúdo de strings multilinha como filtros jq/comandos aws) permanece inalterado.
  • Detecção de here-string reescrita sobre getQuoteModeAfterLine (fonte única de verdade), reconhecendo corretamente as aberturas @'/@" que antes escapavam à detecção.
  • Testes: novos casos de regressão para here-string indentada (@' e @") com verificação de conteúdo verbatim, terminador na coluna 0 e idempotência; suítes de shared, powershell e shell validadas.
  • Sem novas opções de configuração e sem mudança de comportamento nos demais construtos.

Informações Adicionais

  • Tag relacionada: powershell1.2.2
  • Data de lançamento: 2026-07-20

shell1.0.12

Choose a tag to compare

@github-actions github-actions released this 06 Jul 10:40

Release shell1.0.12

Alterações desta versão

  • Bump de versão do pacote ark-format-shell: 1.0.11 -> 1.0.12.
  • Campo sponsor adicionado ao manifesto da extensão, habilitando o botão de apoio (GitHub Sponsors) na página do Marketplace.
  • GIFs de demonstração do README regenerados (shell-settings.gif e shell-using.gif) com capturas atualizadas e maior qualidade.
  • Sem alterações funcionais no motor de formatação.

Informações Adicionais

  • Tag relacionada: shell1.0.12
  • Data de lançamento: 2026-07-06

shell1.0.11

Choose a tag to compare

@github-actions github-actions released this 06 Jul 01:53

Release shell1.0.11

Alterações desta versão

  • Bump de versão do pacote ark-format-shell: 1.0.10 -> 1.0.11.
  • Correções na formatação de seleção (range formatting):
    • Strings multilinha passam a ser rastreadas como no formatador de documento: o conteúdo literal é preservado sem reprocessamento (sem colapso de espaços nem reindentação) e palavras-chave dentro de strings (ex.: do, then) não alteram mais a indentação das linhas seguintes.
    • Heredocs preservados também no modo sem reindentação (rangeFormatting.reindent desligado); antes o corpo do heredoc sofria colapso de espaços ao formatar a seleção.
    • As decisões de indentação passam a usar apenas as partes de código da linha (fora de aspas), alinhando o comportamento da seleção ao do documento completo.
  • Correção no cálculo do nível base de contexto (rangeFormatting.useDocumentContext): palavras-chave dentro de strings nas linhas anteriores à seleção não inflam mais o nível base de indentação.
  • Refatoração interna sem mudança de comportamento:
    • Helpers de edição (buildFullDocumentEdits/buildRangeEdits) e de espaçamento (collapseDoubleSpaces/normalizeCommentSpacing) promovidos ao pacote compartilhado @tooark/ark-format-shared.
    • Remoção de código sem uso no pacote compartilhado e nos re-exports internos da extensão.
  • Novos testes:
    • Regressões da formatação de seleção com strings multilinha e heredocs.
    • Testes da camada de extensão: ativação, providers de documento/intervalo, engine shfmt (sucesso, texto idêntico e erro de sintaxe convertido em diagnóstico) e a proteção de segurança que ignora shfmt.path/shfmt.flags definidos em escopos de workspace.
  • Seção de apoio (Support) adicionada aos READMEs (EN/PT-BR).
  • Cobertura de testes consolidada do monorepo disponível via pnpm test:coverage.

Informações Adicionais

  • Tag relacionada: shell1.0.11
  • Data de lançamento: 2026-07-05

powershell1.2.1

Choose a tag to compare

@github-actions github-actions released this 06 Jul 10:39

Release powershell1.2.1

Alterações desta versão

  • Bump de versão do pacote ark-format-powershell: 1.2.0 -> 1.2.1.
  • Campo sponsor adicionado ao manifesto da extensão, habilitando o botão de apoio (GitHub Sponsors) na página do Marketplace.
  • GIFs de demonstração do README regenerados (powershell-settings.gif e powershell-using.gif) com capturas atualizadas e maior qualidade.
  • Sem alterações funcionais no motor de formatação.

Informações Adicionais

  • Tag relacionada: powershell1.2.1
  • Data de lançamento: 2026-07-06

powershell1.2.0

Choose a tag to compare

@github-actions github-actions released this 06 Jul 01:53

Release powershell1.2.0

Alterações desta versão

  • Bump de versão do pacote ark-format-powershell: 1.1.0 -> 1.2.0.
  • Nova opção arkFormatPowerShell.alignAssignments (padrão false, opt-in):
    • Alinha verticalmente os operadores de atribuição (=, +=, -=, *=, /=, %=, ??=) em blocos contíguos de atribuições de variáveis ($var = ...) e entradas de hashtable (Chave = valor), no espírito da regra PSAlignAssignmentStatement do PSScriptAnalyzer.
    • Alinhamento pelo caractere = final do operador, calculado por linha: o nome mais longo do bloco fica com exatamente um espaço antes do seu operador.
    • Blocos encerram em linha em branco, comentário ou outra instrução; atribuições em níveis de indentação diferentes alinham separadamente; nomes acima de 40 caracteres ficam fora do alinhamento.
    • Conteúdo de here-strings e blocos de comentário (<# ... #>) nunca é alterado; continuações com crase (`) ou pipe (|) pertencem à atribuição anterior e não quebram o bloco.
    • Compatível com todos os fins de linha (LF, CRLF e Auto), preservando o fim de linha configurado.
    • Padrão desligado por decisão de design: alinhamento vertical gera ruído de diff (adicionar um nome mais longo reformata as linhas vizinhas). Com a opção desligada, o collapseSpaces normaliza alinhamentos existentes para um espaço.
  • Correção de indentação: cláusulas else/elseif/catch/finally em linha própria (após um } isolado) não são mais dedentadas duas vezes; passam a alinhar no mesmo nível do bloco anterior, como já acontecia no estilo } catch {.
  • Correção de indentação: conteúdo de parênteses multilinha (@(...), $(...), (...) de chamadas com argumentos quebrados e blocos param (...)) passa a receber um nível de indentação, com o ) de fechamento alinhado à linha que abriu; aninhamentos (array em hashtable, hashtable em array) acumulam níveis corretamente. Arrays em linha única e conteúdo de here-strings permanecem intocados; parênteses dentro de strings e comentários não contam para o balanceamento.
  • Limpeza de localização: remoção da chave não utilizada ark.incompatible.flag dos bundles l10n (EN e pt-BR); ela pertence ao cenário do shfmt e só é consumida pelo formatador de Shell.
  • Motor de alinhamento em blocos promovido ao pacote compartilhado (@tooark/ark-format-shared/align), com parser injetado por linguagem; o formatador de Makefile foi refatorado para consumir o mesmo motor, sem mudança de comportamento.
  • Aplicado na formatação de documento e de seleção (range formatting).
  • Refatoração interna sem mudança de comportamento:
    • Helpers de edição (buildFullDocumentEdits/buildRangeEdits) e de espaçamento (collapseDoubleSpaces/normalizeCommentSpacing) promovidos ao pacote compartilhado @tooark/ark-format-shared.
    • Remoção de código sem uso (coleção de diagnósticos inerte e re-exports órfãos) e guards do provider de intervalo alinhados ao padrão das demais extensões.
  • Novos testes da camada de extensão: ativação, providers de documento/intervalo (padrão CRLF), reindentação de seleção com contexto e here-strings ignoradas no cálculo do contexto.
  • Seção de apoio (Support) adicionada aos READMEs (EN/PT-BR).
  • Cobertura de testes consolidada do monorepo disponível via pnpm test:coverage.

Informações Adicionais

  • Tag relacionada: powershell1.2.0
  • Data de lançamento: 2026-07-05

pack1.1.1

Choose a tag to compare

@github-actions github-actions released this 06 Jul 10:39

Release pack1.1.1

Alterações desta versão

  • Bump de versão do pacote ark-format: 1.1.0 -> 1.1.1.
  • Campo sponsor adicionado ao manifesto da extensão, habilitando o botão de apoio (GitHub Sponsors) na página do Marketplace.
  • Alinhamento do extension pack com a rodada de atualização das extensões (shell1.0.12, powershell1.2.1, makefile1.0.1): link de sponsor nos manifests e GIFs de demonstração regenerados.
  • Sem alterações funcionais no extension pack.

Informações Adicionais

  • Tag relacionada: pack1.1.1
  • Data de lançamento: 2026-07-06

pack1.1.0

Choose a tag to compare

@github-actions github-actions released this 06 Jul 01:53

Release pack1.1.0

Alterações desta versão

  • Bump de versão do pacote ark-format: 1.0.9 -> 1.1.0.
  • Inclusão da extensão tooark.ark-format-makefile (versão inicial 1.0.0) no extensionPack:
    • Formatador de Makefile (Makefile, GNUmakefile, *.mk) seguindo a estrutura das extensões Shell e PowerShell.
    • Invariantes de segurança: prefixo TAB de recipes preservado, blocos define ... endef intocados e preservação integral quando .RECIPEPREFIX é redefinido.
  • Atualização das keywords do pack (makefile).
  • Atualização dos READMEs (EN/PT-BR) com a nova extensão incluída.
  • Seção de apoio (Support) adicionada aos READMEs (EN/PT-BR).
  • Sem alterações funcionais no extension pack; correções e melhorias dos formatadores são publicadas nas releases de cada extensão (shell1.0.11, powershell1.2.0, makefile1.0.0).

Informações Adicionais

  • Tag relacionada: pack1.1.0
  • Data de lançamento: 2026-07-05

makefile1.0.1

Choose a tag to compare

@github-actions github-actions released this 06 Jul 10:39

Release makefile1.0.1

Alterações desta versão

  • Bump de versão do pacote ark-format-makefile: 1.0.0 -> 1.0.1.
  • Campo sponsor adicionado ao manifesto da extensão, habilitando o botão de apoio (GitHub Sponsors) na página do Marketplace.
  • GIFs de demonstração do README regenerados (makefile-settings.gif e makefile-using.gif) com capturas atualizadas e maior qualidade.
  • Sem alterações funcionais no motor de formatação.

Informações Adicionais

  • Tag relacionada: makefile1.0.1
  • Data de lançamento: 2026-07-06