Phoenix guide, Context: call a plug function in a Router scope

I think

pipe_through [:browser, &MyApp.SessionAuth.authenticate_user/2]

is the same as

pipe_through [:browser, fn conn, opts -> MyApp.SessionAuth.authenticate_user(conn, opts) end]

and pipe_through macro expects a list of atoms to call something like apply/3 on, not functions.

I usually call these plugs App.Web.Session or App.Web.Auth.