Context
Following the rebrand of the project to perfratio (PR #224), compatibility aliases and legacy references were preserved to prevent breaking existing pipelines, scripts, and consumers.
This issue tracks the structured deprecation and eventual complete removal of all remaining joulex and hyperfine variables, aliases, internal identifiers, and test scaffolding.
Inventory of Leftovers to Remove
1. Environment Variables & Runtime Hooks
2. Export & Import Serialization
3. Progress Bar & Indicatif Keys
4. Shell Completions
5. Test Suite & Harness
6. Documentation & Legacy Files
Migration / Deprecation Strategy
- Deprecation Phase: If legacy environment variables or options are invoked, emit a single deprecation notice advising migration to
PERFRATIO_*.
- Breaking Release: Drop all legacy bindings and clean the codebase so that
grep -ri "joulex" src/ tests/ and grep -ri "hyperfine" src/ tests/ return only historical attribution / license notes in README.md and LICENSE.
Context
Following the rebrand of the project to
perfratio(PR #224), compatibility aliases and legacy references were preserved to prevent breaking existing pipelines, scripts, and consumers.This issue tracks the structured deprecation and eventual complete removal of all remaining
joulexandhyperfinevariables, aliases, internal identifiers, and test scaffolding.Inventory of Leftovers to Remove
1. Environment Variables & Runtime Hooks
$JOULEX_ITERATIONand$HYPERFINE_ITERATIONforwarding insrc/benchmark/executor.rs, keeping exclusively$PERFRATIO_ITERATION.JOULEX_SYSTEM_CHECK_ROOTinsrc/system_check.rs, using onlyPERFRATIO_SYSTEM_CHECK_ROOT.2. Export & Import Serialization
"joulex": ...field insrc/export/json.rs, retaining only"perfratio": ....HyperfineSummarytoPerfratioSummaryinsrc/import.rs.--import-jsonhelp string insrc/cli.rs(currently referencesperfratio/joulex/hyperfine).3. Progress Bar & Indicatif Keys
joulex_etainsrc/output/progress_bar.rs, standardizing solely onperfratio_eta.4. Shell Completions
"joulex"" inbuild.rsandsrc/main.rs`.complete -c joulex ...snippet insrc/cli.rs.5. Test Suite & Harness
hyperfine(),hyperfine_raw_command(), andhyperfine_debug()acrosstests/common.rsandtests/integration_tests.rstoperfratio(),perfratio_raw_command(), andperfratio_debug().tests/execution_order_tests.rs(prepare_and_conclude_see_the_current_joulex_and_hyperfine_iteration).tests/export_metadata_tests.rsandtests/check_system_tests.rsthat check bothjson["joulex"]andjson["perfratio"].6. Documentation & Legacy Files
doc/joulex.1(retaining onlydoc/perfratio.1).doc/execution-order.svgand any other diagrams referencinghyperfine.README.md,doc/understanding-output.md, anddoc/ci.mdthat mention(or hyperfine <command>...).Migration / Deprecation Strategy
PERFRATIO_*.grep -ri "joulex" src/ tests/andgrep -ri "hyperfine" src/ tests/return only historical attribution / license notes inREADME.mdandLICENSE.