Geas - a tool detecting the runnable official Erlang release window for your project

Hi folks,
A new release 2.9.2 is available for OTP-27.3 on hex.pm and github.
Rebar user can upgrade geas_rebar3 plugin to package version 1.5.4 .
Enjoy !

Hi folks,
A new release 2.9.4 is available for OTP-28.0 on hex.pm and github.
Rebar user can upgrade geas_rebar3 plugin to package version 1.5.4 .
Enjoy !

1 Like

Hi folks,

A new release 2.9.5 is available for OTP-28.1 on hexp.pm and github.

Rebar user can upgrade geas_rebar3 plugin to package version 1.5.5 .

Enjoy !

1 Like

Hi folks,

A new release 2.9.6 is available for OTP-28.2 on hexp.pm and github.

Rebar user can upgrade geas_rebar3 plugin to package version 1.5.6 .

Enjoy !

2 Likes

Hi folks,

A new release 2.9.7 is available for OTP-28.3 on hexp.pm and github.

Rebar user can upgrade geas_rebar3 plugin to package version 1.5.7 .

Enjoy !

2 Likes

Hi folks,

Releases 2.9.8 and 2.9.9 are available on hex.pm for respectively OTP-28.4 and OTP-28.5.

A new version of rebar plug-in for both is available too…

2 Likes

Guess Erlang Application Scattering

  • What is you usage?
  • what new features do you expect?

Guess Erlang Application Scattering

Geas : (In Irish folklore) an obligation or prohibition magically imposed on a person.

By extension, obligation or prohibition imposed by an Erlang application or module, which may modify its scattering.

Overview

Geas is a tool detecting the runnable official Erlang release window for your project.

Geas will tell you also :

  • what are the offending functions in the beam/source files that reduce the available window.
  • if some beam files are compiled native.
  • the installed patches and recommend patches that should be installed depending your code.

For example , if a dependency is using application:ensure_all_started/1 your project can only be used starting R16B02 or if maps is used somewhere, starting 17.0. On contrary, pg module cannot be used after 17.5 but is back again in 23.0.

Hi folks,

Releases 2.10.0 is available on hex.pm for OTP-29.0.

Rebar plug-in was updated accordingly…

1 Like

Hi folks !

I find sometime on github some Erlang projects using rebar and including dependency to geas_rebar3 in rebar.config file of project.

I’m honored that my project is used, but geas is only a development tool that should not come with your project, and by dependency come in someone else project.

Moreover, geas database take a little time to compile. At CI scale, this is not great for the planet…

Except if your will is to use geas in CI automation, good approach is to use a local rebar config on your machine :

Linux : ~/.config/rebar3/rebar.config

Windows : %userprofile%\.config\rebar3\rebar.config

rebar will load this config first and then config of project.

BTW this advice can be valid for some other development plugins …

Thanks guy to save a polar bear !

2 Likes

Hi folks !

Release 2.10.0 was removed from hex.pm due to an infinite loop issue, and replaced by 2.10.1.

Release 2.11.0 is now available with new features :

  • rebar3 profile can be set via GEAS_PROFILE environment variable (or default to default).
  • rebar3 plugins directory is removed from analyze, instead some individual plugins, as not real dependencies of project.

Enjoy !

See also : API changelog · crownedgrouse/geas Wiki · GitHub

1 Like