Commit graph

188 commits

Author SHA1 Message Date
Yuchen Wu
cc32316980 Allow response body to be modified. 2024-04-05 11:46:20 -07:00
Andrew Hauck
5bb90dcd67 Add example that routes to LB cluster based on request uri 2024-04-05 11:46:20 -07:00
Andrew Hauck
6a8196ba64 Use escape_default() and limit the buffer size for InvalidHTTPHeader errors when reading requests 2024-04-05 11:46:20 -07:00
pluveto
59a9f93bd6 tests(cache): add tests for purge method
Replicated-from: https://github.com/cloudflare/pingora/pull/18
Includes-commit: e5a3865e9d
Includes-commit: f4af9ad3a5
Includes-commit: bbfb1eb5ba
Includes-commit: f74cf9f82a
2024-04-05 11:46:20 -07:00
Matthew (mbg)
5fdf287c4d
dev: add dockerfile for local dev (#172)
There have been some comments about wanting an easier developer
experience, particularly on MacOS. This adds a Dockerfile which will
create an environment in which all tests can pass and will hopefully
make cross-platform development easier.

Solves #91
2024-03-29 11:08:34 -07:00
Gideon Tong
07f6854021
Fix typo in yaml file (#173) 2024-03-29 10:53:50 -07:00
Gideon Tong
6fbd360805 Add mark stale GitHub Action 2024-03-29 16:11:45 +00:00
Kevin Guthrie
0de54eb907 Refactoring external change to address code-review comments 2024-03-22 15:00:53 -07:00
gengteng
247ce6c4b0 feat: implement Keep-Alive header parsing in Session
Replicated-from: https://github.com/cloudflare/pingora/pull/24
Includes-commit: 357c1b95d9
2024-03-22 15:00:53 -07:00
Alexandre Antonio Juca
adba11a07a Fix typos and grammar issues
Update comment

Co-authored-by: Kevin Guthrie <kevin.guthrie@gmail.com>
Includes-commit: 61a55ae3fa
Includes-commit: 7da3e13d84
Replicated-from: https://github.com/cloudflare/pingora/pull/128
2024-03-22 15:00:42 -07:00
ewang
ff381fc3eb Require nix ~0.24.3 and chrono ~0.4.31 in Cargo.toml
These minor versions are required for the APIs used in pingora-core.
2024-03-22 15:00:42 -07:00
Yuchen Wu
f431624701 Correctly init body writer for upgraded requests
Before this change, the code tried to get the header from the stored
header which is only set after this function is called.
2024-03-22 15:00:42 -07:00
Yuchen Wu
2bfaf5b821 TinyUFO: add quick_cache for benchmarks
Add more cache crates to compare with.

Co-authored-by: Arthur Silva <arthurprs@gmail.com>
2024-03-22 15:00:29 -07:00
gengteng
558371c190 feat: Enhance Server::new to accept impl Into<Option<T>> for ergonomics
Replicated-from: https://github.com/cloudflare/pingora/pull/100
Includes-commit: 15cffed202
2024-03-22 14:26:16 -07:00
Yuchen Wu
ab86012c66 TinyUFO: add the option to use sharded skip list for storage
This option makes it more memory efficient but a bit slower.
2024-03-22 14:26:16 -07:00
zaidoon
b9d4428809 modernize ci 2024-03-22 10:50:10 -07:00
battmdpkq
8a84b24ad0 fix some comments
Signed-off-by: battmdpkq <cmaker@163.com>
Replicated-from: https://github.com/cloudflare/pingora/pull/123
Includes-commit: 943bedb281
2024-03-15 14:37:56 -07:00
Shane Utt
8963575ed2 chore: resolve TODOs in the pingora client example
Signed-off-by: Shane Utt <shaneutt@linux.com>
Replicated-from: https://github.com/cloudflare/pingora/pull/9
Includes-commit: 5833556e5f
2024-03-15 14:37:56 -07:00
ewang
20fd391f3e Add server_addr and client_addr to Session 2024-03-15 14:37:56 -07:00
Andrew Hauck
3e09114c4d Treat OS read timeouts as ReadError rather than ReadTimeout when reading http/1.1 response headers 2024-03-15 14:37:56 -07:00
Kevin Guthrie
d2c8118ef4 Adding bleeper config file to internal repo 2024-03-15 14:37:56 -07:00
Matthew Gumport
ae8ea771b1 compile and test cleanly with nightly
The vast majority of these are redundant imports.
2024-03-15 14:37:56 -07:00
afon
81e6adea4d Unify the type for matching verify_result 2024-03-15 14:37:56 -07:00
Andrew Hauck
d19ae74563 Revert "Fix verify_result() in ssl client for boringssl"
This reverts commit 9f410d52221da26c0651a99d071daf9b7acf87a2.
2024-03-15 14:37:56 -07:00
Andrew Hauck
a39694899f Fix SslMethod reference in connectors tests for boringssl 2024-03-15 14:37:56 -07:00
Andrew Hauck
8e994c396e Fix verify_result() in ssl client for boringssl
Co-authored-by: afon <wengxufeng@gmail.com>
2024-03-15 14:37:56 -07:00
Andrew Hauck
dec624b1c7 Ensure consistent usage of doc.rs links in rustdoc comments
Co-authored-by: zegevlier <iamascratcher@gmail.com>
2024-03-15 14:37:56 -07:00
Andrew Hauck
36e09ca389
Synchronize internally merged commits (#124)
Co-authored-by: Kevin Guthrie <kevinbartlett@cloudflare.com>
2024-03-08 15:10:18 -08:00
Edward Wang
9308bec790
Update contributing guide with PR and rebase process (#108) 2024-03-04 09:53:05 -08:00
Matthew (mbg)
45791f6345
ci: we don't like dependabot (#86) 2024-03-01 16:43:50 -08:00
Matthew (mbg)
c523748c3e
ci: add github workflows (#3)
Add CI workflows for docs, compile, test, and audit. Dependabot also
included.
2024-03-01 15:43:49 -08:00
ewang
8dc94d6cc4 More minor comment fixes and improvements 2024-03-01 13:47:27 -08:00
Yuchen Wu
8160ad1698 Fix typos and grammar issues
Co-authored-by: =?~~~?q?Ren=C3=A9=20Kla=C4=8Dan?= <rene@klacan.sk>
Co-authored-by: 12932 <68835423+12932@users.noreply.github.com>
Co-authored-by: Alessandro <aleferrara1998@gmail.com>
Co-authored-by: InImpasse <40639475+InImpasse@users.noreply.github.com>
Co-authored-by: Paul James Cleary <pauljamescleary@gmail.com>
Co-authored-by: Yang Hau <yuanyanghau@gmail.com>
Co-authored-by: Morpheus <40785143+Muzych@users.noreply.github.com>
Co-authored-by: mobeicanyue <81098819+mobeicanyue@users.noreply.github.com>
Co-authored-by: Twacqwq <69360546+Twacqwq@users.noreply.github.com>
Co-authored-by: Bobby <zkd8907@live.com>
Co-authored-by: Dup4 <lyuzhi.pan@gmail.com>
Co-authored-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
Co-authored-by: Sheldon <1415182877@qq.com>
Co-authored-by: houseme <housemecn@gmail.com>
Co-authored-by: ZhangIvan1 <zhang_ivan1@163.com>
Co-authored-by: GrahamQuan <33834833+GrahamQuan@users.noreply.github.com>
Co-authored-by: =?~~~?q?Cristian=20Paul=20Pe=C3=B1aranda=20Rojas?= <paul@kristianpaul.org>
Co-authored-by: Nathan Sit <nsit.earth@gmail.com>
Co-authored-by: David Lee <67067729+LordMoMA@users.noreply.github.com>
Co-authored-by: Mengliang Su <mengliang.su@shopee.com>
Co-authored-by: =?~~~?q?=EA=B9=80=EC=84=A0=EC=9A=B0?= <seonwoo960000@toss.im>
Co-authored-by: Allen Huang <huangseji@meituan.com>
Co-authored-by: Opacity <70315161+zreren@users.noreply.github.com>
Co-authored-by: cris <sqdcmk@gmail.com>
Co-authored-by: Killian Ye <40255385+ykw1129@users.noreply.github.com>
Co-authored-by: Jiwei-dev <hi.jiwei@gmail.com>
Co-authored-by: Jinfeng Wang <41931794+wjf40390@users.noreply.github.com>
Co-authored-by: Ikko Eltociear Ashimine <eltociear@gmail.com>
2024-03-01 13:47:27 -08:00
ewang
e811382224 Run upstream_response_filter on 304 from upstream cache revalidation
Previously only the response_filter would run on revalidated responses
with no way to process the upstream 304.
Also avoid passing through upstream 304 on revalidate
response_cache_filter errors and instead serve from cache. This
simplifies this edge case because it saves us from needing to check
whether the upstream header filter already ran on the 304 later.
2024-03-01 13:47:27 -08:00
Andrew Hauck
fa0ee75740 Sort unstable when building Ketama ring 2024-03-01 13:47:27 -08:00
Yuchen Wu
dd54b59d38 Fix TinyUFO ahash in nightly Rust
I think ahash has this bug where the hash of &u64 and u64 are different
under nightly build. This works around that.
2024-03-01 13:47:27 -08:00
Yuchen Wu
8797329225 Release Pingora version 0.1.0
Co-authored-by: Andrew Hauck <ahauck@cloudflare.com>
Co-authored-by: Edward Wang <ewang@cloudflare.com>
2024-02-27 20:25:44 -08:00
Yuchen Wu
0bca116c10 Pingora-limits initial commit 2023-05-08 10:33:45 -07:00