{"action":"closed","issue":{"url":"https://api.github.com/repos/sheharyarn/better_params/issues/3","repository_url":"https://api.github.com/repos/sheharyarn/better_params","labels_url":"https://api.github.com/repos/sheharyarn/better_params/issues/3/labels{/name}","comments_url":"https://api.github.com/repos/sheharyarn/better_params/issues/3/comments","events_url":"https://api.github.com/repos/sheharyarn/better_params/issues/3/events","html_url":"https://github.com/sheharyarn/better_params/issues/3","id":250461402,"number":3,"title":"Crashes on File Uploads","user":{"login":"sheharyarn","id":2355108,"avatar_url":"https://avatars3.githubusercontent.com/u/2355108?v=4","gravatar_id":"","url":"https://api.github.com/users/sheharyarn","html_url":"https://github.com/sheharyarn","followers_url":"https://api.github.com/users/sheharyarn/followers","following_url":"https://api.github.com/users/sheharyarn/following{/other_user}","gists_url":"https://api.github.com/users/sheharyarn/gists{/gist_id}","starred_url":"https://api.github.com/users/sheharyarn/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sheharyarn/subscriptions","organizations_url":"https://api.github.com/users/sheharyarn/orgs","repos_url":"https://api.github.com/users/sheharyarn/repos","events_url":"https://api.github.com/users/sheharyarn/events{/privacy}","received_events_url":"https://api.github.com/users/sheharyarn/received_events","type":"User","site_admin":false},"labels":[{"id":627083996,"url":"https://api.github.com/repos/sheharyarn/better_params/labels/Status:%20In%20Progress","name":"Status: In Progress","color":"fbca04","default":false},{"id":626185591,"url":"https://api.github.com/repos/sheharyarn/better_params/labels/Type:%20Bug","name":"Type: Bug","color":"ee0701","default":false}],"state":"closed","locked":false,"assignee":{"login":"sheharyarn","id":2355108,"avatar_url":"https://avatars3.githubusercontent.com/u/2355108?v=4","gravatar_id":"","url":"https://api.github.com/users/sheharyarn","html_url":"https://github.com/sheharyarn","followers_url":"https://api.github.com/users/sheharyarn/followers","following_url":"https://api.github.com/users/sheharyarn/following{/other_user}","gists_url":"https://api.github.com/users/sheharyarn/gists{/gist_id}","starred_url":"https://api.github.com/users/sheharyarn/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sheharyarn/subscriptions","organizations_url":"https://api.github.com/users/sheharyarn/orgs","repos_url":"https://api.github.com/users/sheharyarn/repos","events_url":"https://api.github.com/users/sheharyarn/events{/privacy}","received_events_url":"https://api.github.com/users/sheharyarn/received_events","type":"User","site_admin":false},"assignees":[{"login":"sheharyarn","id":2355108,"avatar_url":"https://avatars3.githubusercontent.com/u/2355108?v=4","gravatar_id":"","url":"https://api.github.com/users/sheharyarn","html_url":"https://github.com/sheharyarn","followers_url":"https://api.github.com/users/sheharyarn/followers","following_url":"https://api.github.com/users/sheharyarn/following{/other_user}","gists_url":"https://api.github.com/users/sheharyarn/gists{/gist_id}","starred_url":"https://api.github.com/users/sheharyarn/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sheharyarn/subscriptions","organizations_url":"https://api.github.com/users/sheharyarn/orgs","repos_url":"https://api.github.com/users/sheharyarn/repos","events_url":"https://api.github.com/users/sheharyarn/events{/privacy}","received_events_url":"https://api.github.com/users/sheharyarn/received_events","type":"User","site_admin":false}],"milestone":null,"comments":0,"created_at":"2017-08-15T22:52:45Z","updated_at":"2017-08-16T03:16:36Z","closed_at":"2017-08-16T03:16:36Z","body":"When the web request contains a `%Plug.Upload{}` struct,  it crashes the process with a `Protocol.UndefinedError`:\r\n\r\n```\r\n[error] #PID<0.737.0> running MyApp.Endpoint terminated\r\nServer: localhost:5000 (http)\r\nRequest: POST /some/server/path\r\n** (exit) an exception was raised:\r\n    ** (Protocol.UndefinedError) protocol Enumerable not implemented for %Plug.Upload{content_type: \"image/jpeg\", filename: \"123456789.jpg\", path: \"/var/folders/rr/1l6bz6rd6tq_h70m1scxy51m0000gn/T//plug-1502/multipart-837302-850377-2\"}\r\n        (elixir) lib/enum.ex:1: Enumerable.impl_for!/1\r\n        (elixir) lib/enum.ex:116: Enumerable.reduce/3\r\n        (elixir) lib/enum.ex:1767: Enum.reduce/3\r\n        lib/better_params.ex:79: anonymous fn/2 in BetterParams.symbolize_keys/1\r\n        (stdlib) lists.erl:1263: :lists.foldl/3\r\n        lib/better_params.ex:68: BetterParams.symbolize_merge/1\r\n        lib/better_params.ex:36: BetterParams.call/2\r\n        ...\r\n```"}}
{"actor":{"display_login":"sheharyarn"}}