title: 'halt' (Plug.Conn.halt/1) does not stop the call chain after a redirect in controller
body: <p>I have a "halt/1" in a controller based on some logic but not in a plug. Sadly, it does redirect, but also runs the code after the redirect.</p>
  
  <pre><code>if true do
    conn
      |&gt; put_flash(:error, "Sorry, entered wrong")
      |&gt; redirect(to: route_path(conn, :show, model))
      |&gt; halt #this does not work :(
  else
     _ #something
  end
  
  update_another_model() #this is executed
  render(conn, "abc.html", model: model) #even this is executed
  </code></pre>
  
  <p>I actually need the call to terminate after the redirect, any ideas?</p>