Skip to content


rebar shell issues #106

tuncer opened this Issue · 1 comment

1 participant


(1) Conflict of shells

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>

Possible workarounds:
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.

(2) Erroneous indentation of INFO REPORTs

Expected indentation:

=INFO REPORT==== 8-Nov-2011::17:39:35 ===
    application: sendfile
    exited: stopped
    type: temporary
  Test passed.

Current (wrong) indentation:

=INFO REPORT==== 8-Nov-2011::17:41:54 ===
                                             application: sendfile
                                                                      exited: stopped
                                                                                         type: temporary

Fixed by #280, closing.

@tuncer tuncer closed this
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Something went wrong with that request. Please try again.