defmodule ExMobileDevice.MixProject do use Mix.Project @version "0.10.1" @source_url "https://gitlab.com/cyberassessmentlabs/public/libs/exmobiledevice" def project do [ app: :exmobiledevice, description: "iDevice control via usbmuxd", version: @version, elixir: "~> 1.17", start_permanent: Mix.env() == :prod, deps: deps(), aliases: aliases(), # Docs source_url: @source_url, package: package(), docs: docs() ] end # Run "mix help compile.app" to learn about applications. def application do [ extra_applications: [:logger, :crypto, :ssl, :tools, :inets], mod: {ExMobileDevice.Application, []} ] end defp package do [ description: "iDevice control via usbmuxd", licenses: ["MIT"], links: %{ "GitLab" => @source_url } ] end defp docs do [ main: "readme", source_ref: "#{@version}", source_url: @source_url, logo: "assets/exmobiledevice.png", extras: [ "README.md", "CHANGELOG.md", "LICENSE" ] ] end # Run "mix help deps" to learn about dependencies. defp deps do [ {:pealist, "~> 0.2"}, {:jason, "~> 1.4"}, {:uniq, "~> 0.1"}, {:ex_doc, "~> 0.39", only: :dev, runtime: false}, {:typedstruct, "~> 0.5.0", runtime: false}, {:credo, "~> 1.7.3", only: [:dev], runtime: false}, {:publisho, "~> 1.0", only: :dev, runtime: false} ] end defp aliases do [ precommit: [ "compile --warnings-as-errors", "deps.unlock --unused", "format", "credo --strict", "cmd env MIX_ENV=test mix test" ] ] end end