From 2cf421b88672e510bbff8285e38fc193d334504a Mon Sep 17 00:00:00 2001 From: acrogenesis Date: Mon, 9 Mar 2026 14:17:12 -0600 Subject: [PATCH 1/3] Widen httpoison version constraint to ~> 2.3 --- mix.exs | 2 +- mix.lock | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/mix.exs b/mix.exs index 98b4ddd..b7bbdfb 100644 --- a/mix.exs +++ b/mix.exs @@ -37,7 +37,7 @@ defmodule ElixirAuthGoogle.MixProject do defp deps do [ {:credo, "~> 1.5", only: [:dev, :test], runtime: false}, - {:httpoison, "~> 2.3.0"}, + {:httpoison, "~> 2.3"}, {:jason, "~> 1.2"}, # Track test coverage: github.com/parroty/excoveralls diff --git a/mix.lock b/mix.lock index 55eae81..f16f89a 100644 --- a/mix.lock +++ b/mix.lock @@ -1,7 +1,7 @@ %{ "bunt": {:hex, :bunt, "1.0.0", "081c2c665f086849e6d57900292b3a161727ab40431219529f13c4ddcf3e7a44", [:mix], [], "hexpm", "dc5f86aa08a5f6fa6b8096f0735c4e76d54ae5c9fa2c143e5a1fc7c1cd9bb6b5"}, "certifi": {:hex, :certifi, "2.15.0", "0e6e882fcdaaa0a5a9f2b3db55b1394dba07e8d6d9bcad08318fb604c6839712", [:rebar3], [], "hexpm", "b147ed22ce71d72eafdad94f055165c1c182f61a2ff49df28bcc71d1d5b94a60"}, - "credo": {:hex, :credo, "1.7.16", "a9f1389d13d19c631cb123c77a813dbf16449a2aebf602f590defa08953309d4", [:mix], [{:bunt, "~> 0.2.1 or ~> 1.0", [hex: :bunt, repo: "hexpm", optional: false]}, {:file_system, "~> 0.2 or ~> 1.0", [hex: :file_system, repo: "hexpm", optional: false]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: false]}], "hexpm", "d0562af33756b21f248f066a9119e3890722031b6d199f22e3cf95550e4f1579"}, + "credo": {:hex, :credo, "1.7.17", "f92b6aa5b26301eaa5a35e4d48ebf5aa1e7094ac00ae38f87086c562caf8a22f", [:mix], [{:bunt, "~> 0.2.1 or ~> 1.0", [hex: :bunt, repo: "hexpm", optional: false]}, {:file_system, "~> 0.2 or ~> 1.0", [hex: :file_system, repo: "hexpm", optional: false]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: false]}], "hexpm", "1eb5645c835f0b6c9b5410f94b5a185057bcf6d62a9c2b476da971cde8749645"}, "earmark": {:hex, :earmark, "1.4.9", "837e4c1c5302b3135e9955f2bbf52c6c52e950c383983942b68b03909356c0d9", [:mix], [{:earmark_parser, ">= 1.4.9", [hex: :earmark_parser, repo: "hexpm", optional: false]}], "hexpm", "0d72df7d13a3dc8422882bed5263fdec5a773f56f7baeb02379361cb9e5b0d8e"}, "earmark_parser": {:hex, :earmark_parser, "1.4.44", "f20830dd6b5c77afe2b063777ddbbff09f9759396500cdbe7523efd58d7a339c", [:mix], [], "hexpm", "4778ac752b4701a5599215f7030989c989ffdc4f6df457c5f36938cc2d2a2750"}, "ex_doc": {:hex, :ex_doc, "0.40.1", "67542e4b6dde74811cfd580e2c0149b78010fd13001fda7cfeb2b2c2ffb1344d", [:mix], [{:earmark_parser, "~> 1.4.44", [hex: :earmark_parser, repo: "hexpm", optional: false]}, {:makeup_c, ">= 0.1.0", [hex: :makeup_c, repo: "hexpm", optional: true]}, {:makeup_elixir, "~> 0.14 or ~> 1.0", [hex: :makeup_elixir, repo: "hexpm", optional: false]}, {:makeup_erlang, "~> 0.1 or ~> 1.0", [hex: :makeup_erlang, repo: "hexpm", optional: false]}, {:makeup_html, ">= 0.1.0", [hex: :makeup_html, repo: "hexpm", optional: true]}], "hexpm", "bcef0e2d360d93ac19f01a85d58f91752d930c0a30e2681145feea6bd3516e00"}, From fa2513bb7bf3818d22dbfb1b4dca7ebf4807d130 Mon Sep 17 00:00:00 2001 From: acrogenesis Date: Mon, 9 Mar 2026 14:17:22 -0600 Subject: [PATCH 2/3] Fix query param ordering by using keyword lists instead of maps --- lib/elixir_auth_google.ex | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/lib/elixir_auth_google.ex b/lib/elixir_auth_google.ex index 15d8363..90a7854 100644 --- a/lib/elixir_auth_google.ex +++ b/lib/elixir_auth_google.ex @@ -80,11 +80,11 @@ defmodule ElixirAuthGoogle do """ @spec generate_oauth_url(String.t()) :: String.t() def generate_oauth_url(url) when is_binary(url) do - query = %{ + query = [ client_id: google_client_id(), - scope: google_scope(), - redirect_uri: generate_redirect_uri(url) - } + redirect_uri: generate_redirect_uri(url), + scope: google_scope() + ] params = URI.encode_query(query, :rfc3986) @@ -93,11 +93,11 @@ defmodule ElixirAuthGoogle do @spec generate_oauth_url(conn) :: String.t() def generate_oauth_url(conn) when is_map(conn) do - query = %{ + query = [ client_id: google_client_id(), - scope: google_scope(), - redirect_uri: generate_redirect_uri(conn) - } + redirect_uri: generate_redirect_uri(conn), + scope: google_scope() + ] params = URI.encode_query(query, :rfc3986) From d163ddd76552eea50319a6f1a2f6bc009c863a4c Mon Sep 17 00:00:00 2001 From: acrogenesis Date: Mon, 9 Mar 2026 14:18:14 -0600 Subject: [PATCH 3/3] Fix deprecation warnings on Elixir 1.19+: move 'preferred_cli_env' to 'cli/0', replace 'Mix.Config' with 'Config' --- config/test.exs | 2 +- mix.exs | 9 +++++++-- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/config/test.exs b/config/test.exs index 40b9f2f..3df37b5 100644 --- a/config/test.exs +++ b/config/test.exs @@ -1,4 +1,4 @@ -import Mix.Config +import Config config :elixir_auth_google, client_id: "631770888008-6n0oruvsm16kbkqg6u76p5cv5kfkcekt.apps.googleusercontent.com", diff --git a/mix.exs b/mix.exs index b7bbdfb..872d705 100644 --- a/mix.exs +++ b/mix.exs @@ -15,8 +15,13 @@ defmodule ElixirAuthGoogle.MixProject do package: package(), aliases: aliases(), # coverage - test_coverage: [tool: ExCoveralls], - preferred_cli_env: [ + test_coverage: [tool: ExCoveralls] + ] + end + + def cli do + [ + preferred_envs: [ c: :test, coveralls: :test, "coveralls.json": :test,