Skip to content

Releases: ledgetech/lua-resty-http

v0.09

22 Aug 16:10
Compare
Choose a tag to compare
  • Enhancement: Return a useful error if attempting to use a unix domain socket without a Host header.
  • Bugfix: Don't attempt to keepalive a http 1.0 connection with no Connection header (Thanks @guanglinlv for the report).
  • Bugfix: Only look for a single 's' in the scheme, and report the uri in any URI parsing errors.
  • Bugfix: _handle_continue return value order didn't match with expectation. (Thanks @DilipSimha for the report).

v0.08

26 May 15:27
Compare
Choose a tag to compare
  • When the Host header is created automatically, we now add the port if the port is non-standard for the scheme. Thanks @therealcmj
  • The "reason phrase" is now returned alongside the status code. Thanks @ericl

v0.07

22 Jan 11:37
Compare
Choose a tag to compare

Bugfix: Error handling for when buffer_size isn't set when resuming the body_reader.
Bugfix: Spaces now properly encoded in proxied URIs
Bugfix: A missing path now properly defaults to "/". Thanks @membphis
Bugfix: proxy_response now checks the result of ngx.print, and breaks the loop on error. Thanks @vovapi
Docs: Example code didn't require the module. Thanks @zweite

v0.06

29 Jul 16:04
Compare
Choose a tag to compare
  • Bugfix: Fixed Makefile paths (thanks Vijay Panghal)
  • Feature: Allow passing a pre-established socket to get_client_body_reader (thanks @kipras)
  • Bugfix: Header field pattern matching expanded to a broader range of characters (thanks @kipras)
  • Feature: Changed User-Agent format to be more verbose.

v0.05

16 Dec 15:43
Compare
Choose a tag to compare
  • Headers are now normalised for case, both request headers passed in and response headers received (thanks @mikz for the report)
  • Response headers received with multiple matching field names are now presented as a table of values rather than concatenated, as this caused issues with Set-Cookie and potentially other cases. Note that when evaluating headers you must now consider the type could either be a table or a string. (Thanks to @ngo for the original pull request / suggestion).

v0.04

08 Oct 09:15
Compare
Choose a tag to compare
  • SSL cosocket support (thanks @hamishforbes).
  • Improved error handling around pipelined responses and timeouts.
  • Reset flags between requests so that an instance can safely be reused.
  • More gracefully handle attempts to use the client body reader during a subrequest.
  • Added proxy_request and proxy_response functions.
  • Various documentation improvements.

v0.03

17 Mar 11:44
Compare
Choose a tag to compare
  • set_keepalive now returns 2 if the connection was intentionally closed, to distinguish from actual errors.
  • Merged pull request from @hamishforbes adding support for "100 Continue" responses.
  • Merged pull request from @hamishforbes allowing request bodies to optionally be an iterator function to stream in large bodies.
  • Merged pull request from @hamishforbes adding get_client_body_reader utility, which returns an iterator for the current client upstream request body.
  • res.body_reader is now always a function, even if there is no body to be read.
  • Added res.has_body boolean flag.
  • Implemented streaming for HTTP 1.0 responses where no length is advertised. (Thanks @oikomi for the feature request).
  • Fixed issue where body readers only honoured the initial chunk size. (Thanks @oikomi for the report).
  • Added support for HTTP pipelining.

v0.02

19 Dec 10:25
Compare
Choose a tag to compare
  • Detect socket read errors when reading status and headers.
  • Added keepalive logic.
  • Fixed keepalive assumptions in the simple interface.
  • Reimplemented coroutine.wrap to return nil on error, protecting user code from accidental infinite loops.