As seen with R13B03, R14B04, R15B03-1, and R16B:
driver_select(0xb6681450, 0, ERL_DRV_READ ERL_DRV_USE, 1) by tty_sl
(tty_sl -c -e) driver #Port<0.6172> stealing control of fd=0 from
input driver fd (0/1) #Port<0.587>
1. Change rebar's escript emu_args to -nouser, -noshell, or -noshell -noinput. Assuming no rebar user (excent when running 'rebar shell') misses anything with one of the above emu_args in use, we could manually start the shell if rebar shell is run. This may or may not work, but it might disallow or make it hard to still support starting the shell with command disambiguation (rebar shell, rebar shel, rebar she, rebar sh, rebar s). Also, if done wrong, this may not solve but only hide the conflict.
2. Unregister the user process before we start the rebar shell. This doesn't seem right and may cause more problems than it solves.
3. We could start the shell via an extra script like 'rebar-shell' that passes the right options to erl, but requiring to run rebar-shell instead of 'rebar sh' seems unacceptable.
4. Start a slave node when running rebar shell and use that for the rebar shell.
TODO: Review ssh.erl's implemention for ideas.
=INFO REPORT==== 8-Nov-2011::17:39:35 ===
Current (wrong) indentation:
=INFO REPORT==== 8-Nov-2011::17:41:54 ===
Fixed by #280, closing.