erlang / rebar3

Erlang build tool that makes it easy to compile and test Erlang applications and releases.
http://www.rebar3.org
Apache License 2.0
1.69k stars 515 forks source link

rebar3 shell doesn't return prompt #2882

Open RomanShestakov opened 5 months ago

RomanShestakov commented 5 months ago

Pre-Check

Environment

$ rebar3 report "my failing command"

$ rebar3 report
Rebar3 report
 version 3.23.0+build.5376.refb28f3b55
 generated at 2024-04-14T12:44:14+00:00
=================
Please submit this along with your issue at https://github.com/erlang/rebar3/issues (and feel free to edit out private information, if any)
-----------------
Task: 
Entered as:

-----------------
Operating System: x86_64-pc-linux-gnu
ERTS: Erlang/OTP 26 [erts-14.0] [source] [64-bit] [smp:8:8] [ds:8:8:10] [async-threads:1] [jit:ns]
Root Directory: /usr/local/lib/erlang
Library directory: /usr/local/lib/erlang/lib
-----------------
Loaded Applications:
bbmustache: 1.12.2
certifi: 2.11.0
cf: 0.3.1
common_test: 1.25
compiler: 8.3
crypto: 5.2
cth_readable: 1.5.1
dialyzer: 5.1
edoc: 1.2
erlware_commons: 1.7.0
eunit: 2.8.2
eunit_formatters: 0.5.0
getopt: 1.0.2
inets: 9.0
kernel: 9.0
providers: 1.9.0
public_key: 1.14
relx: 4.9.0
sasl: 4.2.1
snmp: 5.14
ssl_verify_fun: 1.1.6
stdlib: 5.0
syntax_tools: 3.1
tools: 3.6

-----------------
Escript path: /usr/bin/rebar3
Providers:
  alias app_discovery as auto build clean clean compile compile compile completion cover ct cut deps dialyzer do edoc escriptize eunit get-deps help install install_deps list lock manifest new organization owner path pkgs publish release relup report repos retire search shell state tar tree unlock update upgrade upgrade upgrade user vendor version xref

...

Current behaviour

Describe the current behaviour. In case of a failure, crash, or exception, please include the result of running the command with debug information:

DEBUG=1 rebar3 <my failing command>

Expected behaviour

Hello

I am not sure if it is a expected behavior or not.

I am trying to use 'rebar3 shell' and 'rebar3 auto' and seeing that when code is being compiled as expected but the prompt '>' is not returned - which is not what I expect.

/** $ rebar3 shell ===> Verifying dependencies... ===> Analyzing applications... ===> Compiling myproj Erlang/OTP 26 [erts-14.0] [source] [64-bit] [smp:8:8] [ds:8:8:10] [async-threads:1] [jit:ns]

Eshell V14.0 (press Ctrl+G to abort, type help(). for help) 1> ===> Booted myproj ===> Booted sasl

/**

image

notice missing '2>'

I am using 'Ubuntu 23.10' in stock configuration, TERM env is 'xterm-256color'.

this is mildly announcing and I am wandering if there is some configuration setting to fix this?

Regards, Roman

ferd commented 5 months ago

This is a bug in Erlang/OTP. From the ERTS version in the prompt, you are currently running on OTP-26.0. Try going up even to OTP-26.0.2 and it should be fixed. That patch release had a lot of corrections that improve the new shell handling mechanism released in OTP-26.0 and had multiple small bugs.