Windows checkout fails because generated snapshot paths exceed default path length
- Linguagem predominante
- Rust
- Estrelas
- 772
- Forks
- 352
- Merge médio
- 1d 7h
- PRs com merge (30d)
- 84
Descrição
On Windows, a fresh clone of `0xMiden/miden-vm` can complete the fetch but fail during checkout because several snapshot filenames exceed the default Windows path limit.
Repro from `C:\Users\omer\Desktop\miden` on Windows/PowerShell:
```powershell
git clone https://github.com/0xMiden/miden-vm.git miden-vm-scan
```
The clone ends with:
```text
error: unable to create file processor/src/fast/tests/snapshots/miden_processor__fast__tests__all_ops__fast__tests__all_ops__test_basic_block__stack_inputs_01_vec_____operations_01_vec__Operation__Noop_Operation__Noop_Operation__Clk_Operation__M.snap: Filename too long
...
fatal: unable to checkout working tree
warning: Clone succeeded, but checkout failed.
```
This looks separate from the earlier reserved-character Windows issue (#2561 / #2580): these paths do not rely on `::`; they are just too long for a default Windows checkout path.
Why this matters:
- Windows contributors cannot get to a clean working tree with the default clone command.
- The failure happens before any project-specific setup or tests can run.
A couple of possible fixes would be shortening the generated snapshot names or moving those snapshots under a shallower path. A short note in contributor docs about `core.longpaths` could help, but it would not fix the default clone experience.
Guia de contribuição
Direção de pesquisa
The issue is in the snapshot file paths under `processor/src/fast/tests/snapshots/`. Look at the test generation code that creates these long filenames. The goal is to shorten the snapshot names or restructure the directory to reduce path length, ensuring a fresh clone works on Windows without requiring `core.longpaths`. Check the test suite to verify the fix doesn't break snapshot matching.
Escrita pelo modelo de indexação a partir do texto da issue.
Avaliação
- Stack de tecnologia
- git, rust
- Domínio
- developer-experience, tooling
- Tipo de issue
- Bug
- Dificuldade
- 2/5
- Tempo estimado
- 1-3 horas
- Status de atividade
- Ativa
- Clareza
- Claramente especificada
- Facilidade para iniciantes
- 75/100