Skip to content

Commit fe6e780

Browse files
committed
🧹 Update assent, req and finch
1 parent 534e1e7 commit fe6e780

File tree

9 files changed

+20
-22
lines changed

9 files changed

+20
-22
lines changed

config/test.exs

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -98,14 +98,16 @@ config :sequin,
9898
aws_sqs: [
9999
req_opts: [plug: {Req.Test, Sequin.Aws.HttpClient}]
100100
],
101+
# TODO Enable compress_body once Req fixes this issue
102+
# https://github.com/wojtekmach/req/pull/496
101103
gcp_pubsub: [
102-
req_opts: [plug: {Req.Test, Sequin.Sinks.Gcp.PubSub}]
104+
req_opts: [plug: {Req.Test, Sequin.Sinks.Gcp.PubSub}, compress_body: false]
103105
],
104106
s2: [
105-
req_opts: [plug: {Req.Test, Sequin.Sinks.S2.Client}]
107+
req_opts: [plug: {Req.Test, Sequin.Sinks.S2.Client}, compress_body: false]
106108
],
107109
meilisearch: [
108-
req_opts: [plug: {Req.Test, Sequin.Sinks.Meilisearch.Client}]
110+
req_opts: [plug: {Req.Test, Sequin.Sinks.Meilisearch.Client}, compress_body: false]
109111
],
110112
redis_module: Sequin.Sinks.RedisMock,
111113
kafka_module: Sequin.Sinks.KafkaMock,

lib/sequin_web/controllers/user_session_controller.ex

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
defmodule SequinWeb.UserSessionController do
22
use SequinWeb, :controller
33

4-
alias Assent.Config
54
alias Assent.Strategy.Github
65
alias Sequin.Accounts
76
alias Sequin.Accounts.Impersonate
@@ -36,8 +35,7 @@ defmodule SequinWeb.UserSessionController do
3635

3736
:github
3837
|> oauth_provider_config()
39-
# Session params should be added to the config so the strategy can use them
40-
|> Config.put(:session_params, session_params)
38+
|> Keyword.put(:session_params, session_params)
4139
|> Github.callback(params)
4240
|> case do
4341
{:ok, %{user: user_data, token: token}} ->
@@ -60,7 +58,6 @@ defmodule SequinWeb.UserSessionController do
6058
# "name" => "Example User"}
6159
defp handle_oauth_callback(conn, user_data, _token) do
6260
%{"email" => email, "sub" => github_id} = user_data
63-
github_id = to_string(github_id)
6461
user = Accounts.get_user_by_auth_provider_id(:github, github_id)
6562

6663
case {user, Sequin.feature_enabled?(:account_self_signup)} do

mix.exs

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@ defmodule Sequin.MixProject do
6060

6161
# Authentication and Security
6262
{:argon2_elixir, "~> 3.0"},
63-
{:assent, "~> 0.2.9"},
63+
{:assent, "~> 0.3.1"},
6464
{:jose, "~> 1.11"},
6565

6666
# AWS and Cloud Services
@@ -88,7 +88,9 @@ defmodule Sequin.MixProject do
8888

8989
# HTTP and API Clients
9090
{:finch, "~> 0.13"},
91-
{:req, "~> 0.5"},
91+
# TODO Use published version once release 0.5.16 or greater is done
92+
# {:req, "~> 0.5"},
93+
{:req, github: "wojtekmach/req", ref: "dcb7ddf", override: true},
9294
{:swoosh, "~> 1.5"},
9395

9496
# Messaging / PubSub / Queues

mix.lock

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
"amqp": {:hex, :amqp, "4.0.0", "c62c0eba8ad5f5bbebf668ca4a68bbf8d9e35c9b3bc8703ff679c01f3e6899d3", [:mix], [{:amqp_client, "~> 4.0", [hex: :amqp_client, repo: "hexpm", optional: false]}], "hexpm", "4148c54dc35733e6c2f9208ff26bc61601cde2da993f752a3452442b018d5735"},
44
"amqp_client": {:hex, :amqp_client, "4.0.3", "c7dcc8031c780cd39ec586ba827a8eb26e006e9761af8d3f58fded11f645ebd4", [:make, :rebar3], [{:credentials_obfuscation, "3.4.0", [hex: :credentials_obfuscation, repo: "hexpm", optional: false]}, {:rabbit_common, "4.0.3", [hex: :rabbit_common, repo: "hexpm", optional: false]}], "hexpm", "ae945f7280617e9a4b17a6d49e3a2f496d716e8088ec29d8e94ecc79e5da7458"},
55
"argon2_elixir": {:hex, :argon2_elixir, "3.2.1", "f47740bf9f2a39ffef79ba48eb25dea2ee37bcc7eadf91d49615591d1a6fce1a", [:make, :mix], [{:comeonin, "~> 5.3", [hex: :comeonin, repo: "hexpm", optional: false]}, {:elixir_make, "~> 0.6", [hex: :elixir_make, repo: "hexpm", optional: false]}], "hexpm", "a813b78217394530b5fcf4c8070feee43df03ffef938d044019169c766315690"},
6-
"assent": {:hex, :assent, "0.2.10", "27e544c3428996c8ad744d473b3ceae86e4eb7db6bc7432676420e67e9148dd7", [:mix], [{:certifi, ">= 0.0.0", [hex: :certifi, repo: "hexpm", optional: true]}, {:finch, "~> 0.15", [hex: :finch, repo: "hexpm", optional: true]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: true]}, {:jose, "~> 1.8", [hex: :jose, repo: "hexpm", optional: true]}, {:mint, "~> 1.0", [hex: :mint, repo: "hexpm", optional: true]}, {:req, "~> 0.4", [hex: :req, repo: "hexpm", optional: true]}, {:ssl_verify_fun, ">= 0.0.0", [hex: :ssl_verify_fun, repo: "hexpm", optional: true]}], "hexpm", "8483bf9621e994795a70a4ad8fda725abfb6a9675d63a9bfd4217c76d4a2d82a"},
6+
"assent": {:hex, :assent, "0.3.1", "7e7b04f4ab5d07b497b80c04f009a0f1efc409787e68b8e086512b9098f3095b", [:mix], [{:certifi, ">= 0.0.0", [hex: :certifi, repo: "hexpm", optional: true]}, {:finch, "~> 0.15", [hex: :finch, repo: "hexpm", optional: true]}, {:jose, "~> 1.8", [hex: :jose, repo: "hexpm", optional: true]}, {:req, "~> 0.4", [hex: :req, repo: "hexpm", optional: true]}, {:ssl_verify_fun, ">= 0.0.0", [hex: :ssl_verify_fun, repo: "hexpm", optional: true]}], "hexpm", "3597b31f9eb556d97e64cf60c00d3451f7353d7b465a71d33530b870ebed1ff1"},
77
"assert_eventually": {:hex, :assert_eventually, "1.0.0", "f1539f28ba3ffa99a712433c77723c7103986932aa341d05eee94c333a920d15", [:mix], [{:ex_doc, ">= 0.0.0", [hex: :ex_doc, repo: "hexpm", optional: true]}], "hexpm", "c658ac4103c8bd82d0cf72a2fdb77477ba3fbc6b15228c5c801003d239625c69"},
88
"aws": {:hex, :aws, "1.0.2", "39e0844ff126662e031e4bf186a6631b3402bf39f6af639260b27a4c29fdfe1a", [:mix], [{:aws_signature, "~> 0.3", [hex: :aws_signature, repo: "hexpm", optional: false]}, {:finch, "~> 0.13", [hex: :finch, repo: "hexpm", optional: true]}, {:hackney, "~> 1.16", [hex: :hackney, repo: "hexpm", optional: true]}, {:jason, "~> 1.2", [hex: :jason, repo: "hexpm", optional: false]}], "hexpm", "0e5cb8dee3f50a81cd93820f4c68407371c3ebbf860000a92a51ecb7920e808d"},
99
"aws_credentials": {:hex, :aws_credentials, "0.3.4", "742d88e69e9a701022d27c1d4578c37b704d9cb7f74d59d6edc0b599ed4ff4cd", [:rebar3], [{:eini, "~> 2.2.5", [hex: :eini_beam, repo: "hexpm", optional: false]}, {:iso8601, "~> 1.3.4", [hex: :iso8601, repo: "hexpm", optional: false]}, {:jsx, "~> 3.1.0", [hex: :jsx, repo: "hexpm", optional: false]}], "hexpm", "444b8d4e9ac5ad3051a2077c353ff3409f2439886be458433ddee23a739c19c4"},
@@ -51,7 +51,7 @@
5151
"expo": {:hex, :expo, "0.5.2", "beba786aab8e3c5431813d7a44b828e7b922bfa431d6bfbada0904535342efe2", [:mix], [], "hexpm", "8c9bfa06ca017c9cb4020fabe980bc7fdb1aaec059fd004c2ab3bff03b1c599c"},
5252
"faker": {:hex, :faker, "0.18.0", "943e479319a22ea4e8e39e8e076b81c02827d9302f3d32726c5bf82f430e6e14", [:mix], [], "hexpm", "bfbdd83958d78e2788e99ec9317c4816e651ad05e24cfd1196ce5db5b3e81797"},
5353
"file_system": {:hex, :file_system, "1.0.0", "b689cc7dcee665f774de94b5a832e578bd7963c8e637ef940cd44327db7de2cd", [:mix], [], "hexpm", "6752092d66aec5a10e662aefeed8ddb9531d79db0bc145bb8c40325ca1d8536d"},
54-
"finch": {:hex, :finch, "0.19.0", "c644641491ea854fc5c1bbaef36bfc764e3f08e7185e1f084e35e0672241b76d", [:mix], [{:mime, "~> 1.0 or ~> 2.0", [hex: :mime, repo: "hexpm", optional: false]}, {:mint, "~> 1.6.2 or ~> 1.7", [hex: :mint, repo: "hexpm", optional: false]}, {:nimble_options, "~> 0.4 or ~> 1.0", [hex: :nimble_options, repo: "hexpm", optional: false]}, {:nimble_pool, "~> 1.1", [hex: :nimble_pool, repo: "hexpm", optional: false]}, {:telemetry, "~> 0.4 or ~> 1.0", [hex: :telemetry, repo: "hexpm", optional: false]}], "hexpm", "fc5324ce209125d1e2fa0fcd2634601c52a787aff1cd33ee833664a5af4ea2b6"},
54+
"finch": {:hex, :finch, "0.20.0", "5330aefb6b010f424dcbbc4615d914e9e3deae40095e73ab0c1bb0968933cadf", [:mix], [{:mime, "~> 1.0 or ~> 2.0", [hex: :mime, repo: "hexpm", optional: false]}, {:mint, "~> 1.6.2 or ~> 1.7", [hex: :mint, repo: "hexpm", optional: false]}, {:nimble_options, "~> 0.4 or ~> 1.0", [hex: :nimble_options, repo: "hexpm", optional: false]}, {:nimble_pool, "~> 1.1", [hex: :nimble_pool, repo: "hexpm", optional: false]}, {:telemetry, "~> 0.4 or ~> 1.0", [hex: :telemetry, repo: "hexpm", optional: false]}], "hexpm", "2658131a74d051aabfcba936093c903b8e89da9a1b63e430bee62045fa9b2ee2"},
5555
"floki": {:hex, :floki, "0.37.0", "b83e0280bbc6372f2a403b2848013650b16640cd2470aea6701f0632223d719e", [:mix], [], "hexpm", "516a0c15a69f78c47dc8e0b9b3724b29608aa6619379f91b1ffa47109b5d0dd3"},
5656
"flow": {:hex, :flow, "1.2.4", "1dd58918287eb286656008777cb32714b5123d3855956f29aa141ebae456922d", [:mix], [{:gen_stage, "~> 1.0", [hex: :gen_stage, repo: "hexpm", optional: false]}], "hexpm", "874adde96368e71870f3510b91e35bc31652291858c86c0e75359cbdd35eb211"},
5757
"gen_stage": {:hex, :gen_stage, "1.3.1", "e85ab9ac826a7c4a2b84b220e1ef8b717e604a1b87e6d4579ff8751f201c96cf", [:mix], [], "hexpm", "bbd1ee3d7cf255d490c203f1a65a594d886f4a021d610f2c7c9240ee0bbbaeed"},
@@ -96,7 +96,7 @@
9696
"phoenix_live_view": {:hex, :phoenix_live_view, "0.20.17", "f396bbdaf4ba227b82251eb75ac0afa6b3da5e509bc0d030206374237dfc9450", [:mix], [{:floki, "~> 0.36", [hex: :floki, repo: "hexpm", optional: true]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: true]}, {:phoenix, "~> 1.6.15 or ~> 1.7.0", [hex: :phoenix, repo: "hexpm", optional: false]}, {:phoenix_html, "~> 3.3 or ~> 4.0", [hex: :phoenix_html, repo: "hexpm", optional: false]}, {:phoenix_template, "~> 1.0", [hex: :phoenix_template, repo: "hexpm", optional: false]}, {:phoenix_view, "~> 2.0", [hex: :phoenix_view, repo: "hexpm", optional: true]}, {:plug, "~> 1.15", [hex: :plug, repo: "hexpm", optional: false]}, {:telemetry, "~> 0.4.2 or ~> 1.0", [hex: :telemetry, repo: "hexpm", optional: false]}], "hexpm", "a61d741ffb78c85fdbca0de084da6a48f8ceb5261a79165b5a0b59e5f65ce98b"},
9797
"phoenix_pubsub": {:hex, :phoenix_pubsub, "2.1.3", "3168d78ba41835aecad272d5e8cd51aa87a7ac9eb836eabc42f6e57538e3731d", [:mix], [], "hexpm", "bba06bc1dcfd8cb086759f0edc94a8ba2bc8896d5331a1e2c2902bf8e36ee502"},
9898
"phoenix_template": {:hex, :phoenix_template, "1.0.4", "e2092c132f3b5e5b2d49c96695342eb36d0ed514c5b252a77048d5969330d639", [:mix], [{:phoenix_html, "~> 2.14.2 or ~> 3.0 or ~> 4.0", [hex: :phoenix_html, repo: "hexpm", optional: true]}], "hexpm", "2c0c81f0e5c6753faf5cca2f229c9709919aba34fab866d3bc05060c9c444206"},
99-
"plug": {:hex, :plug, "1.18.0", "d78df36c41f7e798f2edf1f33e1727eae438e9dd5d809a9997c463a108244042", [:mix], [{:mime, "~> 1.0 or ~> 2.0", [hex: :mime, repo: "hexpm", optional: false]}, {:plug_crypto, "~> 1.1.1 or ~> 1.2 or ~> 2.0", [hex: :plug_crypto, repo: "hexpm", optional: false]}, {:telemetry, "~> 0.4.3 or ~> 1.0", [hex: :telemetry, repo: "hexpm", optional: false]}], "hexpm", "819f9e176d51e44dc38132e132fe0accaf6767eab7f0303431e404da8476cfa2"},
99+
"plug": {:hex, :plug, "1.18.1", "5067f26f7745b7e31bc3368bc1a2b818b9779faa959b49c934c17730efc911cf", [:mix], [{:mime, "~> 1.0 or ~> 2.0", [hex: :mime, repo: "hexpm", optional: false]}, {:plug_crypto, "~> 1.1.1 or ~> 1.2 or ~> 2.0", [hex: :plug_crypto, repo: "hexpm", optional: false]}, {:telemetry, "~> 0.4.3 or ~> 1.0", [hex: :telemetry, repo: "hexpm", optional: false]}], "hexpm", "57a57db70df2b422b564437d2d33cf8d33cd16339c1edb190cd11b1a3a546cc2"},
100100
"plug_crypto": {:hex, :plug_crypto, "2.1.1", "19bda8184399cb24afa10be734f84a16ea0a2bc65054e23a62bb10f06bc89491", [:mix], [], "hexpm", "6470bce6ffe41c8bd497612ffde1a7e4af67f36a15eea5f921af71cf3e11247c"},
101101
"poly1305": {:hex, :poly1305, "1.0.4", "7cdc8961a0a6e00a764835918cdb8ade868044026df8ef5d718708ea6cc06611", [:mix], [{:chacha20, "~> 1.0", [hex: :chacha20, repo: "hexpm", optional: false]}, {:equivalex, "~> 1.0", [hex: :equivalex, repo: "hexpm", optional: false]}], "hexpm", "e14e684661a5195e149b3139db4a1693579d4659d65bba115a307529c47dbc3b"},
102102
"polymorphic_embed": {:hex, :polymorphic_embed, "4.1.1", "1a93d0c9184eb5a50c58578d0dfe4b05045d9a86bbcc7cd142114f3c4393c439", [:mix], [{:ecto, "~> 3.11", [hex: :ecto, repo: "hexpm", optional: false]}, {:jason, "~> 1.4", [hex: :jason, repo: "hexpm", optional: false]}, {:phoenix_html, "~> 4.1", [hex: :phoenix_html, repo: "hexpm", optional: true]}, {:phoenix_html_helpers, "~> 1.0", [hex: :phoenix_html_helpers, repo: "hexpm", optional: true]}, {:phoenix_live_view, "~> 0.19", [hex: :phoenix_live_view, repo: "hexpm", optional: true]}], "hexpm", "3f3d2354d2a86a180cf0415273bb21ac134615c005d1b2537e7c6708eee21fcc"},
@@ -110,7 +110,7 @@
110110
"ranch": {:hex, :ranch, "2.1.0", "2261f9ed9574dcfcc444106b9f6da155e6e540b2f82ba3d42b339b93673b72a3", [:make, :rebar3], [], "hexpm", "244ee3fa2a6175270d8e1fc59024fd9dbc76294a321057de8f803b1479e76916"},
111111
"recon": {:hex, :recon, "2.5.6", "9052588e83bfedfd9b72e1034532aee2a5369d9d9343b61aeb7fbce761010741", [:mix, :rebar3], [], "hexpm", "96c6799792d735cc0f0fd0f86267e9d351e63339cbe03df9d162010cefc26bb0"},
112112
"redbug": {:hex, :redbug, "1.2.2", "366d8961770ddc7bb5d209fbadddfa7271005487f938c087a0e385a57abfee33", [:rebar3], [], "hexpm", "b5fe7b94e487be559cb0ec1c0e938c9761205d3e91a96bf263bdf1beaebea729"},
113-
"req": {:hex, :req, "0.5.10", "a3a063eab8b7510785a467f03d30a8d95f66f5c3d9495be3474b61459c54376c", [:mix], [{:brotli, "~> 0.3.1", [hex: :brotli, repo: "hexpm", optional: true]}, {:ezstd, "~> 1.0", [hex: :ezstd, repo: "hexpm", optional: true]}, {:finch, "~> 0.17", [hex: :finch, repo: "hexpm", optional: false]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: false]}, {:mime, "~> 2.0.6 or ~> 2.1", [hex: :mime, repo: "hexpm", optional: false]}, {:nimble_csv, "~> 1.0", [hex: :nimble_csv, repo: "hexpm", optional: true]}, {:plug, "~> 1.0", [hex: :plug, repo: "hexpm", optional: true]}], "hexpm", "8a604815743f8a2d3b5de0659fa3137fa4b1cffd636ecb69b30b2b9b2c2559be"},
113+
"req": {:git, "https://github.com/wojtekmach/req.git", "dcb7ddf6a449dfd2cc2a99c6354d050b65e5191a", [ref: "dcb7ddf"]},
114114
"rexbug": {:hex, :rexbug, "1.0.6", "024071c67d970151fbdc06f299faf8db3e1b2ac759a28623a9cc80a517fc74f2", [:mix], [{:mix_test_watch, ">= 0.5.0", [hex: :mix_test_watch, repo: "hexpm", optional: true]}, {:redbug, "~> 1.2", [hex: :redbug, repo: "hexpm", optional: false]}], "hexpm", "148ea724979413e9fd84ca3b4bb5d2d8b840ac481adfd645f5846fda409a642c"},
115115
"salsa20": {:hex, :salsa20, "1.0.4", "404cbea1fa8e68a41bcc834c0a2571ac175580fec01cc38cc70c0fb9ffc87e9b", [:mix], [], "hexpm", "745ddcd8cfa563ddb0fd61e7ce48d5146279a2cf7834e1da8441b369fdc58ac6"},
116116
"saxy": {:hex, :saxy, "1.6.0", "02cb4e9bd045f25ac0c70fae8164754878327ee393c338a090288210b02317ee", [:mix], [], "hexpm", "ef42eb4ac983ca77d650fbdb68368b26570f6cc5895f0faa04d34a6f384abad3"},

test/sequin/gcp_pubsub_pipeline_test.exs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ defmodule Sequin.Runtime.GcpPubsubPipelineTest do
3232
assert String.contains?(conn.request_path, ":publish")
3333

3434
{:ok, body, _} = Plug.Conn.read_body(conn)
35-
body = body |> :zlib.gunzip() |> Jason.decode!()
35+
body = Jason.decode!(body)
3636

3737
data = get_in(body, ["messages", Access.at(0), "data"])
3838
data = data |> Base.decode64!() |> Jason.decode!()
@@ -59,7 +59,7 @@ defmodule Sequin.Runtime.GcpPubsubPipelineTest do
5959
assert conn.host == "pubsub.googleapis.com"
6060

6161
{:ok, body, _} = Plug.Conn.read_body(conn)
62-
body = body |> :zlib.gunzip() |> Jason.decode!()
62+
body = Jason.decode!(body)
6363
assert length(body["messages"]) == 2
6464

6565
Req.Test.json(conn, %{})

test/sequin/gcp_pubsub_test.exs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -97,7 +97,7 @@ defmodule Sequin.Sinks.Gcp.PubSubTest do
9797
assert conn.request_path == "/v1/projects/#{@project_id}/topics/#{@topic_id}:publish"
9898

9999
{:ok, body, _} = Plug.Conn.read_body(conn)
100-
body = body |> :zlib.gunzip() |> Jason.decode!()
100+
body = Jason.decode!(body)
101101

102102
data = get_in(body, ["messages", Access.at(0), "data"])
103103
assert data == %{"key" => "value"}

test/sequin/meilisearch_client_test.exs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,10 +34,9 @@ defmodule Sequin.Sinks.Meilisearch.ClientTest do
3434
assert conn.request_path == "/indexes/test/documents"
3535

3636
{:ok, body, _} = Plug.Conn.read_body(conn)
37-
decompressed_body = :zlib.gunzip(body)
3837

3938
body_records =
40-
decompressed_body
39+
body
4140
|> String.split("\n", trim: true)
4241
|> Enum.map(&Jason.decode!/1)
4342

test/sequin/meilisearch_pipeline_test.exs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -128,12 +128,11 @@ defmodule Sequin.Runtime.MeilisearchPipelineTest do
128128

129129
Req.Test.expect(Client, fn conn ->
130130
{:ok, body, _} = Plug.Conn.read_body(conn)
131-
decompressed = :zlib.gunzip(body)
132131
assert conn.method == "PUT"
133132
assert conn.request_path == "/indexes/test/documents"
134133

135134
body_records =
136-
decompressed
135+
body
137136
|> String.split("\n", trim: true)
138137
|> Enum.map(&Jason.decode!/1)
139138

test/sequin/s2_pipeline_test.exs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,8 +41,7 @@ defmodule Sequin.Runtime.S2PipelineTest do
4141

4242
# Verify request body
4343
{:ok, body, _} = Plug.Conn.read_body(conn)
44-
decompressed_body = :zlib.gunzip(body)
45-
body_json = Jason.decode!(decompressed_body)
44+
body_json = Jason.decode!(body)
4645

4746
# Verify records array exists and has one record
4847
assert %{"records" => [record]} = body_json

0 commit comments

Comments
 (0)