Skip to content

Releases: junkurihara/rust-rpxy

0.8.0-alpha.1

07 Jun 05:25
068a13a
Compare
Choose a tag to compare
0.8.0-alpha.1 Pre-release
Pre-release

Improvements

  • Change the certificate verifier from rustls-native-certs to rustls-platform-verifier to use the system's default root cert store for better client (forwarder) performance in hyper-rustls.

What's Changed

  • deps: update s2n quic and add copy of s2n-quic-h3 as submodule to avoid build failure by @junkurihara in #157
  • feat: update features of hyper-rutstls with aws-lc-rs and platform-verifier by @junkurihara in #158

Full Changelog: 0.8.0-alpha.0...0.8.0-alpha.1

0.8.0-alpha.0

01 Jun 18:05
d66863a
Compare
Choose a tag to compare
0.8.0-alpha.0 Pre-release
Pre-release

Important Changes

  • Breaking: Support for rustls-0.23.x for http/1.1, 2 and 3. No configuration update is needed at this point.
  • Breaking: Along with rustls, the cert manager was split from rpxy-lib and moved to a new inner crate rpxy-cert. This change is to make the cert manager reusable for other projects and to support not only static file based certificates but also other types, e.g., dynamic fetching and management via ACME, in the future.

What's Changed

Full Changelog: 0.7.1...0.8.0-alpha.0

0.7.1

10 Apr 06:31
679d613
Compare
Choose a tag to compare

updated dependencies, especially s2n-quic and its related packages

What's Changed

Full Changelog: 0.7.0...0.7.1

0.7.0

15 Feb 16:02
c44452f
Compare
Choose a tag to compare

Important Changes

  • Breaking: hyper-1.0 for both server and client modules (#23).
  • Breaking: Remove override_host option in upstream options. Add a reverse option, i.e., keep_original_host, and the similar option set_upstream_host. While keep_original_host can be explicitly specified, rpxy keeps the original host given by the incoming request by default. Then, the original host header is maintained or added from the value of url request line. If host header needs to be overridden with the upstream host name (backend uri's host name), set_upstream_host has to be set. If both of set_upstream_host and keep_original_host are set, keep_original_host is prioritized since it is explicitly specified (#133).
  • Breaking: Introduced native-tls-backend feature to use the native TLS engine to access backend applications.
  • Breaking: Changed the policy of the default cert store from webpki to the system-native store. Thus we terminated the feature native-roots and introduced webpki-roots feature to use webpki root cert store. (related to #95)

Improvement

  • Redesigned: Cache structure is totally redesigned with more memory-efficient way to read from cache file, and more secure way to strongly bind memory-objects with files with hash values.
  • Redesigned: HTTP body handling flow is also redesigned with more memory-and-time efficient techniques without putting the whole objects on memory by using futures::stream::Stream and futures::channel::mpsc
  • Feat: Allow to disable/enable forced-connection-timeout regardless of connection status (idle or not). [default: disabled]
  • Refactor: lots of minor improvements

What's Changed

Full Changelog: 0.6.2...0.7.0

0.6.2

13 Oct 07:05
64c068a
Compare
Choose a tag to compare

Improvement

  • Feat: Add a build feature of native-roots to use the system's default root cert store. Resolved #95
  • Feat: Add binary release in addition to container release. Resolved #94
  • Refactor: lots of minor improvements

What's Changed

Full Changelog: 0.6.1...0.6.2

0.6.1

09 Sep 16:26
805c5eb
Compare
Choose a tag to compare

Bugfix

  • Fix: fix a "watch" bug for docker. Due to a docker limitation, we need to mount a dir, e.g, /rpxy/config, instead of a file, rpxy.toml, to track changes of the configuration file. We thus updated a start up script in docker container for the case "WATCH=true".

What's Changed

Full Changelog: 0.6.0...0.6.1

0.6.0

24 Aug 10:59
9bbd8fc
Compare
Choose a tag to compare

Improvement

  • Feat: Enabled h2c (HTTP/2 cleartext) requests to upstream app servers (in the previous versions, only HTTP/1.1 is allowed for cleartext requests) Resolves #74
  • Feat: Initial implementation of caching feature using file + on memory cache. (Caveats: No persistance of the cache. Once config is updated, the cache is totally eliminated.) Resolves #55
  • Refactor: lots of minor improvements

Bugfix

  • Fix: fix server in the response header (rpxy_lib -> rpxy)
  • Fix: fix bug for hot-reloading configuration file (Add termination notification receiver in proxy services)

What's Changed

Full Changelog: 0.5.0...0.6.0

0.5.0

02 Aug 09:41
0ec6430
Compare
Choose a tag to compare

Improvement

  • Feat: s2n-quic with s2n-quic-h3 is supported as QUIC and HTTP/3 library in addition to quinn with h3-quinn, related to #57.
  • Feat: Publish dockerfile for rpxy with s2n-quic on both amd64 and arm64.
  • Feat: Start to publish docker images on ghcr.io in addition to Docker Hub
  • Refactor: logs of minor improvements

What's Changed

Full Changelog: 0.4.0...0.5.0

0.4.0

30 Jul 01:10
0f1eed7
Compare
Choose a tag to compare

Improvement

  • Feat: Continuous watching on a specified config file and hot-reloading the file when updated, related to #33
  • Feat: Enabled to specify TCP listen backlog in the config file
  • Feat: Add a GitHub action to build arm64 docker image.
  • Bench: Add benchmark result on amd64 architecture.
  • Refactor: Split rpxy into rpxy-lib and rpxy-bin
  • Refactor: lots of minor improvements

Bugfix

  • Fix bug to apply default backend application

What's Changed

Full Changelog: 0.3.0...0.4.0