@@ -148,8 +148,15 @@ defmodule Appsignal.Mixfile do
148148
149149 _ ->
150150 case Version . compare ( system_version , "1.14.0" ) do
151- :lt -> "~> 1.14 and < 1.19.0"
152- _ -> "~> 1.14"
151+ :lt ->
152+ "~> 1.14 and < 1.19.0"
153+
154+ _ ->
155+ # plug 1.20.0 requires Elixir ~> 1.15, so cap it on 1.14.
156+ case Version . compare ( system_version , "1.15.0" ) do
157+ :lt -> "~> 1.14 and < 1.20.0"
158+ _ -> "~> 1.14"
159+ end
153160 end
154161 end
155162
@@ -165,6 +172,14 @@ defmodule Appsignal.Mixfile do
165172 _ -> [ { :logger_backends , "~> 1.0" } ]
166173 end
167174
175+ # hpax is a transitive dependency (via finch/mint). Version 1.0.4 requires
176+ # Elixir ~> 1.15, so pin to the last compatible version on older Elixirs.
177+ hpax_dependency =
178+ case Version . compare ( system_version , "1.15.0" ) do
179+ :lt -> [ { :hpax , ">= 1.0.0 and < 1.0.4" , override: true } ]
180+ _ -> [ ]
181+ end
182+
168183 [
169184 { :castore , "~> 1.0" } ,
170185 { :certifi , "~> 2.14" } ,
@@ -181,6 +196,6 @@ defmodule Appsignal.Mixfile do
181196 { :dialyxir , "~> 1.4" , only: [ :dev , :test ] , runtime: false } ,
182197 { :telemetry , telemetry_version } ,
183198 { :httpoison , "~> 2.0" , optional: true }
184- ] ++ mime_dependency ++ logger_backends_dependency
199+ ] ++ mime_dependency ++ logger_backends_dependency ++ hpax_dependency
185200 end
186201end
0 commit comments