-
Notifications
You must be signed in to change notification settings - Fork 154
Description
Background: I'm currently working to improve our developer experience by rolling herokuish into a Vagrant image, discovered this issue in the final steps.
Symptoms: When running herokuish procfile start web
on a system with Debian's bash completion installed, herokuish exits silently with exit code 1
Trace: trace.txt
Diagnosis:
The problem occurs at procfile-load-profile, during the loading of bash completion. The problem occurs because bash completion and set -e
are incompatible, as documented in this debian bug.
Ordinarily the bash completion doesn't run for interactive shells, but it detects interactivity by checking PS1 (i.e. if [ -n "$BASH_VERSION" -a -n "$PS1" -a -z "$BASH_COMPLETION_COMPAT_DIR" ]; then
, which is expected behaviour as per bash's documentation), while herokuish sets it's own PS1 unconditionally.
Unfortunately I don't know what the best way to solve this is, otherwise I would provide a PR - does herokuish actually need to set that PS1? Should it only be set immediately prior to procfile-exec?
In the meantime I've modified the interactivity check in my VM, but that's not great long term.