frontmatter: an unterminated quoted scalar is accepted silently and keeps its opening quote
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
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
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
- Sem Dockerfile nem arquivo Docker Compose
- Tem um modelo de pull request
- Ler o guia de contribuição
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Mais de TMHSDigital/Free-Game-Dev-Assets
-
community marketing priority: low
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 72/100
TMHSDigital/Free-Game-Dev-Assets#151 ·
Mantenedores costumam responder em até 1 dia
-
community marketing priority: medium
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 78/100
TMHSDigital/Free-Game-Dev-Assets#150 ·
Mantenedores costumam responder em até 1 dia
-
community enhancement priority: medium
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 82/100
TMHSDigital/Free-Game-Dev-Assets#149 ·
Mantenedores costumam responder em até 1 dia
-
community documentation priority: medium
Dificuldade 1/5 1-3 horas Facilidade para iniciantes 88/100
TMHSDigital/Free-Game-Dev-Assets#148 ·
Mantenedores costumam responder em até 1 dia
-
site: the Unreal guide is missing from the homepage Guides list, and the hero calls tools "assets"Abertabug marketing priority: medium
Dificuldade 1/5 1-3 horas Facilidade para iniciantes 85/100
TMHSDigital/Free-Game-Dev-Assets#147 ·
Mantenedores costumam responder em até 1 dia
Todas as issues de TMHSDigital/Free-Game-Dev-Assets
Issues semelhantes
-
bug Frontend P2-medium UI UX
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 76/100
Deepak3699/Ai_Mentor#427 ·
Mantenedores costumam responder em até 1 dia
-
needs-triage
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 78/100
11ty/buildawesome#4407 · 1 reação ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 77/100
keyxmakerx/Chronicle#1711 ·
Mantenedores costumam responder em até 1 dia
-
frontend
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 69/100
uoftblueprint/canada-basketball#79 ·
Mantenedores costumam responder em até 1 dia
-
New App Request
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 76/100
ThatGuySam/doesitarm#1126 · 1 comentário ·