defmodule Salemove.HttpClient.Mixfile do use Mix.Project def project do [ app: :salemove_http_client, version: "6.2.0", elixir: "~> 1.16", elixirc_paths: elixirc_paths(Mix.env()), start_permanent: Mix.env() == :prod, build_embedded: Mix.env() == :prod, deps: deps(), package: package(), description: description(), docs: [ main: "Salemove.HttpClient", extras: ["CHANGELOG.md"] ], dialyzer: [ plt_add_apps: [:ex_unit], flags: [:error_handling, :race_conditions, :underspecs] ] ] end def description do ~S""" Elixir HTTP client for JSON services """ end def package do [ maintainers: ["SaleMove TechMovers"], licenses: ["MIT"], links: %{"GitHub" => "https://github.com/salemove/elixir-http_client"} ] end # Run "mix help compile.app" to learn about applications. def application do [ extra_applications: [:logger], mod: {Salemove.HttpClient.Application, []} ] end defp elixirc_paths(:test), do: ["lib", "test/support"] defp elixirc_paths(_), do: ["lib"] # Run "mix help deps" to learn about dependencies. defp deps do [ # 1.18.3 is the first tesla release whose hackney constraint allows # hackney 4.x (for applications opting back into the hackney adapter). {:tesla, "~> 1.18 and >= 1.18.3"}, {:finch, "~> 0.23", optional: true}, {:tesla_statsd, "~> 0.4.0", optional: true}, {:confex, "~> 3.0"}, {:telemetry, "~> 0.4 or ~> 1.0"}, {:opentelemetry_tesla, "~> 2.0", optional: true}, {:ex_doc, ">= 0.0.0", only: :dev}, {:dialyxir, "~> 0.5", only: :dev, runtime: false}, {:jason, "~> 1.1"} ] end end