Skip to content

Releases: h2o/h2o

H2O version 1.3.1

19 Jun 03:40
Compare
Choose a tag to compare

This is a bug fix release. It fixes the following issues in version 1.3.0.

  • [core] do not refuse to start-up when failing to enable TCP Fast Open #368 (Kazuho Oku)
  • [fastcgi] fix server start-up issues when using fastcgi.spawn #367 (Kazuho Oku)
  • [SSL] support OCSP stapling using openssl ocsp command built from LibreSSL in addition to OpenSSL #366 (Tatsuhiro Tsujikawa)

H2O version 1.3.0

17 Jun 21:57
Compare
Choose a tag to compare

This is a major release with improvements and bug fixes.

  • [core] enable TCP fast-open #356 (Tatsuhiko Kubo)
  • [core] improve virtual-host lookup logic #293 #296 (Kazuho Oku)
  • [core] fix content being mis-sent for HEAD requests #300 #302 (Kazuho Oku)
  • [doc] bundle documents #292 (Kazuho Oku)
  • [fastcgi] add FastCGI support #346 #359 #360 #364 (Kazuho Oku)
  • [file] support for If-Range requests #345 (Justin Zhu)
  • [file] send 503 (not 403) in case if too many files are open #304 (Kazuho Oku)
  • [http2] add http2-reprioritize-blocking-assets directive to optimize first-paint time on Chrome #349 (Kazuho Oku)
  • [http2] fix incompliant behavior when the number of stream exceeds the negotiated maximum #341 #352 (Kazuho Oku)
  • [proxy] fix potential use-after-free issue in case upstream name is resolved using getaddrinfo #307 (Kazuho Oku)
  • [proxy] increase default I/O timeout from 5 to 30 seconds fb5c016 (Kazuho Oku)
  • [redirect] support internal redirect #364 (Kazuho Oku)
  • [SSL] fix assertion failure during handshake #316 (Kazuho Oku)
  • [SSL] fix assertion failure when receiving a corrupt TLS record (http2 only) #297 (Kazuho Oku)
  • [SSL] fix build error on OpenSUSE using libressl #337 (Kazuho Oku)
  • [SSL] select ALPN protocol based on server-side preference #335 (Justin Zhu)
  • [libh2o] build shared libraries as well #324 (pyos)
  • [libh2o] build libh2o-evloop #327 (Laurentiu Nicola)
  • [misc] emit stacktrace in case of fatal error (Linux only) #331 (Kazuho Oku)
  • [misc] improve NetBSD compatibility #289 (Kazuho Oku)
  • [misc] fix file descriptor leaks #336 (Kazuho Oku)

H2O version 1.2.0

14 Apr 07:21
Compare
Choose a tag to compare

This is a major release with improvements and bug fixes.

As of version 1.2, H2O bundles all the dependencies (expect cmake used for building the application).

Among the bugs being fixed includes a heap overrun in the proxy module. Users using the proxy module is recommended to upgrade the server to 1.2.0.

Changes:

  • [core] bundle libyaml #248 (Kazuho Oku)
  • [core] implement master-worker process mode and daemon mode (bundles Server::Starter) #258 #270 (Kazuho Oku)
  • [file] more mime-types by default #250 #254 #280 (Tatsuhiko Kubo, George Liu, Kazuho Oku)
  • [file][http1] fix connection being closed if the length of content is zero #276 (Kazuho Oku)
  • [headers] fix heap overrun during configuration #251 (Kazuho Oku)
  • [http2] do not delay sending PUSH_PROMISE #221 (Kazuho Oku)
  • [http2] reduce memory footprint under high load #271 (Kazuho Oku)
  • [http2] fix incorrect error sent when number of streams exceed the limit #268 (Kazuho Oku)
  • [proxy] fix heap overrun when building request sent to upstream #266 #269 (Moto Ishizawa, Kazuho Oku)
  • [proxy] fix laggy response in case the length of content is zero #274 #276 (Kazuho Oku)
  • [SSL] fix potential stall while reading data from client #268 (Kazuho Oku)
  • [SSL] bundle LibreSSL #236 #272 (Kazuho Oku)
  • [SSL] obtain source-level compatibility with BoringSSL #228 (Kazuho Oku)
  • [SSL] add directive listen.ssl.cipher-preference for controlling the selection logic of cipher-suites #233 (Kazuho Oku)
  • [SSL] disable TLS compression #252 (bisho)
  • [libh2o] fix C++ compatibility (do not use empty struct) #225 (Kazuho Oku)
  • [libh2o] search external dependencies using pkg-config #227 (Kazuho Oku)
  • [misc] fix GCC version detection bug used for controlling compiler warnings #224 (Kazuho Oku)
  • [misc] check merory allocation failures in socket pool #265 (Tatsuhiko Kubo)

H2O version 1.1.1

09 Mar 06:18
Compare
Choose a tag to compare

This is a bug fix release that affects FreeBSD & NetBSD only.

Changes:

  • [proxy] fix crash on NetBSD when upstream connection is persistent #217 (Kazuho Oku)
  • [misc] fix compile error on FreeBSD #211 #212 (Syohei Yoshida)

H2O version 1.1.0

06 Mar 07:00
Compare
Choose a tag to compare

Announcement: H2O version 1.1.0 released with bug fixes and enhancements in proxy etc.

Changes:

  • [core][file] send redirects appending / as abs-path redirects #209 (Kazuho Oku)
  • [headers] add directives for manipulating response headers #204 (Kazuho Oku)
  • [http2] do not send a corrupt response if header value is longer than 126 bytes #193 (Kazuho Oku)
  • [http2] fix interoperability issue with nghttp2 0.7.5 and above 5c42eb1 (Kazuho Oku)
  • [proxy] send via header to upstream #191 (Kazuho Oku)
  • [proxy] resolve hostname asynchronously #207 (Kazuho Oku)
  • [proxy] distribute load between upstream servers (using rand()) #208 (Kazuho Oku)
  • [proxy] fix a bug that may cause a corrupt location header being forwarded #190 (Kazuho Oku)
  • [reproxy] add support for x-reproxy-url header #187 #197 (Daisuke Maki, Kazuho Oku)

H2O version 1.0.1

23 Feb 06:09
Compare
Choose a tag to compare

The release includes fixes of stability issues of reverse proxy (#186 #188 #189). Upgrade is recommended for users using H2O as a reverse proxy, though whether or not the issue affects the user depends on the configuration and the implementation of the upstream HTTP server.

Changes:

  • [core] change backlog size from 65,536 to 65,535 #183 (Tatsuhiko Kubo)
  • [http2] fix assertion failure in HPACK encoder #186 (Kazuho Oku)
  • [http2] add extern to some global variables that were not marked as such #178 (Kazuho Oku)
  • [proxy] close persistent upstream connection if client abruptly closes the stream #188 (Kazuho Oku)
  • [proxy] fix internal state corruption in case upstream sends response headers divided into multiple packets #189 (Kazuho Oku)
  • [SSL] add host header to OCSP request #176 (Masaaki Hirose)
  • [libh2o] do not require header files under deps/ when using libh2o #173 (Kazuho Oku)
  • [libh2o] fix compile error in examples when compiled with H2O_USE_LIBUV=0 #177 (Kazuho Oku)
  • [libh2o] in example, add missing / after the reference path #180 (Matthieu Garrigues)
  • [misc] fix invalid HTML in sample page #175 (Deepak Prakash)

H2O version 1.0.0

18 Feb 20:19
Compare
Choose a tag to compare

Announcement: H2O, the new HTTP server goes version 1.0.0 as HTTP/2 gets finalized

Changes:

  • [core] add redirect handler #150 (Kazuho Oku)
  • [core] add pid-file directive for specifying the pid file #164 (Kazuho Oku)
  • [core] connections accepted by host-specific listeners should not be handled by handlers of other hosts #163 (Kazuho Oku)
  • [core] (FreeBSD) fix a bug that prevented the standalone server from booting when run as root #160 (Kazuho Oku)
  • [core] switch to pipe-based interthread messaging #154 (Kazuho Oku)
  • [core] use kqueue on all BSDs #156 (Kazuho Oku)
  • [access-log] more logging directives: %H, %m, %q, %U, %V, %v #158 (Kazuho Oku)
  • [access-log] bugfix: header values were not logged when specified using uppercase letters #157 (Kazuho Oku)
  • [file] add application/json to defalt MIME-types #159 (Tatsuhiko Kubo)
  • [http2] add support for the finalized version of HTTP/2 #166 (Kazuho Oku)
  • [http2] fix issues reported by h2spec v0.0.6 #165 (Kazuho Oku)
  • [proxy] merge the cookie headers before sending to upstream #161 (Kazuho Oku)
  • [proxy] simplify the configuration directives (and make persistent upstream connections as default) #162 (Kazuho Oku)
  • [SSL] add configuration directive to preload DH params #148 (Jeff Marrison)
  • [libh2o] separate versioning scheme using H2O_LIBRARY_VERSION_* #167 (Kazuho Oku)

H2O version 0.9.2

18 Feb 15:38
Compare
Choose a tag to compare

Announcement: H2O version 0.9.2 released incl. support for HTTP2 server-push, state-of-art prioritization of streams

Changes:

  • [core] graceful shutdown on SIGTERM #119 (Kazuho Oku)
  • [core] less TCP errors under high load #81 (Kazuho Oku)
  • [file] add support for HEAD requests #110 (Mark Hoersken)
  • [http1] MSIE workaround (send Cache-Control: private in place of Vary) #114 (Kazuho Oku)
  • [http2] support server-push #133 (Kazuho Oku)
  • [http2] fix spurious RST_STREAMS being sent #132 (Kazuho Oku)
  • [http2] weight-based distribution of bandwidth #135 (Kazuho Oku)
  • [proxy] added configuration directive proxy.preserve-host #112 (Masahiro Nagano)
  • [proxy] sends X-Forwarded-For and X-Forwarded-Proto headers #112 (Masahiro Nagano)
  • [proxy] stability improvements #61 (Kazuho Oku)
  • [misc] adjustments to make the source code more analyzer-friendly #113,#117 (Nick Desaulniers, Maks Naumov)

H2O version 0.9.1

18 Feb 15:39
Compare
Choose a tag to compare

Announcement: H2O version 0.9.1 released with support for HTTP2 dependency-based prioritization

Changes:

  • added configuration directives: ssl/cipher-suite, ssl/ocsp-update-interval, ssl/ocsp-max-failures, expires, file.send-gzip
  • [http2] added support for draft-16 (draft-14 is also supported)
  • [http2] dependency-based prioritization
  • [http2] improved conformance to the specification
  • [SSL] OCSP stapling (automatically enabled by default)
  • [SSL] fix compile error with OpenSSL below version 1.0.1
  • [file] content negotiation (serving .gz files)
  • [expires] added support for Cache-Control: max-age
  • [libh2o] libh2o and the header files installed by make install
  • [libh2o] fix compile error when used from C++
  • automatically setuids to nobody when run as root and if user directive is not set
  • automatically raises RLIMIT_NOFILE
  • uses all CPU cores by default
  • now compiles on NetBSD and other BSD-based systems

H2O version 0.9.0

18 Feb 15:41
Compare
Choose a tag to compare