summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorTuncer Ayaz <tuncer.ayaz@gmail.com>2013-10-12 22:12:40 +0200
committerTuncer Ayaz <tuncer.ayaz@gmail.com>2013-12-06 19:05:45 +0100
commit6de94e8a166bcf4f82d799cf8f208d39babed415 (patch)
tree61f7bcc4d8ce7bc9c16c2b74f54c415c1b819ed4 /src
parente5d76e7e8cbd923b0f50034c2221f7abe1452804 (diff)
Change default log level to 'warn' and introduce -q/--quiet
Diffstat (limited to 'src')
-rw-r--r--src/rebar.erl25
-rw-r--r--src/rebar_log.erl7
2 files changed, 20 insertions, 12 deletions
diff --git a/src/rebar.erl b/src/rebar.erl
index 2d9fe04..1efa43f 100644
--- a/src/rebar.erl
+++ b/src/rebar.erl
@@ -258,13 +258,20 @@ save_options(Config, {Options, NonOptArgs}) ->
%% set log level based on getopt option
%%
set_log_level(Config, Options) ->
- LogLevel = case proplists:get_all_values(verbose, Options) of
- [] ->
- rebar_log:default_level();
- Verbosities ->
- lists:last(Verbosities)
- end,
- rebar_config:set_global(Config, verbose, LogLevel).
+ 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).
%%
%% show version information and halt
@@ -375,12 +382,12 @@ option_spec_list() ->
JobsHelp = io_lib:format(
"Number of concurrent workers a command may use. Default: ~B",
[Jobs]),
- VerboseHelp = "Verbosity level (-v, -vv, -vvv, --verbose 3). Default: 0",
[
%% {Name, ShortOpt, LongOpt, ArgSpec, HelpMsg}
{help, $h, "help", undefined, "Show the program options"},
{commands, $c, "commands", undefined, "Show available commands"},
- {verbose, $v, "verbose", integer, VerboseHelp},
+ {verbose, $v, "verbose", integer, "Verbosity level (-v, -vv)"},
+ {quiet, $q, "quiet", boolean, "Quiet, only print error messages"},
{version, $V, "version", undefined, "Show version information"},
{force, $f, "force", undefined, "Force"},
{defines, $D, undefined, string, "Define compiler macro"},
diff --git a/src/rebar_log.erl b/src/rebar_log.erl
index 7f32e18..300a615 100644
--- a/src/rebar_log.erl
+++ b/src/rebar_log.erl
@@ -27,7 +27,9 @@
-module(rebar_log).
-export([init/1,
- set_level/1, default_level/0,
+ set_level/1,
+ error_level/0,
+ default_level/0,
log/3]).
-define(ERROR_LEVEL, 0).
@@ -60,6 +62,7 @@ log(Level, Str, Args) ->
ok
end.
+error_level() -> ?ERROR_LEVEL.
default_level() -> ?WARN_LEVEL.
%% ===================================================================
@@ -69,8 +72,6 @@ default_level() -> ?WARN_LEVEL.
valid_level(Level) ->
erlang:max(?ERROR_LEVEL, erlang:min(Level, ?DEBUG_LEVEL)).
-error_level() -> ?ERROR_LEVEL.
-
should_log(debug, _) -> true;
should_log(info, debug) -> false;
should_log(info, _) -> true;