Skip to content

Releases: rstudio/httpuv

httpuv 1.6.5

05 Jan 01:11
@wch wch
Compare
Choose a tag to compare
  • Added support for R on Windows UCRT. (#324)

  • When using a system-wide copy of libuv, httpuv will now compile using the system-wide headers for libuv, instead of the local copy of the libuv headers. (#327)

httpuv 1.6.4

15 Dec 16:19
@wch wch
Compare
Choose a tag to compare
  • Added zlib to SystemRequirements in DESCRIPTION file. (#315)

  • Closed #280: Fix builds on Alpine Linux (and other versions which have automake >1.16.1). (#319)

httpuv 1.6.3

09 Sep 20:45
@wch wch
Compare
Choose a tag to compare
  • Increased required version of Rcpp to 1.0.7, to work around an incompatibility between Rcpp 1.0.6 and packages compiled with Rcpp 1.0.7.

httpuv v1.6.2

19 Aug 15:10
4c82256
Compare
Choose a tag to compare
  • Fixed #282: startPipeServer() failed with "invalid argument" error after update to libuv 1.37.0. (#283)

  • Fixed #303: Don't return Content-Length header when the HTTP status is "101 Switching Protocols". (#305)

  • Added support for gzip-compressed HTTP responses. (#305)

httpuv 1.6.1

11 May 14:55
@wch wch
Compare
Choose a tag to compare
  • The timegm() function is a non-standard GNU extension, so it has been replaced with an internal timegm2() function. (#300)

httpuv 1.6.0

23 Apr 19:00
@wch wch
Compare
Choose a tag to compare
  • Remove BH dependency. httpuv now requires a compiler which supports C++11. (#297)

httpuv 1.5.5

13 Jan 16:28
@wch wch
Compare
Choose a tag to compare
  • Fix SHA1 calculation, and thus WebSocket server handshakes, on big-endian systems. (#284)

  • Fixed #195: Responses required headers to be a named list. Now it can also be NULL, an empty unnamed list, or it can be unset. (#289)

  • Allow responses to omit body (or set it as NULL) to avoid sending a body or setting the Content-Length header. This is intended for use with HTTP 204/304 responses. (#288)

httpuv 1.5.4

08 Jun 16:56
@wch wch
Compare
Choose a tag to compare
  • Fixed #275: Large HTTP request headers could get truncated if they spanned
    more than one TCP message. (#277)

  • Fixed build for Solaris. (#271)

  • Fixed a test that had incorrect logic. (#272)

httpuv 1.5.3.1

08 Jun 16:57
@wch wch
Compare
Choose a tag to compare
  • Updated libuv to version 1.37.0. (#266)

  • Fixed #204: On UBSAN builds of R, there were warnings about unaligned memory access. (#246)

  • Avoid creating a new Rook error stream object for each request. This should improve performance. (#245)

  • Resolved #247: httpuv no longer returns a HTTP 400 code for static files when the "Content-Length" header is 0. This Content-Length header is inserted by some proxies even for messages without payloads. (#248)

  • Resolved #253: Setting the FRAMEWORK environment variable would break compilation. This change removes any dependency on that variable. (#254)

httpuv 1.5.2

08 Jun 16:57
@wch wch
Compare
Choose a tag to compare
  • In the static file-serving code path, httpuv previously looked for a Connection: upgrade header; if it found this header, it would not try to serve a static file, and it would instead forward the HTTP request to the R code path. However, some proxies are configured to always set this header, even when the connection is not actually meant to be upgraded. Now, instead of looking for a Connection: upgrade header, httpuv looks for the presence of an Upgrade header (with any value), and should be more robust to incorrectly-configured proxies. (#215)

  • Fixed handling of messages without payloads: (#219)

  • Fixed #224: Static file serving on Windows did not work correctly if it was from a path that contained non-ASCII characters. (#227)

  • Resolved #194, #233: Added a quiet option to startServer, which suppresses startup error messages that are normally printed to console (and can't be intercepted with capture.output()). (#234)

  • Added a new function randomPort(), which returns a random available port for listening on. (#234)

  • Added a new (unexported) function logLevel(), for controlling debugging information that will be printed to the console. Previously, httpuv occasionally printed messages like ERROR: [uv_write] broken pipe and ERROR: [uv_write] bad file descriptor by default. This happened when the server tried to write to a pipe that was already closed, but the situation was not harmful, and was already being handled correctly. Now these messages are printed only if the log level is set to INFO or DEBUG. (#223)

  • If an application's $call() method is missing, it will now give a 404 response instead of a 500 response. (#237)

  • Disallowed backslash in static path, to prevent path traversal attacks. (#235)

  • Static file serving on Windows could fail if multiple requests accessed the same file simultaneously. (#239)