"Incremental build equals clean build" is claimed but never tested
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
- build-system, testing
Direção de pesquisa
Comece em site/build.mjs, perto de writeOut e pruneDist; depois, leia site/lib/lib.test.mjs e o comando de teste na seção de primeiros passos. A mudança sugerida é mover as funções para site/lib/dist-writer.mjs, parametrizar o diretório dist e testá-las em um diretório temporário. O trabalho estará concluído quando os testes cobrirem as comparações de bytes, as regravações, a remoção de arquivos obsoletos e a limpeza de diretórios indicadas.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
Summary
build.mjs says the incremental result is byte-identical to a clean build, but writeOut, pruneDist and the produced-file set are not tested, and CI always builds from a fresh checkout, so the incremental path never runs there.
Where
site/build.mjs:272-275(claim)site/build.mjs:288-299(writeOut)site/build.mjs:323-335(pruneDist)site/build.mjs:526-531,:638,:745
Impact
A stale file left in local dist, or a needed file pruned, would only show locally.
Suggested fix
Move writeOut and pruneDist into site/lib/dist-writer.mjs with the dist directory as a parameter and test them in a temp directory.
Acceptance criteria
- Same bytes written twice: 0 writes the second time
- Same-size file with different bytes is rewritten
- Stale
old/x.htmlremoved and its empty directory pruned - Directory holding a produced file is kept
- Optional: hashes of
buildandbuild --cleanmatch in a temp copy
Getting started
- Relevant files:
site/build.mjs,site/lib/lib.test.mjs - Run the tests:
npm test; the full local gate isnpm run check(Node 22+, no install step) - Related docs:
CONTRIBUTING.md,site/README.md
Related: #85
Filed by repo-audit/full-audit at 4adb944. Severity: low. Effort: S. audit-key: testing|site/build.mjs|writeOut
- Linguagem predominante
- JavaScript
- Estrelas
- 58
- Forks
- 15
- Merge médio
- 1d 15h
- PRs com merge (30d)
- 12
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
-
enhancement good first issue priority: medium
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 82/100
TMHSDigital/Free-Game-Dev-Assets#272 ·
Mantenedores costumam responder em até 1 dia
-
documentation good first issue priority: low
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 78/100
TMHSDigital/Free-Game-Dev-Assets#270 ·
Mantenedores costumam responder em até 1 dia
-
documentation priority: medium
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 82/100
TMHSDigital/Free-Game-Dev-Assets#269 ·
Mantenedores costumam responder em até 1 dia
-
good first issue priority: low tests
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 88/100
TMHSDigital/Free-Game-Dev-Assets#267 ·
Mantenedores costumam responder em até 1 dia
-
good first issue priority: low tests
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 83/100
TMHSDigital/Free-Game-Dev-Assets#266 ·
Mantenedores costumam responder em até 1 dia
Todas as issues de TMHSDigital/Free-Game-Dev-Assets
Issues semelhantes
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 84/100
microsoft/TypeScript#65370 ·
Mantenedores costumam responder em até 1 dia
-
metrics priority: medium
Dificuldade 1/5 1-3 horas Facilidade para iniciantes 86/100
LearningCircuit/local-deep-research#8336 ·
Mantenedores costumam responder em até 1 dia
-
ace bug yaml
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 75/100
Mantenedores costumam responder em até 1 dia
-
svelte: whitespace-only edit leaves an empty todo, edits not trimmed, filter not restored on reloadAberta
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 72/100
-
agentic-workflows
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 85/100
githubnext/gh-cao#20316 ·
Mantenedores costumam responder em até 1 dia