The "delayed response" part of the Feersum API is deprecated in favor of using the "streaming response" part of the API. Additions: * start_streaming() replaces "start_response with a streaming param" ** also now returns a writer Removals: * start_response() has been removed ** use either start_streaming() or send_response() * write_whole_body() has been removed ** use start_streaming() and the writer object instead * write_handle() and read_handle have been removed ** start_streaming() now returns a writer ** use 'psgi.input' to get at a reader
* Fix compilation under 5.8 - get_cvn_flags not really supported. ** lazier-load the _pump_io sub * Don't use an array-ref stuffed into poll_write_cb; use a flag instead. * Reformat feersum_handle_psgi_response to use less indentation. * have call_died calls specify that this is in the PSGI handler. * Add some handy IsArrayRef and IsCodeRef macros. * Manually pack flags at the end of struct feer_conn (is this good?)
This reverts commit 2b6e6e4.
* Changes the calling convention from $r->env($e) to $e = $r->env; * Uses a "template" hash so a new env can be set up without a lot of re-hashing. * The template uses placeholders for some common headers. These "disappear" when you iterate through the keys or try to access them directly.
Test coverage in next commit as part of 03-env-hash.t
simple_client() isn't as simple as i hoped, but it's still pretty slick without having to resort to LWP+forking.