defmodule BeamFile.MixProject do use Mix.Project def project do [ app: :beam_file, version: "0.3.3", elixir: "~> 1.11", description: "An interface to the BEAM file format and a decompiler", start_permanent: Mix.env() == :prod, deps: deps(), test_coverage: [tool: ExCoveralls], preferred_cli_env: preferred_cli_env(), dialyzer: dialyzer(), package: package(), docs: docs() ] end def application do [ extra_applications: [:logger, :syntax_tools] ] end defp docs do [ main: "BeamFile", formatters: ["html"] ] end defp preferred_cli_env do [ coveralls: :test, "coveralls.detail": :test, "coveralls.post": :test, "coveralls.html": :test, "coveralls.travis": :test ] end defp dialyzer do [ plt_add_apps: [:mix, :syntax_tools, :beam_lib], plt_file: {:no_warn, "test/support/plts/dialyzer.plt"}, flags: [:unmatched_returns] ] end defp deps do [ {:credo, "~> 1.5", only: [:dev, :test], runtime: false}, {:dialyxir, "~> 1.1", only: :dev, runtime: false}, {:ex_doc, "~> 0.21", only: :dev, runtime: false}, {:excoveralls, "~> 0.14.4", only: :test} ] end defp package do [ maintainers: ["Marcus Kruse"], licenses: ["MIT"], links: %{"GitHub" => "https://github.com/hrzndhrn/beam_file"} ] end end