@@ -13,6 +13,7 @@ defmodule ExLibnice.MixProject do
1313 elixirc_paths: elixirc_paths ( Mix . env ( ) ) ,
1414 start_permanent: Mix . env ( ) == :prod ,
1515 deps: deps ( ) ,
16+ dialyzer: dialyzer ( ) ,
1617
1718 # hex
1819 description: "Elixir wrapper over libnice" ,
@@ -41,12 +42,27 @@ defmodule ExLibnice.MixProject do
4142 { :unifex , "~> 1.0" } ,
4243 { :bunch , "~> 1.3.0" } ,
4344 { :mdns , "~> 1.0.12" } ,
44- { :ex_doc , "~> 0.23 " , only: :dev , runtime: false } ,
45- { :dialyxir , "~> 1.0 " , only: :dev , runtime: false } ,
46- { :credo , "~> 1.5 " , only: :dev , runtime: false }
45+ { :ex_doc , "~> 0.34 " , only: :dev , runtime: false } ,
46+ { :dialyxir , "~> 1.4 " , only: :dev , runtime: false } ,
47+ { :credo , "~> 1.7 " , only: :dev , runtime: false }
4748 ]
4849 end
4950
51+ defp dialyzer ( ) do
52+ opts = [
53+ flags: [ :error_handling ] ,
54+ plt_add_apps: [ :mix , :syntax_tools ]
55+ ]
56+
57+ if System . get_env ( "CI" ) == "true" do
58+ # Store PLTs in cacheable directory for CI
59+ File . mkdir_p! ( Path . join ( [ __DIR__ , "priv" , "plts" ] ) )
60+ [ plt_local_path: "priv/plts" , plt_core_path: "priv/plts" ] ++ opts
61+ else
62+ opts
63+ end
64+ end
65+
5066 defp package do
5167 [
5268 maintainers: [ "Membrane Team" ] ,
0 commit comments