diff options
| author | Tuncer Ayaz <tuncer.ayaz@gmail.com> | 2013-12-06 20:55:41 +0100 | 
|---|---|---|
| committer | Tuncer Ayaz <tuncer.ayaz@gmail.com> | 2013-12-06 21:39:53 +0100 | 
| commit | 277a10cd3b10a885b35ba9b75b85398870525658 (patch) | |
| tree | 0e6a145f0f4c68683a42917d5abbde82bc7bb5a3 | |
| parent | f39309a66020e13892350785bf3feff6907c5ee6 (diff) | |
Fix is_verbose/1 helper function
| -rw-r--r-- | src/rebar.erl | 35 | ||||
| -rw-r--r-- | src/rebar_config.erl | 5 | ||||
| -rw-r--r-- | src/rebar_ct.erl | 4 | ||||
| -rw-r--r-- | src/rebar_eunit.erl | 2 | ||||
| -rw-r--r-- | src/rebar_log.erl | 6 | ||||
| -rw-r--r-- | src/rebar_xref.erl | 2 | 
6 files changed, 30 insertions, 24 deletions
| diff --git a/src/rebar.erl b/src/rebar.erl index 1efa43f..8fad12f 100644 --- a/src/rebar.erl +++ b/src/rebar.erl @@ -258,20 +258,27 @@ save_options(Config, {Options, NonOptArgs}) ->  %% set log level based on getopt option  %%  set_log_level(Config, Options) -> -    Level = case proplists:get_bool(quiet, Options) of -                true -> -                    rebar_log:error_level(); -                false -> -                    DefaultLevel = rebar_log:default_level(), -                    case proplists:get_all_values(verbose, Options) of -                        [] -> -                            DefaultLevel; -                        Verbosities -> -                            DefaultLevel + lists:last(Verbosities) -                    end -            end, - -    rebar_config:set_global(Config, verbose, Level). +    {IsVerbose, Level} = +        case proplists:get_bool(quiet, Options) of +            true -> +                {false, rebar_log:error_level()}; +            false -> +                DefaultLevel = rebar_log:default_level(), +                case proplists:get_all_values(verbose, Options) of +                    [] -> +                        {false, DefaultLevel}; +                    Verbosities -> +                        {true, DefaultLevel + lists:last(Verbosities)} +                end +        end, + +    case IsVerbose of +        true -> +            Config1 = rebar_config:set_xconf(Config, is_verbose, true), +            rebar_config:set_global(Config1, verbose, Level); +        false -> +            rebar_config:set_global(Config, verbose, Level) +    end.  %%  %% show version information and halt diff --git a/src/rebar_config.erl b/src/rebar_config.erl index fe6945e..9b58d4f 100644 --- a/src/rebar_config.erl +++ b/src/rebar_config.erl @@ -31,7 +31,6 @@           get_all/2,           set/3,           set_global/3, get_global/3, -         is_verbose/1,           save_env/3, get_env/2, reset_envs/1,           set_skip_dir/2, is_skip_dir/2, reset_skip_dirs/1,           clean_config/2, @@ -110,10 +109,6 @@ get_global(Config, Key, Default) ->              Value      end. -is_verbose(Config) -> -    DefaultLevel = rebar_log:default_level(), -    get_global(Config, verbose, DefaultLevel) > DefaultLevel. -  consult_file(File) ->      case filename:extension(File) of          ".script" -> diff --git a/src/rebar_ct.erl b/src/rebar_ct.erl index 74ae618..91d763b 100644 --- a/src/rebar_ct.erl +++ b/src/rebar_ct.erl @@ -101,7 +101,7 @@ run_test(TestDir, LogDir, Config, _File) ->      {Cmd, RawLog} = make_cmd(TestDir, LogDir, Config),      ?DEBUG("ct_run cmd:~n~p~n", [Cmd]),      clear_log(LogDir, RawLog), -    Output = case rebar_config:is_verbose(Config) of +    Output = case rebar_log:is_verbose(Config) of                   false ->                       " >> " ++ RawLog ++ " 2>&1";                   true -> @@ -172,7 +172,7 @@ check_log(Config,RawLog,Fun) ->  %% Show the log if it hasn't already been shown because verbose was on  show_log(Config, RawLog) ->      ?CONSOLE("Showing log\n", []), -    case rebar_config:is_verbose(Config) of +    case rebar_log:is_verbose(Config) of          false ->              {ok, Contents} = file:read_file(RawLog),              ?CONSOLE("~s", [Contents]); diff --git a/src/rebar_eunit.erl b/src/rebar_eunit.erl index d39b1a2..6ea28f7 100644 --- a/src/rebar_eunit.erl +++ b/src/rebar_eunit.erl @@ -408,7 +408,7 @@ perform_eunit(Config, Tests) ->  get_eunit_opts(Config) ->      %% Enable verbose in eunit if so requested.. -    BaseOpts = case rebar_config:is_verbose(Config) of +    BaseOpts = case rebar_log:is_verbose(Config) of                     true ->                         [verbose];                     false -> diff --git a/src/rebar_log.erl b/src/rebar_log.erl index 8be090b..ba25332 100644 --- a/src/rebar_log.erl +++ b/src/rebar_log.erl @@ -31,7 +31,8 @@           error_level/0,           default_level/0,           log/3, -         log/4]). +         log/4, +         is_verbose/1]).  -define(ERROR_LEVEL, 0).  -define(WARN_LEVEL,  1). @@ -69,6 +70,9 @@ log(Device, Level, Str, Args) ->  error_level() -> ?ERROR_LEVEL.  default_level() -> ?WARN_LEVEL. +is_verbose(Config) -> +    rebar_config:get_xconf(Config, is_verbose, false). +  %% ===================================================================  %% Internal functions  %% =================================================================== diff --git a/src/rebar_xref.erl b/src/rebar_xref.erl index eaf6d03..0d89460 100644 --- a/src/rebar_xref.erl +++ b/src/rebar_xref.erl @@ -51,7 +51,7 @@ xref(Config, _) ->      xref:set_default(xref, [{warnings,                               rebar_config:get(Config, xref_warnings, false)}, -                            {verbose, rebar_config:is_verbose(Config)}]), +                            {verbose, rebar_log:is_verbose(Config)}]),      {ok, _} = xref:add_directory(xref, "ebin"), | 
