Open rupeshbasha opened 3 months ago
ejabberd has optional features, some of them disabled by default. But Dialyzer obviously checks all the code, even the one that depends on features that may be disabled by default.
For that reason, if you plan to run xref
, dialyzer
, tests... you should enable all the features:
./configure --enable-all
You can see that in https://github.com/processone/ejabberd/blob/1add1de23b1ea2ae1542da0c752a8859100e133a/.github/workflows/ci.yml#L124 https://github.com/processone/ejabberd/blob/1add1de23b1ea2ae1542da0c752a8859100e133a/.github/workflows/runtime.yml#L69 ...
When running Dialyzer and common tests on the current ejabberd codebase, I encountered several warnings and test failures. The following are the details of the issues:
Dialyzer Warnings
File: src/ejabberd_sip.erl
File: src/mod_avatar.erl
File: src/mod_http_upload.erl
Common Test Failures
Command: rebar3 ct
Output:
Steps to Reproduce
Environment
Expected Behavior
Dialyzer should pass without warnings, and all tests should pass without failures or unexpected skips.