esl / MongooseIM

MongooseIM is Erlang Solutions' robust, scalable and efficient XMPP server, aimed at large installations. Specifically designed for enterprise purposes, it is fault-tolerant and can utilise the resources of multiple clustered machines.
Other
1.67k stars 428 forks source link

Getting error in using "make elvis" #4389

Open jaspreet-android opened 3 weeks ago

jaspreet-android commented 3 weeks ago

MongooseIM version: 6.3 Installed from: source Erlang/OTP version: erlang 25

Detailed logs are attached. elvis.log

./rebar3 as lint lint
compiling with FIPS mode enabled
===> No entry for profile lint in config.
===> Verifying dependencies...
===> /Users/jaspreet.chhabra/Documents/mongooseim-3/asn1/XmppAddr.asn1
===> Analyzing applications...
===> Compiling mongooseim
===> Uncaught error in rebar_core. Run with DIAGNOSTIC=1 to see stacktrace or consult rebar3.crashdump
===> When submitting a bug report, please include the output of `rebar3 report "your command"`
make: *** [elvis] Error 1
fenek commented 2 weeks ago

Hi,

It's caused by some dependencies, like prometheus_cowboy, referencing rebar3_elvis_plugin which hasn't been maintained for 8 years and also includes a module (elvis_config) that collides with elvis_core plugin used by MongooseIM. There's no 5-minute fix for it I guess. Either we would need to use a different plugin, or ask the deps' maintainers to update, or somehow blacklist these plugins. Ultimately, you may still use pure elvis tool, without the intermediate call to the rebar3.

Unfortunately the tool hasn't been in use in the CI for a long time - it complains a lot about the current code. However, the bundled config file is probably outdated too.