-
-
Save cmeiklejohn/77e2c2b709d85b108aaf to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
admin_node.erl:42: Call to missing or unexported function admin_routes:node_route/1 | |
admin_node.erl:75: The call riak_control_formatting:action_result({'error', 'unknown_action'},Req::any(),C::any()) breaks the contract ({'badrpc',any()},wrq:reqdata(),context()) -> {boolean(),wrq:reqdata(),context()} | |
admin_node.erl:89: The call riak_control_formatting:node_ring_details(P::any(),Node::atom()) will never return since the success typing is (#partition_info{index::'undefined' | integer(),partition::'undefined' | integer(),owner::atom(),vnodes::'undefined' | [{_,_}],handoffs::'undefined' | [{_,_,_}]},maybe_improper_list()) -> [{'i' | 'index' | 'node' | 'reachable' | 'status' | [any(),...],atom() | binary() | integer()}] and the contract is (partition(),maybe_improper_list()) -> [{'i' | 'index' | 'node' | 'reachable' | 'status' | [any(),...],atom() | binary() | integer()}] | |
admin_node_leave.erl:40: Call to missing or unexported function admin_routes:node_route/1 | |
admin_node_stop.erl:40: Call to missing or unexported function admin_routes:node_route/1 | |
admin_routes.erl:45: The specification for admin_routes:vnode_route/1 states that the function might also return [string()] but the inferred return is none() | |
admin_routes.erl:48: The specification for admin_routes:vnode_route/0 states that the function might also return [string()] but the inferred return is none() | |
admin_routes.erl:52: Type specification admin_routes:nodes_route() -> [string()] is a supertype of the success typing: admin_routes:nodes_route() -> [string(),...] | |
admin_routes.erl:54: Type specification admin_routes:partitions_route() -> [string()] is a supertype of the success typing: admin_routes:partitions_route() -> [string(),...] | |
admin_routes.erl:56: Type specification admin_routes:cluster_route() -> [string()] is a supertype of the success typing: admin_routes:cluster_route() -> [string(),...] | |
riak_control_app.erl:31: The specification for riak_control_app:start/2 states that the function might also return {'ok',pid(),_} but the inferred return is 'ignore' | {'error',_} | {'ok',pid()} | |
riak_control_security.erl:146: The specification for riak_control_security:csrf_token/2 states that the function might also return 'undefined' but the inferred return is [any()] | |
riak_control_session.erl:144: Type specification riak_control_session:init([any()]) -> {'ok',state()} is a supertype of the success typing: riak_control_session:init([]) -> {'ok',#state{vsn::'undefined' | integer(),services::'undefined' | [{atom(),'fallback' | 'primary' | 'undefined'}],partitions::'undefined' | [#partition_info{index::'undefined' | integer(),partition::'undefined' | integer(),owner::atom(),vnodes::'undefined' | [{atom(),'fallback' | 'primary' | 'undefined'}],handoffs::'undefined' | [{atom(),integer(),atom()}]}],nodes::'undefined' | [#member_info{node::atom(),status::'down' | 'incompatible' | 'invalid' | 'leaving' | 'undefined' | 'valid',reachable::'false' | 'true' | 'undefined',vnodes::'undefined' | [{{atom(),atom()},atom()}],handoffs::'undefined' | [{atom(),integer(),atom()}],ring_pct::'undefined' | float(),pending_pct::'undefined' | float(),mem_total::'undefined' | integer(),mem_used::'undefined' | integer(),mem_erlang::'undefined' | integer(),action::'leave' | 'remove' | 'undefined' | {'force_replace',atom()} | {'replace',atom()},replacement::atom()}],update_tick::'false' | 'true' | 'undefined'}} | |
riak_control_session.erl:378: Type specification riak_control_session:get_partition_details(#state{},{integer(),term()},handoffs()) -> #partition_info{} is a supertype of the success typing: riak_control_session:get_partition_details(#state{vsn::'undefined' | integer(),services::'undefined' | [{atom(),'fallback' | 'primary' | 'undefined'}],partitions::'undefined' | [#partition_info{index::'undefined' | integer(),partition::'undefined' | integer(),owner::atom(),vnodes::'undefined' | [{atom(),'fallback' | 'primary' | 'undefined'}],handoffs::'undefined' | [{atom(),integer(),atom()}]}],nodes::'undefined' | [#member_info{node::atom(),status::'down' | 'incompatible' | 'invalid' | 'leaving' | 'undefined' | 'valid',reachable::'false' | 'true' | 'undefined',vnodes::'undefined' | [{{atom(),atom()},atom()}],handoffs::'undefined' | [{atom(),integer(),atom()}],ring_pct::'undefined' | float(),pending_pct::'undefined' | float(),mem_total::'undefined' | integer(),mem_used::'undefined' | integer(),mem_erlang::'undefined' | integer(),action::'leave' | 'remove' | 'undefined' | {'force_replace',atom()} | {'replace',atom()},replacement::atom()}],update_tick::'false' | 'true' | 'undefined'},{integer(),atom()},[{atom(),integer(),atom()}]) -> #partition_info{index::'undefined' | integer(),partition::'undefined' | integer(),owner::atom(),vnodes::'undefined' | [{atom(),'fallback' | 'primary' | 'undefined'}],handoffs::'undefined' | [{atom(),integer(),atom()}]} | |
riak_control_session.erl:418: Type specification riak_control_session:nodes_and_claim_percentages(ring()) -> [any()] is a supertype of the success typing: riak_control_session:nodes_and_claim_percentages(_) -> [{_,_}] |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
I think a bunch of these are because of the extra flag to dialyzer (-Wunderspecs) which reports specs that are too liberal / permissive.
I'm starting to think it'd be better to have that off by default cause it raises a number of false positives.