Summary
roar reproduce --run of a lineage whose source step is roar get hf://datasets/... fails at that first step, cascading to the whole pipeline. Two compounding problems.
Problem 1 — reproduction venv installs the wrong roar
In the reproduce venv, .venv/bin/roar is a Python-2 package (PyPI name collision), not roar-cli. When reproduce replays the source step as roar run roar get ..., the inner roar get invokes the broken py2 tool:
File ".venv/bin/roar", line 328
print 'Invalid Port: %s' % options.serve
SyntaxError: Missing parentheses in call to 'print'.
→ Step 1 exits 1. Root cause: the reproduction venv resolves roar to the wrong distribution; roar-cli's entrypoint isn't what ends up on PATH inside the venv.
Problem 2 — roar get destination dropped from the replayed command
The replayed step is roar get hf://datasets/yuanty/LIBERO-fastwam --force — the original destination arg (./data/libero_tarballs) is gone. Even with Problem 1 fixed, roar get would fetch to a default location while downstream steps read the recorded path, so a path-based handoff fails:
tar: ./data/libero_tarballs/*.tar.gz: Cannot open: No such file or directory
Impact
A pipeline that sources data via roar get (the recommended way to make data a tracked, reproducible input) cannot be reproduced end-to-end — steps after the get cascade-fail on missing data. This blocks the core reproducibility guarantee for any data-driven pipeline.
Suggested fixes
- Install/resolve
roar-cli (not a colliding roar) into the reproduction venv, or drive replayed roar get steps via the same roar entrypoint running the reproduction rather than a venv-local roar.
- Preserve
roar get arguments (including destination) in the replayed command, or restore the fetched artifact to its recorded path before downstream steps run.
Environment
roar 0.3.6 · reproduce --run --lineage · Hugging Face dataset source · Linux/conda
Summary
roar reproduce --runof a lineage whose source step isroar get hf://datasets/...fails at that first step, cascading to the whole pipeline. Two compounding problems.Problem 1 — reproduction venv installs the wrong
roarIn the reproduce venv,
.venv/bin/roaris a Python-2 package (PyPI name collision), notroar-cli. When reproduce replays the source step asroar run roar get ..., the innerroar getinvokes the broken py2 tool:→ Step 1 exits 1. Root cause: the reproduction venv resolves
roarto the wrong distribution;roar-cli's entrypoint isn't what ends up on PATH inside the venv.Problem 2 —
roar getdestination dropped from the replayed commandThe replayed step is
roar get hf://datasets/yuanty/LIBERO-fastwam --force— the original destination arg (./data/libero_tarballs) is gone. Even with Problem 1 fixed,roar getwould fetch to a default location while downstream steps read the recorded path, so a path-based handoff fails:Impact
A pipeline that sources data via
roar get(the recommended way to make data a tracked, reproducible input) cannot be reproduced end-to-end — steps after the get cascade-fail on missing data. This blocks the core reproducibility guarantee for any data-driven pipeline.Suggested fixes
roar-cli(not a collidingroar) into the reproduction venv, or drive replayedroar getsteps via the same roar entrypoint running the reproduction rather than a venv-localroar.roar getarguments (including destination) in the replayed command, or restore the fetched artifact to its recorded path before downstream steps run.Environment
roar 0.3.6 ·
reproduce --run --lineage· Hugging Face dataset source · Linux/conda