Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Enable dialyzer for both OTP 24 and OTP 25 #3680

Merged
merged 2 commits into from
Jun 13, 2022
Merged

Conversation

chrzaszcz
Copy link
Member

@chrzaszcz chrzaszcz commented Jun 10, 2022

There are some dialyzer errors caught only on OTP 24, and not on OTP 25, because e.g. some types have changed. We support both, so let's run Dialyzer checks for both.

One type spec fixed to make it pass on OTP 24.

@codecov
Copy link

codecov bot commented Jun 10, 2022

Codecov Report

❗ No coverage uploaded for pull request base (otp-25.0.1@6b01e2a). Click here to learn what that means.
The diff coverage is n/a.

❗ Current head 798672d differs from pull request most recent head 16f7632. Consider uploading reports for the commit 16f7632 to get more accurate results

@@              Coverage Diff              @@
##             otp-25.0.1    #3680   +/-   ##
=============================================
  Coverage              ?   81.12%           
=============================================
  Files                 ?      433           
  Lines                 ?    31888           
  Branches              ?        0           
=============================================
  Hits                  ?    25869           
  Misses                ?     6019           
  Partials              ?        0           

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 6b01e2a...16f7632. Read the comment docs.

@mongoose-im
Copy link
Collaborator

mongoose-im commented Jun 10, 2022

small_tests_24 / small_tests / a3e400b
Reports root / small


small_tests_25 / small_tests / a3e400b
Reports root / small


dynamic_domains_pgsql_mnesia_24 / pgsql_mnesia / a3e400b
Reports root/ big
OK: 2909 / Failed: 0 / User-skipped: 88 / Auto-skipped: 0


dynamic_domains_pgsql_mnesia_25 / pgsql_mnesia / a3e400b
Reports root/ big
OK: 2909 / Failed: 0 / User-skipped: 88 / Auto-skipped: 0


ldap_mnesia_24 / ldap_mnesia / a3e400b
Reports root/ big
OK: 1508 / Failed: 0 / User-skipped: 401 / Auto-skipped: 0


dynamic_domains_mysql_redis_25 / mysql_redis / a3e400b
Reports root/ big
OK: 2892 / Failed: 0 / User-skipped: 105 / Auto-skipped: 0


dynamic_domains_mssql_mnesia_25 / odbc_mssql_mnesia / a3e400b
Reports root/ big
OK: 2909 / Failed: 0 / User-skipped: 88 / Auto-skipped: 0


pgsql_mnesia_24 / pgsql_mnesia / a3e400b
Reports root/ big
OK: 3283 / Failed: 0 / User-skipped: 97 / Auto-skipped: 0


ldap_mnesia_25 / ldap_mnesia / a3e400b
Reports root/ big
OK: 1508 / Failed: 0 / User-skipped: 401 / Auto-skipped: 0


internal_mnesia_25 / internal_mnesia / a3e400b
Reports root/ big
OK: 1593 / Failed: 0 / User-skipped: 316 / Auto-skipped: 0


pgsql_mnesia_25 / pgsql_mnesia / a3e400b
Reports root/ big
OK: 3283 / Failed: 0 / User-skipped: 97 / Auto-skipped: 0


elasticsearch_and_cassandra_25 / elasticsearch_and_cassandra_mnesia / a3e400b
Reports root/ big
OK: 1900 / Failed: 0 / User-skipped: 324 / Auto-skipped: 0


mysql_redis_25 / mysql_redis / a3e400b
Reports root/ big
OK: 3299 / Failed: 3 / User-skipped: 102 / Auto-skipped: 0

pep_SUITE:pep_tests:authorize_access_model
{error,{{badmatch,false},
    [{pubsub_tools,check_notification,2,
             [{file,"/home/circleci/project/big_tests/tests/pubsub_tools.erl"},
            {line,509}]},
     {pubsub_tools,receive_notification,3,
             [{file,"/home/circleci/project/big_tests/tests/pubsub_tools.erl"},
            {line,505}]},
     {pubsub_tools,receive_item_notification,4,
             [{file,"/home/circleci/project/big_tests/tests/pubsub_tools.erl"},
            {line,303}]},
     {pep_SUITE,'-authorize_access_model/1-fun-0-',2,
          [{file,"/home/circleci/project/big_tests/tests/pep_SUITE.erl"},
           {line,356}]},
     {escalus_story,story,4,
            [{file,"/home/circleci/project/big_tests/_build/default/lib/escalus/src/escalus_story.erl"},
             {line,72}]},
     {test_server,ts_tc,3,[{file,"test_server.erl"},{line,1782}]},
     {test_server,run_test_case_eval1,6,
            [{file,"test_server.erl"},{line,1291}]},
     {test_server,run_test_case_eval,9,
            [{file,"test_server.erl"},{line,1223}]}]}}

Report log

pep_SUITE:pep_tests:unsubscribe_after_presence_unsubscription
{error,
  {{badmatch,
     [{xmlel,<<"message">>,
        [{<<"from">>,
        <<"alice_unsubscribe_after_presence_unsubscription_1909@localhost">>},
         {<<"to">>,
        <<"bob_unsubscribe_after_presence_unsubscription_1909@localhost/res1">>},
         {<<"type">>,<<"headline">>}],
        [{xmlel,<<"event">>,
           [{<<"xmlns">>,
           <<"http://jabber.org/protocol/pubsub#event">>}],
           [{xmlel,<<"items">>,
            [{<<"node">>,<<"IM5hZ+LS++lxZCHbWAdyQw==">>}],
            [{xmlel,<<"item">>,
               [{<<"id">>,<<"salmon">>}],
               [{xmlel,<<"entry">>,
                  [{<<"xmlns">>,
                  <<"http://www.w3.org/2005/Atom">>}],
                  []}]}]}]},
         {xmlel,<<"headers">>,
           [{<<"xmlns">>,<<"http://jabber.org/protocol/shim">>}],
           []}]}]},
   [{pep_SUITE,'-unsubscribe_after_presence_unsubscription/1-fun-0-',2,
      [{file,"/home/circleci/project/big_tests/tests/pep_SUITE.erl"},
       {line,384}]},
    {escalus_story,story,4,
      [{file,
         "/home/circleci/project/big_tests/_build/default/lib/escalus/src/escalus_story.erl"},
       {line,72}]},
    {test_server,ts_tc,3,[{file,"test_server.erl"},{line,1782}]},
    {test_server,run_test_case_eval1,6,
      [{file,"test_server.erl"},{line,1291}]},
    {test_server,run_test_case_eval,9,
      [{file,"test_server.erl"},{line,1223}]}]}}

Report log

pep_SUITE:pep_tests:unsubscribe_after_presence_unsubscription
{error,
  {{badmatch,
     [{xmlel,<<"message">>,
        [{<<"from">>,
        <<"alice_unsubscribe_after_presence_unsubscription_1921@localhost">>},
         {<<"to">>,
        <<"bob_unsubscribe_after_presence_unsubscription_1921@localhost/res1">>},
         {<<"type">>,<<"headline">>}],
        [{xmlel,<<"event">>,
           [{<<"xmlns">>,
           <<"http://jabber.org/protocol/pubsub#event">>}],
           [{xmlel,<<"items">>,
            [{<<"node">>,<<"k+ApYPeHUeXwYyyES0OI9A==">>}],
            [{xmlel,<<"item">>,
               [{<<"id">>,<<"salmon">>}],
               [{xmlel,<<"entry">>,
                  [{<<"xmlns">>,
                  <<"http://www.w3.org/2005/Atom">>}],
                  []}]}]}]},
         {xmlel,<<"headers">>,
           [{<<"xmlns">>,<<"http://jabber.org/protocol/shim">>}],
           []}]}]},
   [{pep_SUITE,'-unsubscribe_after_presence_unsubscription/1-fun-0-',2,
      [{file,"/home/circleci/project/big_tests/tests/pep_SUITE.erl"},
       {line,384}]},
    {escalus_story,story,4,
      [{file,
         "/home/circleci/project/big_tests/_build/default/lib/escalus/src/escalus_story.erl"},
       {line,72}]},
    {test_server,ts_tc,3,[{file,"test_server.erl"},{line,1782}]},
    {test_server,run_test_case_eval1,6,
      [{file,"test_server.erl"},{line,1291}]},
    {test_server,run_test_case_eval,9,
      [{file,"test_server.erl"},{line,1223}]}]}}

Report log


riak_mnesia_24 / riak_mnesia / a3e400b
Reports root/ big
OK: 1743 / Failed: 0 / User-skipped: 323 / Auto-skipped: 0


mssql_mnesia_25 / odbc_mssql_mnesia / a3e400b
Reports root/ big
OK: 3283 / Failed: 0 / User-skipped: 97 / Auto-skipped: 0

@mongoose-im
Copy link
Collaborator

mongoose-im commented Jun 13, 2022

small_tests_24 / small_tests / 46efde3
Reports root / small


small_tests_25 / small_tests / 46efde3
Reports root / small


dynamic_domains_pgsql_mnesia_24 / pgsql_mnesia / 46efde3
Reports root/ big
OK: 2909 / Failed: 0 / User-skipped: 88 / Auto-skipped: 0


dynamic_domains_pgsql_mnesia_25 / pgsql_mnesia / 46efde3
Reports root/ big
OK: 2909 / Failed: 0 / User-skipped: 88 / Auto-skipped: 0


dynamic_domains_mysql_redis_25 / mysql_redis / 46efde3
Reports root/ big
OK: 2892 / Failed: 0 / User-skipped: 105 / Auto-skipped: 0


ldap_mnesia_24 / ldap_mnesia / 46efde3
Reports root/ big
OK: 1508 / Failed: 0 / User-skipped: 401 / Auto-skipped: 0


dynamic_domains_mssql_mnesia_25 / odbc_mssql_mnesia / 46efde3
Reports root/ big
OK: 2909 / Failed: 0 / User-skipped: 88 / Auto-skipped: 0


ldap_mnesia_25 / ldap_mnesia / 46efde3
Reports root/ big
OK: 1508 / Failed: 0 / User-skipped: 401 / Auto-skipped: 0


internal_mnesia_25 / internal_mnesia / 46efde3
Reports root/ big
OK: 1593 / Failed: 0 / User-skipped: 316 / Auto-skipped: 0


pgsql_mnesia_24 / pgsql_mnesia / 46efde3
Reports root/ big
OK: 3283 / Failed: 0 / User-skipped: 97 / Auto-skipped: 0


elasticsearch_and_cassandra_25 / elasticsearch_and_cassandra_mnesia / 46efde3
Reports root/ big
OK: 1900 / Failed: 0 / User-skipped: 324 / Auto-skipped: 0


mysql_redis_25 / mysql_redis / 46efde3
Reports root/ big
OK: 3278 / Failed: 0 / User-skipped: 102 / Auto-skipped: 0


pgsql_mnesia_25 / pgsql_mnesia / 46efde3
Reports root/ big
OK: 3283 / Failed: 0 / User-skipped: 97 / Auto-skipped: 0


riak_mnesia_24 / riak_mnesia / 46efde3
Reports root/ big
OK: 1743 / Failed: 0 / User-skipped: 323 / Auto-skipped: 0


mssql_mnesia_25 / odbc_mssql_mnesia / 46efde3
Reports root/ big
OK: 3283 / Failed: 0 / User-skipped: 97 / Auto-skipped: 0

@chrzaszcz chrzaszcz force-pushed the dialyzer-in-otp24 branch 2 times, most recently from 798672d to 46efde3 Compare June 13, 2022 11:23
@mongoose-im
Copy link
Collaborator

mongoose-im commented Jun 13, 2022

small_tests_24 / small_tests / 798672d
Reports root / small


small_tests_25 / small_tests / 798672d
Reports root / small


dynamic_domains_pgsql_mnesia_24 / pgsql_mnesia / 798672d
Reports root/ big
OK: 2909 / Failed: 0 / User-skipped: 88 / Auto-skipped: 0


dynamic_domains_pgsql_mnesia_25 / pgsql_mnesia / 798672d
Reports root/ big
OK: 2909 / Failed: 0 / User-skipped: 88 / Auto-skipped: 0


dynamic_domains_mysql_redis_25 / mysql_redis / 798672d
Reports root/ big
OK: 2891 / Failed: 1 / User-skipped: 105 / Auto-skipped: 0

service_mongoose_system_metrics_SUITE:module_opts:rdbms_module_opts_are_reported
{error,
  {{assertEqual,
     [{module,service_mongoose_system_metrics_SUITE},
      {line,372},
      {expression,"is_module_opt_reported ( Module , Key , Value )"},
      {expected,true},
      {value,false}]},
   [{service_mongoose_system_metrics_SUITE,check_module_opt,3,
      [{file,
         "/home/circleci/project/big_tests/tests/service_mongoose_system_metrics_SUITE.erl"},
       {line,372}]},
    {service_mongoose_system_metrics_SUITE,rdbms_module_opts_are_reported,
      1,
      [{file,
         "/home/circleci/project/big_tests/tests/service_mongoose_system_metrics_SUITE.erl"},
       {line,238}]},
    {test_server,ts_tc,3,[{file,"test_server.erl"},{line,1782}]},
    {test_server,run_test_case_eval1,6,
      [{file,"test_server.erl"},{line,1291}]},
    {test_server,run_test_case_eval,9,
      [{file,"test_server.erl"},{line,1223}]}]}}

Report log


ldap_mnesia_24 / ldap_mnesia / 798672d
Reports root/ big
OK: 1508 / Failed: 0 / User-skipped: 401 / Auto-skipped: 0


ldap_mnesia_25 / ldap_mnesia / 798672d
Reports root/ big
OK: 1508 / Failed: 0 / User-skipped: 401 / Auto-skipped: 0


dynamic_domains_mssql_mnesia_25 / odbc_mssql_mnesia / 798672d
Reports root/ big
OK: 2909 / Failed: 0 / User-skipped: 88 / Auto-skipped: 0


internal_mnesia_25 / internal_mnesia / 798672d
Reports root/ big
OK: 1593 / Failed: 0 / User-skipped: 316 / Auto-skipped: 0


elasticsearch_and_cassandra_25 / elasticsearch_and_cassandra_mnesia / 798672d
Reports root/ big
OK: 1900 / Failed: 0 / User-skipped: 324 / Auto-skipped: 0


pgsql_mnesia_24 / pgsql_mnesia / 798672d
Reports root/ big
OK: 3283 / Failed: 0 / User-skipped: 97 / Auto-skipped: 0


pgsql_mnesia_25 / pgsql_mnesia / 798672d
Reports root/ big
OK: 3283 / Failed: 0 / User-skipped: 97 / Auto-skipped: 0


riak_mnesia_24 / riak_mnesia / 798672d
Reports root/ big
OK: 1743 / Failed: 0 / User-skipped: 323 / Auto-skipped: 0


mysql_redis_25 / mysql_redis / 798672d
Reports root/ big
OK: 3278 / Failed: 0 / User-skipped: 102 / Auto-skipped: 0


mssql_mnesia_25 / odbc_mssql_mnesia / 798672d
Reports root/ big
OK: 3283 / Failed: 0 / User-skipped: 97 / Auto-skipped: 0

@chrzaszcz chrzaszcz changed the base branch from master to otp-25.0.1 June 13, 2022 11:46
chrzaszcz and others added 2 commits June 13, 2022 13:47
gen_server:request_id is not exported in OTP 24,
but let's keep the changes limited for now.
@mongoose-im
Copy link
Collaborator

mongoose-im commented Jun 13, 2022

small_tests_24 / small_tests / 16f7632
Reports root / small


small_tests_25 / small_tests / 16f7632
Reports root / small


dynamic_domains_pgsql_mnesia_24 / pgsql_mnesia / 16f7632
Reports root/ big
OK: 2825 / Failed: 0 / User-skipped: 88 / Auto-skipped: 0


ldap_mnesia_24 / ldap_mnesia / 16f7632
Reports root/ big
OK: 1508 / Failed: 0 / User-skipped: 401 / Auto-skipped: 0


dynamic_domains_mysql_redis_25 / mysql_redis / 16f7632
Reports root/ big
OK: 2808 / Failed: 0 / User-skipped: 105 / Auto-skipped: 0


pgsql_mnesia_24 / pgsql_mnesia / 16f7632
Reports root/ big
OK: 3199 / Failed: 0 / User-skipped: 97 / Auto-skipped: 0


dynamic_domains_pgsql_mnesia_25 / pgsql_mnesia / 16f7632
Reports root/ big
OK: 2825 / Failed: 0 / User-skipped: 88 / Auto-skipped: 0


ldap_mnesia_25 / ldap_mnesia / 16f7632
Reports root/ big
OK: 1508 / Failed: 0 / User-skipped: 401 / Auto-skipped: 0


dynamic_domains_mssql_mnesia_25 / odbc_mssql_mnesia / 16f7632
Reports root/ big
OK: 2825 / Failed: 0 / User-skipped: 88 / Auto-skipped: 0


internal_mnesia_25 / internal_mnesia / 16f7632
Reports root/ big
OK: 1593 / Failed: 0 / User-skipped: 316 / Auto-skipped: 0


riak_mnesia_24 / riak_mnesia / 16f7632
Reports root/ big
OK: 1731 / Failed: 0 / User-skipped: 323 / Auto-skipped: 0


pgsql_mnesia_25 / pgsql_mnesia / 16f7632
Reports root/ big
OK: 3199 / Failed: 0 / User-skipped: 97 / Auto-skipped: 0


elasticsearch_and_cassandra_25 / elasticsearch_and_cassandra_mnesia / 16f7632
Reports root/ big
OK: 1876 / Failed: 0 / User-skipped: 324 / Auto-skipped: 0


mysql_redis_25 / mysql_redis / 16f7632
Reports root/ big
OK: 3194 / Failed: 0 / User-skipped: 102 / Auto-skipped: 0


mssql_mnesia_25 / odbc_mssql_mnesia / 16f7632
Reports root/ big
OK: 3210 / Failed: 1 / User-skipped: 97 / Auto-skipped: 0

pep_SUITE:pep_tests:unsubscribe_after_presence_unsubscription
{error,
  {{badmatch,
     [{xmlel,<<"message">>,
        [{<<"from">>,
        <<"alice_unsubscribe_after_presence_unsubscription_1936@localhost">>},
         {<<"to">>,
        <<"bob_unsubscribe_after_presence_unsubscription_1936@localhost/res1">>},
         {<<"type">>,<<"headline">>}],
        [{xmlel,<<"event">>,
           [{<<"xmlns">>,
           <<"http://jabber.org/protocol/pubsub#event">>}],
           [{xmlel,<<"items">>,
            [{<<"node">>,<<"YFaZjozKrbZlSy2UrSoAwg==">>}],
            [{xmlel,<<"item">>,
               [{<<"id">>,<<"salmon">>}],
               [{xmlel,<<"entry">>,
                  [{<<"xmlns">>,
                  <<"http://www.w3.org/2005/Atom">>}],
                  []}]}]}]},
         {xmlel,<<"headers">>,
           [{<<"xmlns">>,<<"http://jabber.org/protocol/shim">>}],
           []}]}]},
   [{pep_SUITE,'-unsubscribe_after_presence_unsubscription/1-fun-0-',2,
      [{file,"/home/circleci/project/big_tests/tests/pep_SUITE.erl"},
       {line,384}]},
    {escalus_story,story,4,
      [{file,
         "/home/circleci/project/big_tests/_build/default/lib/escalus/src/escalus_story.erl"},
       {line,72}]},
    {test_server,ts_tc,3,[{file,"test_server.erl"},{line,1782}]},
    {test_server,run_test_case_eval1,6,
      [{file,"test_server.erl"},{line,1291}]},
    {test_server,run_test_case_eval,9,
      [{file,"test_server.erl"},{line,1223}]}]}}

Report log

@chrzaszcz chrzaszcz marked this pull request as ready for review June 13, 2022 12:54
@arcusfelis arcusfelis merged commit 5e37f07 into otp-25.0.1 Jun 13, 2022
@arcusfelis arcusfelis deleted the dialyzer-in-otp24 branch June 13, 2022 12:55
@chrzaszcz chrzaszcz added this to the 6.0.0 milestone Dec 12, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants