ladybird/Libraries
Timothy Flynn 9b8f6b8108 RequestServer: Issue a network request for failed cached responses
If transferring a cached response body fails for any reason, we will now
issue a network request instead of failing the request outright.

The catch here is that we will have already transferred the response
code and headers to the client, and potentially some of the body. So we
attempt to only request the remaining data over the network using a
range request. This feels a bit sketchy, but this is also how Chromium
behaves.

However, the server may or may not support range requests. If they do,
we can expect an HTTP 206 response with the bytes we need. If not, we
will receive an HTTP 200 (assuming the request succeeded), along with
the entire object's body. In this case, we also behave like Chromium,
and internally drop number of bytes we had already transferred.
2025-10-16 09:06:48 -04:00
..
LibCompress CMake: Rename serenity_* helper functions/macros to ladybird_* 2025-07-03 23:19:41 +02:00
LibCore LibCore: Add a system wrapper to pipe a file 2025-10-14 13:40:33 +02:00
LibCrypto Everywhere: Use Optional<T>::ensure() where useful 2025-09-17 12:01:18 -04:00
LibDatabase LibDatabase: Support all C++ integral types in SQL storage 2025-10-14 13:40:33 +02:00
LibDevTools LibDevTools: Don't assume computed layout values are strings 2025-09-26 22:31:24 +02:00
LibDiff CMake: Rename serenity_* helper functions/macros to ladybird_* 2025-07-03 23:19:41 +02:00
LibDNS LibDNS: Remove LibCore::DateTime dependency 2025-09-30 12:39:01 +02:00
LibFileSystem CMake: Rename serenity_* helper functions/macros to ladybird_* 2025-07-03 23:19:41 +02:00
LibGC LibGC: Mark Ptr::as_nonnull as a const function 2025-10-08 17:25:29 +02:00
LibGfx LibGfx: Correctly determine when to invert CMYK 2025-10-15 21:50:16 +02:00
LibHTTP CMake: Rename serenity_* helper functions/macros to ladybird_* 2025-07-03 23:19:41 +02:00
LibIDL LibIDL: Support extended attributes on namespace members 2025-09-11 17:06:44 +01:00
LibImageDecoderClient CMake: Rename serenity_* helper functions/macros to ladybird_* 2025-07-03 23:19:41 +02:00
LibIPC LibIPC: Shutdown IPC handler when transport is lost during sync event 2025-10-07 17:04:32 -05:00
LibJS LibJS: Micro-optimize ECMAScriptFunctionObject::internal_construct() 2025-10-16 10:47:10 +02:00
LibLine Everywhere: Slap some [[clang::lifetimebound]] where appropriate 2025-09-01 11:11:38 +02:00
LibMain Everywhere: Rename serenity_main to ladybird_main 2025-07-08 09:17:16 -04:00
LibMedia LibMedia: Support BT.470 System B/G color primaries 2025-10-16 05:12:29 -05:00
LibRegex LibRegex: Export OpCode/OpCode_Compare for REGEX_DEBUG builds 2025-09-18 11:02:13 +02:00
LibRequests RequestServer: Issue a network request for failed cached responses 2025-10-16 09:06:48 -04:00
LibSyntax Everywhere: Slap some [[clang::lifetimebound]] where appropriate 2025-09-01 11:11:38 +02:00
LibTest Everywhere: Use Optional<T>::ensure() where useful 2025-09-17 12:01:18 -04:00
LibTextCodec LibTextCodec: Enable EXPLICIT_SYMBOL_EXPORT 2025-08-23 16:04:36 -06:00
LibThreading LibThreading: Remove Weakable from Thread 2025-09-22 17:28:21 -05:00
LibTLS LibTLS: Use Windows-specific method to set default certificate store 2025-08-23 18:35:45 -06:00
LibUnicode LibUnicode: Query timezone from host config when cache is stale 2025-10-05 15:46:15 +02:00
LibURL LibURL: Add a few missing internal page factories 2025-09-18 07:27:24 -04:00
LibWasm LibWasm+LibWeb: Stub wasm-gc's heap reference types 2025-10-15 01:26:29 +02:00
LibWeb LibWeb: Dont load a style sheet's fonts until it has an owning document 2025-10-16 10:27:32 +01:00
LibWebSocket LibWeb: Make WebSocket closure adhere to spec for all ReadyStates 2025-08-18 09:35:47 -06:00
LibWebView LibWebView+RequestServer: Support clearing the HTTP disk cache 2025-10-14 13:40:33 +02:00
LibXML LibWeb+LibXML: Make Listener::set_source(ByteString) fallible 2025-10-02 02:25:28 +02:00
CMakeLists.txt LibDatabase+LibWebView: Extract our SQLite wrapper to its own library 2025-10-14 13:40:33 +02:00