Sozu Versions Save

Sōzu HTTP reverse proxy, configurable at runtime, fast and safe, built in Rust. It is awesome!

0.15.2

10 months ago

⛑️ Fixed

  • We have found out a bug around the upgrade from proxy-protocol to http, see 211db27.

Changelog

⛑️ Fixed

  • 211db27 ] Fix empty interest on expect proxy proto upgrade [Eloi DEMOLIS] (2023-07-17)

✍️ Changed

  • 0a31489 ] chore(http): reduce log verbosity around the http close method [Florentin Dubois] (2023-07-13)
  • 748bf0f ] chore: update dependencies [Florentin Dubois] (2023-07-17)
  • c6446e1 ] chore: add changelog entry for release v0.15.1 [Florentin Dubois] (2023-07-11)

Full Changelog: https://github.com/sozu-proxy/sozu/compare/0.15.1...0.15.2

0.15.1

10 months ago

🌟 Features

  • We have reduce the number of noisy logs to focus on what is really important on Sōzu, see [ 39f4170 ], [ 362cd82 ] and [ c92d6bd ].
  • We have added the 100 Continue use case in e2e tests to ensure no regression on it, see [ c92d6bd ].

⛑️ Fixed

  • We have identified a bug that create a loop on cluster that have the https redirect enabled, see [ 675c99d ].

Changelog

✍️ Changed

  • 5a3b9b2 ] Update changelog to add v0.15.0 [Florentin Dubois] (2023-06-23)
  • dfbd4b0 ] chore: update dependencies [Florentin Dubois] (2023-06-30)
  • 1753869 ] ci: continue ci even if rust nightly build fail [Florentin Dubois] (2023-06-30)
  • 39f4170 ] comments on logging macros [Emmanuel Bosquet] (2023-07-03)
  • 362cd82 ] chore(https): reduce log level for debug logs [Florentin Dubois] (2023-07-11)
  • 0d33f89 ] chore: update dependencies [Florentin Dubois] (2023-07-11)

➕ Added

  • c92d6bd ] Ignore 107 error on front socket, add 100-continue case in e2e tests [Eloi DEMOLIS] (2023-07-07)

🚀 Refactored

  • b26d34c ] rename parse_one_command to parse_one_request [Emmanuel Bosquet] (2023-07-03)

⛑️ Fixed

  • 675c99d ] fix: redirect to https only if the listener is a http [Florentin Dubois] (2023-07-11)
  • 45e97a9 ] fix(os-build): add missing protobuf dependency [Florentin Dubois] (2023-06-30)
  • fa5a910 ] fix(os-build): add missing protobuf dependency [Florentin Dubois] (2023-06-30)
  • 97034bd ] fix: update start_tcp_worker to use TCPListen variant of Protocol enum [Florentin Dubois] (2023-07-11)

Full Changelog: https://github.com/sozu-proxy/sozu/compare/0.15.0...0.15.1

0.15.0

11 months ago

🌟 Features

  • We have added on the command line a way to check for certificate validity that print the "not after" and "not before" field of the certificate, see 8ea3768
  • This release is also the first one of that use the crate kawa to parse HTTP requests and translate them into an intermediate representation. It will be a foundation of the H2 integration in Sōzu, see 144bdb6, 5ac6fd7, 5ac6fd7, 1cff096, c4fbef0, 5c17acf, b8fb52e, cd55235, 3eec22c, dc78bc0, 1b3bbf2 and 737072f.
  • We have updated the packaging for Arch Linux, Docker, Fedora, Exherbo and systemd, see f2176a3, 81f25b6 and d088468

⛑️ Fixed

  • We have fixed some issues that Mac OS users could be met, see a93f66e and 0b435b6.
  • We have also reduce the number of logs that Sōzu could be create using debug logging level as it may slow down it in few cases, see 09b0bf0.

⚡ Breaking changes

  • We have renamed the command query cluster into cluster list, see cf5964b.
  • We have renamed the command query certifcate into certificate list, see ec6c58e and acdc8c9.

Changelog

🌟 Features

  • 8ea3768 ] CLI: show certificate validity [Emmanuel Bosquet] (2023-05-22)
  • 144bdb6 ] First integration of HTX in H1 state [Eloi DEMOLIS] (2023-06-05)
  • 5ac6fd7 ] Continue HTX integration for H1: [Eloi DEMOLIS] (2023-06-05)
  • 1cff096 ] Remove unused macros [Eloi DEMOLIS] (2023-06-05)
  • c4fbef0 ] Continue HTX (now Kawa) integration: [Eloi DEMOLIS] (2023-06-05)
  • 5c17acf ] Continue Kawa integration: [Eloi DEMOLIS] (2023-06-05)
  • b8fb52e ] Continue Kawa integration: [Eloi DEMOLIS] (2023-06-05)
  • cd55235 ] Add e2e test max_connections, add accept timeout on e2e sync_backend [Eloi DEMOLIS] (2023-06-05)
  • 3eec22c ] Revisit HTTP timeouts, move Checkout synching to also benifit WSS [Eloi DEMOLIS] (2023-06-05)
  • dc78bc0 ] Propagate AcceptError if no Checkout could be assigned to new HTTP session [Eloi DEMOLIS] (2023-06-05)
  • 1b3bbf2 ] Support 103 Responses: [Eloi DEMOLIS] (2023-06-16)
  • 737072f ] introduce access_logs.count metric [Emmanuel Bosquet] (2023-06-16)

✍️ Changed

  • f193370 ] test ConfigState::get_certificate_by_fingerprint [Emmanuel Bosquet] (2023-05-22)
  • ca18682 ] query the state for a certificate, by domain [Emmanuel Bosquet] (2023-05-22)
  • 308f22f ] remove type CertificateWithNames [Emmanuel Bosquet] (2023-05-22)
  • 3286204 ] display certificates from the state in a table [Emmanuel Bosquet] (2023-05-22)
  • 2863c31 ] CLI: query all certificates in the state [Emmanuel Bosquet] (2023-05-22)
  • a71f485 ] query certificates from the state with fingerprint [Emmanuel Bosquet] (2023-05-22)
  • 294c164 ] Update gitignore [Florentin Dubois] (2023-05-23)
  • ffcec1c ] chore: update dependencies [Florentin Dubois] (2023-06-22)
  • b73122b ] chore: update dependencies [Florentin Dubois] (2023-06-22)
  • cdc4e29 ] chore: update dependencies [Florentin Dubois] (2023-06-22)
  • 3c56fbc ] chore: update dependencies [Florentin Dubois] (2023-06-22)

➖ Removed

  • 774d1af ] Remove legacy folder and script [Florentin Dubois] (2023-05-23)

⚡ Breaking changes

  • cf5964b ] transform CLI command "query clusters" to "cluster get" [Emmanuel Bosquet] (2023-05-22)
  • acdc8c9 ] transform CLI command "query certificates" to "certificate get" [Emmanuel Bosquet] (2023-05-22)
  • ec6c58e ] CLI: rename 'clusters get' to 'clusters list', same for certificates [Emmanuel Bosquet] (2023-05-22)

➕ Added

  • 2f79f3c ] create ConfigState::get_certificates_by_domain_name [Emmanuel Bosquet] (2023-05-22)
  • 787ae9e ] implement Display for CertificateWithNames [Emmanuel Bosquet] (2023-05-22)
  • 1797600 ] implement From<RequestType> for Request [Emmanuel Bosquet] (2023-05-22)
  • c19ef26 ] rename order_request to send_request [Emmanuel Bosquet] (2023-05-22)
  • 538653f ] Create state directory and file if it does not exists [Florentin Dubois] (2023-05-23)
  • b34b60f ] count request types received in ConfigState [Emmanuel Bosquet] (2023-06-01)
  • 3a92069 ] define defaults in sozu_command_lib::config [Emmanuel Bosquet] (2023-06-02)
  • f6e011f ] Add socketstats unittest [Eloi DEMOLIS] (2023-06-05)

📚 Documentation

  • de7660d ] doc: Changed all instances of SSL to TLS. [Jonathan Davies] (2023-05-19)

🚀 Refactored

  • 9085a20 ] isolate method ConfigState::list_listeners [Emmanuel Bosquet] (2023-05-19)
  • c85f65f ] isolate method ConfigState::list_frontends [Emmanuel Bosquet] (2023-05-19)
  • e24659d ] introduce type QueryCertificatesFilters [Emmanuel Bosquet] (2023-05-22)
  • 9d554a5 ] rename ContentType::Certificates to CertificatesByAddress [Emmanuel Bosquet] (2023-05-22)
  • 4776d5f ] merge certificate types in CertificatesWithFingerprints [Emmanuel Bosquet] (2023-05-22)
  • 91dc12d ] CertificatesMatchingADomainName contains CertificateAndKey [Emmanuel Bosquet] (2023-05-22)
  • 721a951 ] merge request types into RequestType::QueryCertificatesFromWorkers [Emmanuel Bosquet] (2023-05-22)
  • fcbe244 ] CLI: simplify display::print_cluster_responses [Emmanuel Bosquet] (2023-05-22)
  • 57a0fc6 ] Format GitHub Action workflow [Florentin Dubois] (2023-05-23)
  • f2176a3 ] Update systemd services and configuration [Florentin Dubois] (2023-05-23)
  • 81f25b6 ] Update Arch Linux packaging [Florentin Dubois] (2023-05-23)
  • 458bb5a ] Update RPM and selinux packaging [Florentin Dubois] (2023-05-23)
  • d088468 ] Update Docker image [Florentin Dubois] (2023-05-23)
  • fe9097e ] Apply clippy suggestions [Eloi DEMOLIS] (2023-06-05)
  • 72f200b ] Refactor access logs: [Eloi DEMOLIS] (2023-06-05)
  • 0ff7b31 ] rename MetricData to MetricValue [Emmanuel Bosquet] (2023-06-16)

⛑️ Fixed

  • 584e0bf ] fix display of hex fingerprint in the CLI [Emmanuel Bosquet] (2023-05-22)
  • a93f66e ] Fix some MacOS related issues [Eloi DEMOLIS] (2023-06-14)
  • 0b435b6 ] Fix some MacOS related warnings [Eloi DEMOLIS] (2023-06-14)
  • 09b0bf0 ] chore: decrease logging verbosity [Florentin Dubois] (2023-06-22)

🥹 Contributors

  • @Wonshtrum
  • @Keksoj
  • @FlorentinDUBOIS

Full Changelog: https://github.com/sozu-proxy/sozu/compare/0.14.3...0.15.0

0.14.3

1 year ago

🌟 Features

✍️ Changed

➖ Removed

  • We have removed the "acme" sub command of sozu to help us to completely remove openssl dependency on OpenSSL, see d5297dd, 106d3c8 and the issue #926

⚡ Breaking changes

  • As we changed the communication format from json to protobuf, we could not keep the compatibility with elder version. However, as we used protobuf now, we will be able to support evolutions and changes without creating a breaking change.

Changelog

➕ Added

  • [ f0704ef ] Add default variables [tazou] (2021-06-22)
  • [ 6616b77 ] add context to HTTP and HTTPS listener activation [Emmanuel Bosquet] (2022-12-09)
  • [ 2f4f769 ] add protobuf to Dockerfile image [Emmanuel Bosquet] (2023-05-03)
  • [ 08504aa ] add rust-version and rust-toolchain [Emmanuel Bosquet] (2023-05-05)
  • [ b198efb ] Docker build and push to Docker Hub in the CI [Emmanuel Bosquet] (2022-12-09)
  • [ b260c8c ] push docker build to docker hub only when merging to main [Emmanuel Bosquet] (2022-12-09)
  • [ b5fb1d9 ] Simple e2e testing framework, passthrough and corner case tests [Eloi DEMOLIS] (2023-01-10)
  • [ 146dd32 ] make get_cluster_ids_by_domain a method of ConfigState [Emmanuel Bosquet] (2023-05-04)
  • [ ebeabc4 ] make get_certificate a method of ConfigState [Emmanuel Bosquet] (2023-05-04)
  • [ c4c51fa ] list HTTP, HTTPS and TCP listeners in the CLI [Emmanuel Bosquet] (2023-01-12)
  • [ 7b568dd ] cli: simplify request sending, remove boilerplate [Emmanuel Bosquet] (2023-01-16)
  • [ 7e24d12 ] PR feedback [Tim Bart] (2022-12-18)

➖ Removed

  • [ 106d3c8 ] chore(acme): remove acme command [Florentin Dubois] (2023-05-04)
  • [ 5bf36f5 ] remove todo macros in bin/scr/ctl/command.rs [Emmanuel Bosquet] (2023-01-16)

✍️ Changed

  • [ 42fa3f2 ] chore(archlinux): update packaging [Florentin Dubois] (2023-01-23)
  • [ b7e2f17 ] chore(docker): update packaging [Florentin Dubois] (2023-01-23)
  • [ e5465e4 ] chore(rpm): update packaging [Florentin Dubois] (2023-01-23)
  • [ 6c87883 ] Update generate.sh [tazou] (2021-06-22)
  • [ 1304914 ] Update command/src/proxy.rs [Tim Bart] (2022-12-20)
  • [ 3e48735 ] remove unsafe for get_executable_path on macOS [Tim Bart] (2022-12-19)
  • [ 95f7019 ] Github CI: use stable toolchain to build the doc [Emmanuel Bosquet] (2023-03-22)
  • [ 5698e14 ] chore(lib): bump dependencies [Florentin Dubois] (2023-05-03)
  • [ c7fd33d ] chore(command): bump dependencies [Florentin Dubois] (2023-05-03)
  • [ 9ca3cda ] chore(e2e): bump dependencies [Florentin Dubois] (2023-05-03)
  • [ 4a89060 ] chore(bin): bump dependencies [Florentin Dubois] (2023-05-03)
  • [ 78f1647 ] update rustls to 0.21.0 [Emmanuel Bosquet] (2023-04-12)
  • [ 6d5215a ] Update dependencies [Florentin Dubois] (2023-02-06)
  • [ b6bc86d ] build protobuf types with prost-build, without tonic [Emmanuel Bosquet] (2023-04-12)
  • [ d5297dd ] chore(e2e): use rustls instead of openssl [Florentin Dubois] (2023-05-04)
  • [ b978a89 ] get TcpFrontends::tags out of its Option<> [Emmanuel Bosquet] (2023-05-04)
  • [ 9cd613c ] Update lib/src/protocol/http/mod.rs [Eloi Démolis] (2023-04-13)
  • [ b89f4f7 ] Update lib/src/protocol/http/mod.rs [Eloi Démolis] (2023-04-13)
  • [ a1c02b6 ] remove resolved TODOs [Emmanuel Bosquet] (2023-05-04)

📚 Documentation

  • [ 2609746 ] add documenting comments [Emmanuel Bosquet] (2022-12-16)
  • [ 057eac4 ] basic crate documentation on sozu [Emmanuel Bosquet] (2023-05-09)
  • [ 432b22b ] documenting comments on main process upgrade, remove useless comments [Emmanuel Bosquet] (2022-12-16)
  • [ 91dc44d ] Remove mentions of sozuctl [Sykursen] (2023-03-01)
  • [ 78a6363 ] document protobuf in the sozu-command-lib README [Emmanuel Bosquet] (2023-05-03)
  • [ 3e93455 ] doc: use sozu instead of sozuctl [Florentin Dubois] (2023-01-23)
  • [ 5032973 ] correct formatting in how_to_use.md [Emmanuel Bosquet] (2023-05-03)
  • [ 17f7cb6 ] rewrite the sozu_lib documentation [Emmanuel Bosquet] (2023-05-09)

🚀 Refactored

  • [ 319119a ] abstract out HTTP and HTTPS notify methods [Emmanuel Bosquet] (2022-12-08)
  • [ 03085ea ] error propagation on HTTP and HTTPS frontend add and remove [Emmanuel Bosquet] (2022-12-08)
  • [ ffb5384 ] rename ConfigState::handle_order to ConfigState::dispatch [Emmanuel Bosquet] (2022-12-16)
  • [ 1c9f785 ] remove the init_workers function [Emmanuel Bosquet] (2022-12-16)
  • [ 1732b5d ] rename command::proxy module to command::worker [Emmanuel Bosquet] (2023-03-08)
  • [ e3c8bec ] remove optional worker id from CommandRequest [Emmanuel Bosquet] (2023-03-08)
  • [ efb9c5d ] rename CommandRequest to ClientRequest [Emmanuel Bosquet] (2023-03-08)
  • [ 7759984 ] flatten ProxyRequestOrder variants into RequestContent [Emmanuel Bosquet] (2023-03-08)
  • [ 1d5c72e ] remove id and version from Requests sent to sozu [Emmanuel Bosquet] (2023-03-09)
  • [ 1b07534 ] Remove @BlackYoup from code owners [Florentin DUBOIS] (2023-03-09)
  • [ a1a801e ] put Query variants into Order, remove Query [Emmanuel Bosquet] (2023-03-09)
  • [ 9dc490f ] sozu_command_lib: rename command module to order [Emmanuel Bosquet] (2023-03-10)
  • [ 4bd9c6f ] segregate types in the order and response modules [Emmanuel Bosquet] (2023-03-10)
  • [ 1421f6c ] rename sozu::Response to sozu::Advancement [Emmanuel Bosquet] (2023-03-13)
  • [ a39d905 ] rename sozu_command_lib::CommandResponse to Response [Emmanuel Bosquet] (2023-03-13)
  • [ 43dfd6e ] rename sozu_command_lib::order module to request [Emmanuel Bosquet] (2023-03-13)
  • [ 6437a69 ] rename sozu::command::orders to sozu::command::requests [Emmanuel Bosquet] (2023-03-13)
  • [ 4ec1b21 ] sozu::Worker::is_not_stopped_or_stopping() method [Emmanuel Bosquet] (2023-03-13)
  • [ c4dbf90 ] method Request::is_a_stop() [Emmanuel Bosquet] (2023-03-13)
  • [ 6910aaf ] remove worker.rs [Emmanuel Bosquet] (2023-03-13)
  • [ 137ae7f ] return error if no worker is found when reloading configuration [Emmanuel Bosquet] (2023-03-13)
  • [ aeb2f2e ] remove useless ProxyEvent, redundant with Event [Emmanuel Bosquet] (2023-03-13)
  • [ 7d9b0f5 ] use type ResponseStatus for ProxyResponse [Emmanuel Bosquet] (2023-03-13)
  • [ 755716c ] rename sozu::Worker::is_not_stopped_or_stopping to is_active [Emmanuel Bosquet] (2023-03-16)
  • [ b2e0a6b ] build Config using a ConfigBuilder [Emmanuel Bosquet] (2023-03-16)
  • [ 4509bbe ] sozu_command_lib::config::FileConfig::load_from_path returns anyhow::Result [Emmanuel Bosquet] (2023-03-16)
  • [ c1f5b6e ] parse String to SocketAddr in config::Listener [Emmanuel Bosquet] (2023-03-16)
  • [ 2516e3b ] replace SocketAddr with String in certificate requests [Emmanuel Bosquet] (2023-03-16)
  • [ d909f7d ] create struct AddBackend where SocketAddr is a String [Emmanuel Bosquet] (2023-03-16)
  • [ d2303f9 ] create struct RequestHttpFrontend where SocketAddr is a String [Emmanuel Bosquet] (2023-03-16)
  • [ 8db54c7 ] documenting comments and defaults on Config [Emmanuel Bosquet] (2023-03-16)
  • [ cbca836 ] builder pattern for listeners [Emmanuel Bosquet] (2023-03-16)
  • [ 35a43ee ] default values for timeouts in Config serialization [Emmanuel Bosquet] (2023-03-16)
  • [ 2c6641a ] const DEFAULT_STICKY_NAME with value SOZUBALANCEID [Emmanuel Bosquet] (2023-03-16)
  • [ 7c6c93f ] protocol checks when building Listener in config.rs [Emmanuel Bosquet] (2023-03-16)
  • [ c53e763 ] documenting comments on listener builders [Emmanuel Bosquet] (2023-03-16)
  • [ e8fdb95 ] implement Into<RequestHttpFrontend> for HttpFrontend [Emmanuel Bosquet] (2023-03-16)
  • [ c504ffa ] remove impl Default for HttpListenerConfig [Emmanuel Bosquet] (2023-03-16)
  • [ 0b74c92 ] remove useless field http_addresses on ConfigState [Emmanuel Bosquet] (2023-03-16)
  • [ 7145d1f ] parse socket addresses in the CLI before sending requests [Emmanuel Bosquet] (2023-03-20)
  • [ d6fba00 ] rename QueryAnswerCluster to ClusterInformation [Emmanuel Bosquet] (2023-03-22)
  • [ ee301d9 ] rename CertificateFingerprint to Fingerprint [Emmanuel Bosquet] (2023-03-22)
  • [ 8fcf5e9 ] introduce response type CertificateSummary [Emmanuel Bosquet] (2023-03-22)
  • [ f514bce ] create Request::QueryAllCertificates [Emmanuel Bosquet] (2023-03-22)
  • [ 145d061 ] create Request::QueryCertificatesByDomain [Emmanuel Bosquet] (2023-03-22)
  • [ 81f4f39 ] create Request::QueryCertificateByFingerprint [Emmanuel Bosquet] (2023-03-22)
  • [ 7cf64c8 ] make Request::QueryCertificateByFingerprint contain Fingerprint [Emmanuel Bosquet] (2023-03-22)
  • [ a7e16f8 ] remove ResponseContent::CertificatesByDomain [Emmanuel Bosquet] (2023-03-22)
  • [ 4b312d4 ] remove QueryAnswerCertificate [Emmanuel Bosquet] (2023-03-22)
  • [ fdb8f2e ] rename ClusterMetricsData to ClusterMetrics [Emmanuel Bosquet] (2023-03-22)
  • [ 0e62f8d ] remove ProxyResponseContent, put its variant in ResponseContent [Emmanuel Bosquet] (2023-03-22)
  • [ e0643f4 ] rename ProxyResponse to WorkerResponse [Emmanuel Bosquet] (2023-03-22)
  • [ 4df5ba9 ] put QueryAnswer variants in ProxyResponse, remove QueryAnswer [Emmanuel Bosquet] (2023-03-22)
  • [ 0c94c2b ] make PathRule a struct, with embedded enum PathRuleKind [Emmanuel Bosquet] (2023-03-22)
  • [ ad7f58f ] rename AggregatedMetricsData to AggregatedMetrics [Emmanuel Bosquet] (2023-03-22)
  • [ a5b0009 ] rename FilteredData to FilteredMetrics [Emmanuel Bosquet] (2023-03-22)
  • [ 5f18b71 ] create and use response::BackendMetrics [Emmanuel Bosquet] (2023-03-22)
  • [ cb4755a ] make AggregatedMetrics contain WorkerMetrics [Emmanuel Bosquet] (2023-03-22)
  • [ eb9b18e ] create AvailableMetrics, remove QueryAnswerMetrics [Emmanuel Bosquet] (2023-03-22)
  • [ 3387628 ] move QueryAnswerCertificate::All to ResponseContent::AllCertificates [Emmanuel Bosquet] (2023-03-22)
  • [ 30ae223 ] move QueryAnswerCertificate::Domain to ResponseContent::CertificatesByDomain [Emmanuel Bosquet] (2023-03-22)
  • [ 72259e7 ] move QueryAnswerCertificate::Fingerprint to ResponseContent::CertificateByFingerprint [Emmanuel Bosquet] (2023-03-22)
  • [ 476e230 ] Http refactor: move backend logic from Session to State [Eloi DEMOLIS] (2023-02-13)
  • [ 7fac13a ] create Request::QueryClusterById [Emmanuel Bosquet] (2023-03-23)
  • [ 31d689a ] create Request::QueryClusterByDomain [Emmanuel Bosquet] (2023-03-23)
  • [ f03aac9 ] HttpFrontend::route has type Option<ClusterId> [Emmanuel Bosquet] (2023-03-27)
  • [ 5924101 ] rename HttpFrontend::route to cluster_id [Emmanuel Bosquet] (2023-03-27)
  • [ 8d6eb42 ] replace SocketAddr type with String in Listeners [Emmanuel Bosquet] (2023-04-03)
  • [ 8e5e9ce ] field active on TcpListenerConfig [Emmanuel Bosquet] (2023-04-03)
  • [ 65b01e8 ] field active on HttpsListenerConfig [Emmanuel Bosquet] (2023-04-03)
  • [ 1264378 ] field active on HttpListenerConfig [Emmanuel Bosquet] (2023-04-03)
  • [ 565dbd6 ] implement fmt::Display for RequestHttpFrontend [Emmanuel Bosquet] (2023-04-04)
  • [ 87b4d96 ] populate https_frontends in ConfigState [Emmanuel Bosquet] (2023-04-04)
  • [ 457a9cd ] protobuf scaffold [Emmanuel Bosquet] (2023-04-04)
  • [ 7ca33c6 ] write RequestHttpFrontend in protobuf [Emmanuel Bosquet] (2023-04-04)
  • [ 2989f49 ] write CertificateSummary in protobuf [Emmanuel Bosquet] (2023-04-04)
  • [ 8907216 ] write TlsVersion in protobuf [Emmanuel Bosquet] (2023-04-04)
  • [ 36f01dc ] write CertificateAndKey in protobuf [Emmanuel Bosquet] (2023-04-04)
  • [ 00f82cf ] write AddCertificate in protobuf [Emmanuel Bosquet] (2023-04-04)
  • [ 9a37917 ] write RemoveCertificate in protobuf [Emmanuel Bosquet] (2023-04-04)
  • [ 5a77faf ] write ReplaceCertificate in protobuf [Emmanuel Bosquet] (2023-04-04)
  • [ f434974 ] write LoadBalancingAlgorithms in protobuf [Emmanuel Bosquet] (2023-04-05)
  • [ 6716f8a ] write ProxyProtocolConfig in protobuf [Emmanuel Bosquet] (2023-04-05)
  • [ 4e1e7d0 ] write LoadMetric in protobuf [Emmanuel Bosquet] (2023-04-05)
  • [ 25f6018 ] write Cluster in protobuf [Emmanuel Bosquet] (2023-04-05)
  • [ 82bb6c5 ] write RequestTcpFrontend in protobuf [Emmanuel Bosquet] (2023-04-05)
  • [ 685bb16 ] write RemoveBackend in protobuf [Emmanuel Bosquet] (2023-04-05)
  • [ bdd402f ] write AddBackend and LoadBalancingParams in protobuf [Emmanuel Bosquet] (2023-04-05)
  • [ c3969d2 ] write QueryClusterByDomain in protobuf [Emmanuel Bosquet] (2023-04-05)
  • [ a87214f ] write QueryMetricsOptions in protobuf [Emmanuel Bosquet] (2023-04-05)
  • [ ba6928c ] write MetricsConfiguration in protobuf [Emmanuel Bosquet] (2023-04-05)
  • [ be75673 ] write RunState in protobuf [Emmanuel Bosquet] (2023-04-05)
  • [ a8c87a1 ] write WorkerInfo in protobuf [Emmanuel Bosquet] (2023-04-05)
  • [ c674b64 ] write Percentiles in protobuf [Emmanuel Bosquet] (2023-04-05)
  • [ f6a84e1 ] write FilteredTimeSerie in protobuf [Emmanuel Bosquet] (2023-04-05)
  • [ 03332c7 ] write FilteredMetrics in protobuf [Emmanuel Bosquet] (2023-04-05)
  • [ 332ed3e ] write BackendMetrics and ClusterMetrics in protobuf [Emmanuel Bosquet] (2023-04-05)
  • [ 1edcf68 ] write WorkerMetrics in protobuf [Emmanuel Bosquet] (2023-04-05)
  • [ 3e41887 ] write AggregatedMetrics in protobuf [Emmanuel Bosquet] (2023-04-05)
  • [ 19d2915 ] put field names to CertificateAndKey [Emmanuel Bosquet] (2023-04-05)
  • [ 50b1a2e ] write HttpFrontendConfig in protobuf [Emmanuel Bosquet] (2023-04-05)
  • [ a91a576 ] write HttpsFrontendConfig in protobuf [Emmanuel Bosquet] (2023-04-05)
  • [ 6daea56 ] write TcpListenerConfig in protobuf [Emmanuel Bosquet] (2023-04-05)
  • [ bd6d535 ] write ListenersList in protobuf [Emmanuel Bosquet] (2023-04-05)
  • [ 7617b34 ] write ListenerType in protobuf [Emmanuel Bosquet] (2023-04-05)
  • [ 7254b98 ] write RemoveListener in protobuf [Emmanuel Bosquet] (2023-04-05)
  • [ c2df4b0 ] write ActivateListener in protobuf [Emmanuel Bosquet] (2023-04-05)
  • [ d12920e ] write DeactivateListener in protobuf [Emmanuel Bosquet] (2023-04-05)
  • [ 4472332 ] remove useless HttpProxy, HttpsProxy, add TODOs [Emmanuel Bosquet] (2023-04-05)
  • [ dbd1fad ] write AvailableMetrics in protobuf [Emmanuel Bosquet] (2023-04-05)
  • [ 66e36d6 ] write Request in protobuf [Emmanuel Bosquet] (2023-04-26)
  • [ 582d285 ] write ResponseStatus in protobuf [Emmanuel Bosquet] (2023-04-28)
  • [ d817d9d ] create type WorkerInfos [Emmanuel Bosquet] (2023-04-28)
  • [ 7214aa2 ] replace ResponseContent::Status with ResponseContent::Workers [Emmanuel Bosquet] (2023-04-28)
  • [ 7fb08f3 ] make response::Event a struct, create EventKind [Emmanuel Bosquet] (2023-04-28)
  • [ 97fb5da ] write Event and EventKind in protobuf [Emmanuel Bosquet] (2023-04-28)
  • [ ae140f2 ] remove the DumpState command [Emmanuel Bosquet] (2023-04-28)
  • [ 2e26e76 ] create type ClusterHashes [Emmanuel Bosquet] (2023-04-28)
  • [ 30e602d ] write ClusterInformation in protobuf [Emmanuel Bosquet] (2023-04-28)
  • [ f005d9a ] create type ClusterInformations [Emmanuel Bosquet] (2023-04-28)
  • [ 802c3e9 ] create type CertificateWithNames [Emmanuel Bosquet] (2023-04-28)
  • [ 75b5ade ] create types ListOfCertificatesByAddress and CertificatesByAddress [Emmanuel Bosquet] (2023-04-28)
  • [ 537e0e9 ] write ListedFrontends in protobuf [Emmanuel Bosquet] (2023-04-28)
  • [ dbab4b4 ] write ResponseContent in protobuf [Emmanuel Bosquet] (2023-04-28)
  • [ 8cebed1 ] remove id from Response [Emmanuel Bosquet] (2023-04-28)
  • [ 73c496d ] remove protocol version from response [Emmanuel Bosquet] (2023-04-28)
  • [ d51590c ] write Response in protobuf [Emmanuel Bosquet] (2023-04-28)
  • [ cdc8629 ] remove the DumpState command from the protobuf Request [Emmanuel Bosquet] (2023-05-03)
  • [ 22719bd ] remove JSON serialization tests [Emmanuel Bosquet] (2023-05-03)
  • [ acb0455 ] isolate method SessionManager::at_capacity() [Emmanuel Bosquet] (2023-05-03)
  • [ f9de7ba ] create AcceptError::BufferCapacityReached, use it [Emmanuel Bosquet] (2023-05-03)
  • [ b125338 ] use default values wherever possible [Emmanuel Bosquet] (2023-04-12)
  • [ edb6863 ] rewrite use statements [Emmanuel Bosquet] (2023-04-13)
  • [ 570f8af ] implement From<ContentType> for ResponseContent [Emmanuel Bosquet] (2023-05-04)

⛑️ Fixed

  • [ 4901718 ] fix nightly warning in network drain [Emmanuel Bosquet] (2023-05-15)
  • [ 564177c ] fix examples: use statements, bugs [Emmanuel Bosquet] (2023-05-09)
  • [ 6fa15e5 ] apply clippy fixes [Emmanuel Bosquet] (2023-05-05)
  • [ ea0db5d ] Fix a "blue green" issue: [Eloi DEMOLIS] (2023-04-13)
  • [ 7555d38 ] fix(proxy): Add power_of_two and least_loaded to FromStr trait [Tim Bart] (2022-12-18)
  • [ 11407b8 ] fix(macos): minor tweaks to for cargo build to run successfully [Tim Bart] (2022-12-18)
  • [ 384489c ] Use clippy with Rust 1.67.0 and format source code [Florentin Dubois] (2023-02-06)
  • [ fbad528 ] Update return for get_executable_path (freebsd) [3boll] (2023-03-01)

🥹 Contributors

Full Changelog: https://github.com/sozu-proxy/sozu/compare/0.14.2...0.14.3

0.14.2

1 year ago

🌟 Features

✍️ Changed

  • Update RPM packaging, see [ 0776217 ], [ 37e90c2 ],
  • Update dependencies and refactor a bunch of source code to prepare h2, see [ a lot of commits below 😛 ]

⚡ Breaking changes

We remove the support of OpenSSL in favor of RusTLS, so the tls provider configurations associated to the selection of a tls provider has been dropped as well, see [ e202d1c ]

Changelog

➕ Added

  • [ 7d9b560 ] add brotli to encoding header values [Emmanuel Bosquet] (2022-11-29)
  • [ 22bf673 ] Add support of OpenSSL 3.0.x [Florentin Dubois] (2022-10-17)
  • [ d8f6b30 ] Add configuration options for OpenSSL TLS provider [Florentin Dubois] (2022-10-20)
  • [ 79755c8 ] Merged https_openssl and https_rustls [Eloi DEMOLIS] (2022-11-17)
  • [ e202d1c ] Remove OpenSSL [Eloi DEMOLIS] (2022-11-17)
  • [ 7118e64 ] import https://github.com/sozu-proxy/sozu-acme into the sozu command line [Emmanuel Bosquet] (2022-12-07)
  • [ 339277d ] update acme-lib and tiny_http dependencies [Emmanuel Bosquet] (2022-12-07)
  • [ da0f667 ] Add codeowners file [Florentin Dubois] (2022-11-30)

✍️ Changed

  • [ 0776217 ] Making some updates to RPM build spec and script. [Igal Alkon] (2021-07-31)
  • [ 37e90c2 ] Updating the rpm build script to have two modes of build the packages. [Igal Alkon] (2021-07-31)
  • [ 8997ec2 ] Update changelog to add entry for 0.14.1 [Florentin Dubois] (2022-10-13)
  • [ 073375f ] Unit tests, comments and refactoring of command/src/channel.rs [Emmanuel Bosquet] (2022-10-17)
  • [ e6a4615 ] Update README.md to remove ctl crate and add command one [Florentin Dubois] (2022-10-17)
  • [ a930847 ] Fix typos [Kian-Meng Ang] (2022-11-10)
  • [ 6fdfc18 ] update build scripts with the --locked flag [Emmanuel Bosquet] (2022-12-01)
  • [ 6f38476 ] Update dependencies [Florentin Dubois] (2022-12-01)
  • [ ae8ffe7 ] Update behaviour of add_certificate to skip already loaded certificate [Florentin Dubois] (2022-12-02)
  • [ aef7baa ] Rename variables l to listener on command/src/config [Florentin Dubois] (2022-12-02)
  • [ 19c4f70 ] Use rustfmt to format project [Florentin Dubois] (2022-12-02)
  • [ 72bb233 ] fullfill syntax TODOs [Emmanuel Bosquet] (2022-11-17)
  • [ dceea6f ] log ConnectionError with thiserror [Emmanuel Bosquet] (2022-11-22)
  • [ a7697ff ] Use listener cert when https front lacks cert [Ion Agorria] (2022-11-25)
  • [ 42c548b ] set a TODO to handle EINPROGRESS error when connecting to backend [Emmanuel Bosquet] (2022-11-25)

🚀 Refactored

  • [ c882946 ] processing messages between main process and CLI [Emmanuel Bosquet] (2022-10-20)
  • [ e90cc52 ] ctl: display response message for successful ProxyRequestOrder [Emmanuel Bosquet] (2022-10-25)
  • [ 69aac18 ] http session: clean-up session creation [Emmanuel Bosquet] (2022-11-08)
  • [ f31c894 ] tcp session: clean-up session creation [Emmanuel Bosquet] (2022-11-08)
  • [ 94994a3 ] htts_openssl session: clean-up session creation [Emmanuel Bosquet] (2022-11-08)
  • [ f5c6cf5 ] https_rustls session: clean-up session creation [Emmanuel Bosquet] (2022-11-08)
  • [ a4dc22e ] remove useless front_socket_mut functions on tcp and http Session [Emmanuel Bosquet] (2022-11-08)
  • [ 3e2f445 ] full error propagation on ConfigState::handle_order() [Emmanuel Bosquet] (2022-11-16)
  • [ 42986fd ] Error propagation on ScmSocket and Channel [Emmanuel Bosquet] (2022-11-17)
  • [ edfa1b4 ] remove obsolete comment about main process crashing [Emmanuel Bosquet] (2022-11-17)
  • [ bfc4884 ] replace ConnectionError with anyhow::Result [Emmanuel Bosquet] (2022-12-05)
  • [ 59bb989 ] merge client loop creation logic in the accept_clients function [Emmanuel Bosquet] (2022-12-05)
  • [ a6c7c9f ] error propagation on getting 404 and 503 answers from file system [Emmanuel Bosquet] (2022-11-17)
  • [ 5d83eef ] define the ClusterId type only once [Emmanuel Bosquet] (2022-11-17)
  • [ 605b95e ] abstract out the function reset_loop_time_and_get_timeout [Emmanuel Bosquet] (2022-11-25)
  • [ 2959876 ] abstract out the function read_channel_messages_and_notify [Emmanuel Bosquet] (2022-11-25)
  • [ 7743eba ] abstract out the functions zombie_check and shutting_down_complete [Emmanuel Bosquet] (2022-11-25)
  • [ c5e2262 ] add fields to Server for a clearer loop flow [Emmanuel Bosquet] (2022-11-25)
  • [ 96b90c9 ] clearer syntax on read_channel_messages_and_notify, comments [Emmanuel Bosquet] (2022-11-28)
  • [ 1aee08d ] create ConnectionError::MioConnectError [Emmanuel Bosquet] (2022-11-28)
  • [ 33b3e5f ] Abstract out notify proxys (#842) [Emmanuel Bosquet] (2022-11-30)

💪 First works on H2

  • [ 6bdb937 ] Rename HTTPS states, remove Option around State, rename https.rs [Eloi DEMOLIS] (2022-11-17)
  • [ a819fa3 ] Add Invalid State in HTTPS, add ALPN to Rustls ServerConfig [Eloi DEMOLIS] (2022-11-17)
  • [ 26f7d15 ] Make way for H2 with Alpn switch [Eloi DEMOLIS] (2022-11-17)
  • [ ec31f82 ] make RouteKey a common struct, make use of its methods [Emmanuel Bosquet] (2022-11-17)

⛑️ Fixed

  • [ 790f96b ] prevent concurrent testing in the github CI [Emmanuel Bosquet] (2022-12-01)
  • [ 719b637 ] ScmSocket::set_blocking updates its blocking field, takes &mut self [Emmanuel Bosquet] (2022-12-01)
  • [ 2624a43 ] Fix Sessions close: [Eloi DEMOLIS] (2022-12-02)

🥹 Contributors

Full Changelog: https://github.com/sozu-proxy/sozu/compare/v0.14.1...0.14.2

0.14.1

1 year ago

:bookmark: Documentation

✍️ Changed

:book: Changelog

  • 07ccff3 ] Update changelog to add version v0.14.0 [Florentin Dubois] (2022-10-06)
  • 7e223ee ] Rewrite session creation in lifetime_of_a_session.md [Eloi DEMOLIS] (2022-10-11)
  • 50a940a ] Continue work on the documentation, rename listen_token to listener_token [Eloi DEMOLIS] (2022-10-11)
  • a13eb35 ] Finish rewriting existing parts [Eloi DEMOLIS] (2022-10-11)
  • 2b6706c ] Finish the lifetime of a session documentation [Eloi DEMOLIS] (2022-10-12)
  • 3af39a6 ] Update TLS cipher suites [Florentin Dubois] (2022-10-12)
  • 693bc84 ] Update rust edition to 2021 [Florentin Dubois] (2022-10-13)
  • 8f4449c ] Update command dependencies [Florentin Dubois] (2022-10-13)
  • e14109b ] Update rust edition to 2021 [Florentin Dubois] (2022-10-13)
  • 339ed21 ] Update rust edition to 2021 [Florentin Dubois] (2022-10-13)
  • f064d8b ] Update binary dependencies [Florentin Dubois] (2022-10-13)
  • 0e3fffe ] Fix a blocking clippy suggestion [Florentin Dubois] (2022-10-13)

🥹 Contributors

  • @Wonshtrum
  • @Keksoj
  • @FlorentinDUBOIS

Full Changelog: https://github.com/sozu-proxy/sozu/compare/v0.14.0...0.14.1

v0.14.0

1 year ago