trenpixster / addict

User management lib for Phoenix Framework
MIT License
645 stars 99 forks source link

The list must contain only integers, strings or nested such lists; got: [:mailgun] #97

Closed puruzio closed 8 years ago

puruzio commented 8 years ago

When I tried to register my first test user, I received the above error message. Below is the console log. FYI. my mix.exs includes Ecto override due to deps conflict between phoenix_ecto and Addict.

[info] POST /register [debug] Processing by Addict.AddictController.register/2 Parameters: %{"email" => "email@email.com", "name" => "User1", "password" => "[FILTERED]"} Pipelines: [:addict_routes] [debug] QUERY OK db=5.0ms INSERT INTO "users" ("email","encrypted_password","name","inserted_at","updated_at") VALUES ($1,$2,$3,$4,$5) RETURNING "id" ["email@email.com", "$pbkdf2-U1nxxxxxxxxkS1rC.w", "User1", {{2016, 6, 26}, {4, 31, 8, 0}}, {{2016, 6, 26}, {4, 31, 8, 0}}] [info] Sent 500 in 374ms [error] #PID<0.403.0> running SeatSaver.Endpoint terminated Server: localhost:4001 (http) Request: POST /register ** (exit) an exception was raised: **** (ArgumentError) cannot convert list to string. The list must contain only integers, strings or nested such lists; got: [:mailgun]** (elixir) lib/list.ex:624: List.to_string/1 lib/addict/mailers/mailers.ex:17: Addict.Mailers.do_send_email/5 lib/addict/interactors/register.ex:26: Addict.Interactors.Register.do_register/2 lib/addict/controller.ex:16: Addict.AddictController.register/2 lib/addict/controller.ex:1: Addict.AddictController.action/2 lib/addict/controller.ex:1: Addict.AddictController.phoenix_controller_pipeline/2 (seat_saver) lib/seat_saver/endpoint.ex:1: SeatSaver.Endpoint.instrument/4 (seat_saver) lib/phoenix/router.ex:261: SeatSaver.Router.dispatch/2 (seat_saver) web/router.ex:1: SeatSaver.Router.do_call/2 (seat_saver) lib/seat_saver/endpoint.ex:1: SeatSaver.Endpoint.phoenix_pipeline/1 (seat_saver) lib/plug/debugger.ex:93: SeatSaver.Endpoint."call (overridable 3)"/2 (seat_saver) lib/seat_saver/endpoint.ex:1: SeatSaver.Endpoint.call/2 (plug) lib/plug/adapters/cowboy/handler.ex:15: Plug.Adapters.Cowboy.Handler.upgrade/4 (cowboy) src/cowboy_protocol.erl:442: :cowboy_protocol.execute/4

My mix.exs setting is

defp deps do [{:phoenix, "~> 1.2.0"}, {:ecto, "~> 2.0", override: true}, # this had to be overriden due to deps conflict between addict and phoenix_ecto {:poison, "~> 2.0", override: true}, {:phoenix_ecto, "~> 3.0.0"}, {:phoenix_pubsub, "~> 1.0.0"}, {:postgrex, "~> 0.11.2", override: true}, {:rethinkdb, github: "hamiltop/rethinkdb-elixir"}, #"~> 0.3.0", override: true}, {:phoenix_html, "~> 2.6"}, {:phoenix_live_reload, "~> 1.0", only: :dev}, {:cowboy, "~> 1.0"}, {:gettext, "~> 0.11"}, **{:addict, "~> 0.2.5"}** ]

config.exs

config :addict, secret_key: "24xxxxxxxxxxxxxxxe", extra_validation: fn ({valid, errors}, user_params) -> {valid, errors} end, user_schema: SeatSaver.User, repo: SeatSaver.Repo, from_email: "no-reply@example.com", mailgun_domain: "shttps://api.mailgun.net/v3/sandbox67asdfasdfasfasfdasdf2.mailgun.org", mailgun_key: "key-370asdfasdfsadfasdf613da1a106", mail_service: [:mailgun]

trenpixster commented 8 years ago

@puruzio thanks for the heads up, it seems Addict is breaking with Phoenix 1.2. I'll deprecate this issue in favour of this one #98