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

frontmatter: an unterminated quoted scalar is accepted silently and keeps its opening quote

Aberta Para iniciantes
#138 0 comentários 0 reações 0 responsáveis Ver no GitHub

Mantenedores costumam responder em até 1 dia

Ninguém assumiu esta issue ainda.

Avaliação

Dificuldade
2/5
Tempo estimado
1-3 horas
Facilidade para iniciantes
82/100
Tipo de issue
Bug
Clareza
Claramente especificada
Status de atividade
Ativa
Stack de tecnologia
javascript, node.js
Domínio
content, testing

Direção de pesquisa

Leia primeiro site/lib/frontmatter.mjs e lib.test.mjs; inspecione como parseScalar trata valores entre aspas e como os erros de frontmatter são relatados com números de linha. Adicione casos que rejeitem escalares entre aspas e itens de lista sem fechamento; depois execute npm run validate e confirme que o fixture informa a linha da aspa não fechada.

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

Descrição

bug priority: low

Why it matters

name: "Foo (a missing closing quote, an easy slip when a name contains an apostrophe) parses as the string "Foo and flows into pages, data.json, the CSV and the feed with a stray quote. checkTitleMatchesName happens to catch it for name, but publisher, attribution_string, grid_dimensions, ue_versions and list items have no backstop.

Evidence (at 69387df)

site/lib/frontmatter.mjs:69-82 parseScalar only unquotes when the value both starts and ends with the same quote; otherwise it returns the raw text. Verified: parsing a frontmatter block containing name: "Foo yields meta.name === '"Foo' with errors empty.

Suggested approach

In parseScalar (or in parseFrontmatter where line numbers are known), when a trimmed value starts with " or ' and does not end with the matching quote, push line N: "key" opens a quote that is never closed. Same for list items.

Done when

lib.test.mjs has a rejecting case; npm run validate fails on a fixture with an unterminated quote and names the line.

Linguagem predominante
JavaScript
Estrelas
58
Forks
15
Merge médio
16h 53min
PRs com merge (30d)
14

Preparar o ambiente

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 TMHSDigital/Free-Game-Dev-Assets

Todas as issues de TMHSDigital/Free-Game-Dev-Assets

Issues semelhantes

Mais issues de JavaScript

Receba novas issues na sua caixa de entrada

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