{"action":"created","issue":{"url":"https://api.github.com/repos/yesodweb/wai/issues/402","labels_url":"https://api.github.com/repos/yesodweb/wai/issues/402/labels{/name}","comments_url":"https://api.github.com/repos/yesodweb/wai/issues/402/comments","events_url":"https://api.github.com/repos/yesodweb/wai/issues/402/events","html_url":"https://github.com/yesodweb/wai/issues/402","id":97173177,"number":402,"title":"Support Trailers in HTTP/1.1 chunked encoding and HTTP/2","user":{"login":"awpr","id":458666,"avatar_url":"https://avatars.githubusercontent.com/u/458666?v=3","gravatar_id":"","url":"https://api.github.com/users/awpr","html_url":"https://github.com/awpr","followers_url":"https://api.github.com/users/awpr/followers","following_url":"https://api.github.com/users/awpr/following{/other_user}","gists_url":"https://api.github.com/users/awpr/gists{/gist_id}","starred_url":"https://api.github.com/users/awpr/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/awpr/subscriptions","organizations_url":"https://api.github.com/users/awpr/orgs","repos_url":"https://api.github.com/users/awpr/repos","events_url":"https://api.github.com/users/awpr/events{/privacy}","received_events_url":"https://api.github.com/users/awpr/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":1,"created_at":"2015-07-25T00:15:46Z","updated_at":"2015-07-25T00:24:30Z","closed_at":null,"body":"The HTTP/1.1 chunked encoding and HTTP/2 both allow responses to be followed by a second set of headers, referred to as \"trailers\".  The warp server and the Network.Wai Response type do not currently allow applications to provide these trailers.\r\n\r\nUnfortunately I don't see a clean and backwards-compatible way to add support for this.  Adding an extra constructor to Response is awkward (since it's essentially the same as ResponseStream) and breaks servers.  Changing the ResponseStream constructor and leaving responseStream as an adapter breaks servers and any middleware that assumes a Response can be faithfully encoded as (StreamingBody, Headers, Status).  Depositing trailers in the Vault and hoping the server notices them is awkward."},"comment":{"url":"https://api.github.com/repos/yesodweb/wai/issues/comments/124775753","html_url":"https://github.com/yesodweb/wai/issues/402#issuecomment-124775753","issue_url":"https://api.github.com/repos/yesodweb/wai/issues/402","id":124775753,"user":{"login":"gregwebs","id":1183,"avatar_url":"https://avatars.githubusercontent.com/u/1183?v=3","gravatar_id":"","url":"https://api.github.com/users/gregwebs","html_url":"https://github.com/gregwebs","followers_url":"https://api.github.com/users/gregwebs/followers","following_url":"https://api.github.com/users/gregwebs/following{/other_user}","gists_url":"https://api.github.com/users/gregwebs/gists{/gist_id}","starred_url":"https://api.github.com/users/gregwebs/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gregwebs/subscriptions","organizations_url":"https://api.github.com/users/gregwebs/orgs","repos_url":"https://api.github.com/users/gregwebs/repos","events_url":"https://api.github.com/users/gregwebs/events{/privacy}","received_events_url":"https://api.github.com/users/gregwebs/received_events","type":"User","site_admin":false},"created_at":"2015-07-25T00:24:30Z","updated_at":"2015-07-25T00:24:30Z","body":"Also mentioned as backwards incompatible is HTTP/2 push"}}