gliderlabs/herokuish — pull request #1 by mgood (2014-12-17 20:37:47+00:00)
Title: Fix "buildpack-select" setting shell variables

The "buildpack-select" function sets "selected_path", but it was not being
persisted in the parent shell, in order to be used from "buildpack-compile".
The function appears to have been run in a subshell as a result of piping the
output to "indent". This changes it to use "process substitution" to pass the
output to "indent" while "buildpack-select" runs in the parent shell.

I was trying out herokuish in a Docker image based on "progrium/cedarish".

$ bash --version
GNU bash, version 4.3.11(1)-release (x86_64-pc-linux-gnu)

Without this change, I would get an error like this running `herokuish buildpack build` because `selected_path` was not propagated to `buildpack-compile`:

-----> Python app detected
setuidgid: fatal: unable to run /bin/compile: file does not exist

With this change, the variables are set, and the output still seems to be piped correctly through `indent` (tested with some dummy `echo` calls in `buildpack-select`).