-
Notifications
You must be signed in to change notification settings - Fork 5
Tuning output
Note : Since version 2.6, environment variables GEAS_* can be set in rebar.config in minuscule atoms, without geas_
prefix, for plugin. For example : GEAS_RANGE=">=19.2 <21.3"
can be written as {geas, [{range, ">=19.2 <21.3"}]}
. Boolean values can be Erlang boolean.
Since version 2.0.4, in order to be able to know what Erlang release(s) can compile a project, geas
can use source files.
As well, starting this version, geas
use source file, if available, as fallback when abstract code cannot be extracted from beam file.
Simply set GEAS_USE_SRC=1
as environment variable. (Unset or set GEAS_USE_SRC=0
to come back to default).
Starting version 2.0.5, environment variable GEAS_MY_RELS
allow to specify only local releases available.
It is a blank separated list of official Erlang release names.
If set, plugin will display the local releases that can compile and run the project.
if set empty, i.e GEAS_MY_RELS=""
, plugin will display the whole release list included in the computed release window.
Tip : this variable can be automatically set from kerl output :
export GEAS_MY_RELS=`kerl list builds | cut -d ',' -f 2 | tr '\n' ' '`
Alternatively, environment variable GEAS_EXC_RELS
allow to exclude release(s) from computed release window.
It is a blank separated list of official Erlang release names.
Starting version 2.0.6, Geas will automatically exclude some notoriously buggy Erlang releases if some module/function/arity are concerned. For now only R16B03
with syntax_tools
. Set GEAS_DISC_RELS
to 1 in order to show discarded releases on output.
A big work is to be done to collect Bohrbugs in all Erlang release README (help would be appreciated !).
Starting version 2.0.6, environment variable GEAS_LOG
allow to display analyze logs.
It is a blank separated list of log levels : debug
notice
warning
error
.
Since 2.0.14 another log level tip
is available and give more informations on why patche is recommended. As well since this version, log level notice
give the list of erlang application used in the global project.
If set, plugin will display logs matching log levels before compat result.
if set empty, i.e GEAS_LOG=""
, plugin will display all logs.
Starting version 2.0.14, environment variable GEAS_TIPS=1
allow to display tag R
with recommended patches list that are not installed in current Erlang release.
Only 'useful' patches are proposed if project code is using an application/module impacted by a non installed patche.
See also log level tip
.
Starting version 2.6, environnement variable GEAS_FRAME
allow to set a Semver syntax frame for your project. Plugin will exit non zero in case of error (exit code 2 for erlang.mk and 5 for rebar3).
Check will be OK if all the official releases inside semver frame are in the computed release window.
This mean that check will be OK if project window is equal or larger than the Semver frame.
For instance :
T = R16B R16B01 R16B02 R16B03 R16B03-1 17.0 17.1 17.3 17.4 17.5 18.0 18.1
OK if GEAS_FRAME=">=17 <=18.0"
Failure if GEAS_FRAME=">=17.0 <19.0"
To be used to guarantee that the project is able to run inside a release frame. See next variable to impose a range.
This feature can be used in CI tools scripts in order to check non regression in Release window by introducing some code.
See also Behavior difference between range and frame
Starting version 2.5, environment variable GEAS_RANGE
allow to set a semver syntax range for your project. Plugin will exit non zero in case of error (exit code 2 for both erlang.mk and rebar3).
Check will be OK if all the releases compatibles (Release list in tags L or T) are in the range.
For instance :
T = R16B R16B01 R16B02 R16B03 R16B03-1 17.0 17.1 17.3 17.4 17.5 18.0 18.1
OK if GEAS_RANGE=">=R16 <18.2"
Failure if GEAS_RANGE=">=17.0 <18.0"
This feature can be used in CI tools scripts in order to check non regression in Release window by introducing some code.