From c5ae9f3fed035d2ef8f072da53647c212f92db8b Mon Sep 17 00:00:00 2001 From: Grigory Starinkin Date: Tue, 8 May 2018 21:42:43 +0100 Subject: start at least one async thread in async thread pool fixes an issue when shell is terminated with an error "Bus error: 10", on attempt to run rebar shell with verbose logging --- priv/templates/escript_rebar.config | 2 +- rebar.config | 3 +-- src/rebar3.erl | 2 +- src/rebar_prv_local_install.erl | 2 +- 4 files changed, 4 insertions(+), 5 deletions(-) diff --git a/priv/templates/escript_rebar.config b/priv/templates/escript_rebar.config index ef498a8..3ed7150 100644 --- a/priv/templates/escript_rebar.config +++ b/priv/templates/escript_rebar.config @@ -5,7 +5,7 @@ [{{name}}]}. {escript_main_app, {{name}}}. {escript_name, {{name}}}. -{escript_emu_args, "%%! +sbtu +A0\n"}. +{escript_emu_args, "%%! +sbtu +A1\n"}. %% Profiles {profiles, [{test, diff --git a/rebar.config b/rebar.config index d0b2e44..5d57c04 100644 --- a/rebar.config +++ b/rebar.config @@ -22,7 +22,7 @@ ]}. {escript_name, rebar3}. -{escript_emu_args, "%%! +sbtu +A0\n"}. +{escript_emu_args, "%%! +sbtu +A1\n"}. %% escript_incl_extra is for internal rebar-private use only. %% Do not use outside rebar. Config interface is not stable. {escript_incl_extra, [{"relx/priv/templates/*", "_build/default/lib/"}, @@ -78,4 +78,3 @@ {add, relx, [{erl_opts, [no_debug_info]}]}]} ]} ]}. - diff --git a/src/rebar3.erl b/src/rebar3.erl index 8e9d4b1..9a5486d 100644 --- a/src/rebar3.erl +++ b/src/rebar3.erl @@ -54,7 +54,7 @@ %% ==================================================================== %% @doc For running with: -%% erl +sbtu +A0 -noinput -mode minimal -boot start_clean -s rebar3 main -extra "$@" +%% erl +sbtu +A1 -noinput -mode minimal -boot start_clean -s rebar3 main -extra "$@" -spec main() -> no_return(). main() -> List = init:get_plain_arguments(), diff --git a/src/rebar_prv_local_install.erl b/src/rebar_prv_local_install.erl index bb019c4..c41812f 100644 --- a/src/rebar_prv_local_install.erl +++ b/src/rebar_prv_local_install.erl @@ -64,7 +64,7 @@ format_error(Reason) -> bin_contents(OutputDir) -> <<"#!/usr/bin/env sh -erl -pz ", (rebar_utils:to_binary(OutputDir))/binary,"/*/ebin +sbtu +A0 -noshell -boot start_clean -s rebar3 main $REBAR3_ERL_ARGS -extra \"$@\" +erl -pz ", (rebar_utils:to_binary(OutputDir))/binary,"/*/ebin +sbtu +A1 -noshell -boot start_clean -s rebar3 main $REBAR3_ERL_ARGS -extra \"$@\" ">>. extract_escript(State, ScriptPath) -> -- cgit v1.1