Summary
specfact upgrade reports success, but the installed specfact launcher can remain stale and still point to an old pipx venv path. This leaves specfact broken (or effectively old) until a manual reinstall.
Environment
- OS: macOS
- Shell: zsh
pipx --version: 1.12.0
- SpecFact before upgrade command output:
SpecFact CLI - v0.46.25
- Update check reports latest as
0.46.28
Reproduction
- Run:
- Confirm updater output:
- detects
pipx
- runs
pipx upgrade specfact-cli
- reports success and says already latest
0.46.28
- Run:
Actual result
Launcher still references an old path and fails (or appears stuck on old runtime depending on shell/path state), e.g.:
/Users/<user>/.local/bin/specfact: line 2: /Users/<user>/Library/Application Support/pipx/venvs/specfact-cli/bin/python: No such file or directory
The script content showed stale exec path:
'''exec' '/Users/<user>/Library/Application Support/pipx/venvs/specfact-cli/bin/python' "$0" "$@"
Expected result
After specfact upgrade, specfact --version should reliably use the upgraded runtime and launch successfully without requiring manual repair.
Workaround
pipx reinstall specfact-cli
After reinstall, launcher is corrected and specfact --version returns 0.46.28.
Suggestion
When installation method is pipx, if pipx upgrade reports "already latest", the upgrader could:
- validate launcher integrity by invoking
specfact --version
- if launcher is broken/stale, run
pipx reinstall specfact-cli (or provide a clear remediation message)
Summary
specfact upgradereports success, but the installedspecfactlauncher can remain stale and still point to an old pipx venv path. This leavesspecfactbroken (or effectively old) until a manual reinstall.Environment
pipx --version: 1.12.0SpecFact CLI - v0.46.250.46.28Reproduction
pipxpipx upgrade specfact-cli0.46.28Actual result
Launcher still references an old path and fails (or appears stuck on old runtime depending on shell/path state), e.g.:
The script content showed stale exec path:
Expected result
After
specfact upgrade,specfact --versionshould reliably use the upgraded runtime and launch successfully without requiring manual repair.Workaround
After reinstall, launcher is corrected and
specfact --versionreturns0.46.28.Suggestion
When installation method is
pipx, ifpipx upgradereports "already latest", the upgrader could:specfact --versionpipx reinstall specfact-cli(or provide a clear remediation message)