Commit Graph

5325 Commits

Author SHA1 Message Date
Muki Kiboigo
0d0ad718a9 require timestamp passed in with cache request 2026-03-30 15:32:50 -07:00
Muki Kiboigo
094b8ed3e2 remove unused cache method on fs cache 2026-03-30 15:32:50 -07:00
Muki Kiboigo
b4eb058038 add basic fs cache get/put test 2026-03-30 15:32:50 -07:00
Muki Kiboigo
400d32b6b0 check age on fs cache get 2026-03-30 15:32:49 -07:00
Muki Kiboigo
a8f17000ff only store stuff when we know we will cache 2026-03-30 15:32:49 -07:00
Muki Kiboigo
c9a0f0011a shortcircuit a lot of caching checks 2026-03-30 15:32:49 -07:00
Muki Kiboigo
264538d911 ensure fs cache file is closed after use 2026-03-30 15:32:49 -07:00
Muki Kiboigo
59462779b8 use CacheRequest instead of key 2026-03-30 15:32:49 -07:00
Muki Kiboigo
eadfb83baa add striped lock to FsCache 2026-03-30 15:32:49 -07:00
Muki Kiboigo
74026421d4 use arena_pool for cache get 2026-03-30 15:32:49 -07:00
Muki Kiboigo
8a4aae406f use writer for fs cache body file 2026-03-30 15:32:48 -07:00
Muki Kiboigo
52310f9571 use json for fs cache metadata file 2026-03-30 15:32:48 -07:00
Muki Kiboigo
fefee36496 use sha256 instead of wyhash 2026-03-30 15:32:48 -07:00
Muki Kiboigo
026586fe1b store type_buf and sub_type_buf in Mime 2026-03-30 15:32:48 -07:00
Muki Kiboigo
75b3779a8c add more http caching rules 2026-03-30 15:32:48 -07:00
Muki Kiboigo
d52bff5bcc use CacheControl and Vary 2026-03-30 15:32:48 -07:00
Muki Kiboigo
881719cec3 cache headers along with response 2026-03-30 15:32:48 -07:00
Muki Kiboigo
9d51f23c3c add basic caching support 2026-03-30 15:32:47 -07:00
Muki Kiboigo
de08479654 create cache owned by the network struct 2026-03-30 15:32:47 -07:00
Muki Kiboigo
d555892f1e use enum approach instead of vtable 2026-03-30 15:32:47 -07:00
Muki Kiboigo
ac533c684e add basic FsCache impl 2026-03-30 15:32:47 -07:00
Muki Kiboigo
0de89a383d add CachedResponse variant to Response 2026-03-30 15:32:47 -07:00
Muki Kiboigo
604b9f270d add headerIterator to Http Response 2026-03-30 15:32:47 -07:00
Muki Kiboigo
2f97251a56 use Response instead of Transfer in callbacks 2026-03-30 15:32:45 -07:00
Muki Kiboigo
553732c1ea allow Mime parse to use []const u8 2026-03-30 15:25:33 -07:00
Muki Kiboigo
18c80dd9b4 add cache dir to configuration opts 2026-03-30 15:25:33 -07:00
Muki Kiboigo
de0989af17 create Cache interface file 2026-03-30 15:25:33 -07:00
Pierre Tachoire
47afdc003a Merge pull request #2044 from lightpanda-io/proxy-auth-challenge
Some checks failed
e2e-test / zig build release (push) Has been cancelled
e2e-test / demo-scripts (push) Has been cancelled
e2e-test / wba-demo-scripts (push) Has been cancelled
e2e-test / wba-test (push) Has been cancelled
e2e-test / cdp-and-hyperfine-bench (push) Has been cancelled
e2e-test / perf-fmt (push) Has been cancelled
e2e-test / browser fetch (push) Has been cancelled
zig-test / zig fmt (push) Has been cancelled
zig-test / zig test using v8 in debug mode (push) Has been cancelled
zig-test / zig test (push) Has been cancelled
zig-test / perf-fmt (push) Has been cancelled
http: add connect code into auth challenge detection
2026-03-30 17:18:56 +02:00
Pierre Tachoire
7606528b37 ci: fix request interception proxy challenge 2026-03-30 15:32:38 +02:00
Pierre Tachoire
9ca6bf42ae http: add connect headers to auth challenge detection 2026-03-30 15:17:12 +02:00
Pierre Tachoire
a272a2c314 http: add connect code into auth challenge detection 2026-03-30 15:08:36 +02:00
katie-lpd
cafa16d190 Update README.md
Updating benchmark text to fit the image
2026-03-30 13:38:46 +02:00
Pierre Tachoire
a5ed3cdaee Merge pull request #2042 from lightpanda-io/security.md
add SECURITY.md
2026-03-30 11:30:42 +02:00
Pierre Tachoire
b473f0e681 add SECURITY.md 2026-03-30 11:28:46 +02:00
Karl Seguin
be7226fc7b Merge pull request #2024 from lightpanda-io/finalizers
Some checks failed
e2e-test / zig build release (push) Has been cancelled
e2e-test / demo-scripts (push) Has been cancelled
e2e-test / wba-demo-scripts (push) Has been cancelled
e2e-test / wba-test (push) Has been cancelled
e2e-test / cdp-and-hyperfine-bench (push) Has been cancelled
e2e-test / perf-fmt (push) Has been cancelled
e2e-test / browser fetch (push) Has been cancelled
zig-test / zig fmt (push) Has been cancelled
zig-test / zig test using v8 in debug mode (push) Has been cancelled
zig-test / zig test (push) Has been cancelled
zig-test / perf-fmt (push) Has been cancelled
Rework finalizers
2026-03-30 17:03:08 +08:00
Karl Seguin
5cd356631c unregister before releasingRef to avoid potential use-after-free 2026-03-30 15:42:08 +08:00
Pierre Tachoire
8723ecdd2d Merge pull request #2028 from lightpanda-io/http_client_safe_kill
Protect transfer.kill() the way transfer.abort() is protected
2026-03-30 09:22:40 +02:00
Pierre Tachoire
451178558a Merge pull request #2026 from lightpanda-io/invalid_access_dom_exception
Add missing InvalidAccessError DOMException mapping
2026-03-30 09:21:51 +02:00
Karl Seguin
70dc0f6b95 Merge pull request #2027 from lightpanda-io/mcp-protocol-version
mcp: allow configuring protocol version
2026-03-30 13:38:06 +08:00
Adrià Arrufat
d99599fa21 zig fmt 2026-03-30 07:24:08 +02:00
Adrià Arrufat
20e62a5551 mcp: inline mcpVersion helper from Config 2026-03-30 07:13:45 +02:00
Adrià Arrufat
e083d4a3d1 Config: remove LIGHTPANDA_MCP_VERSION env var 2026-03-30 07:07:23 +02:00
Karl Seguin
7a23686cbd Merge pull request #2033 from lightpanda-io/canvas_context_cache
Canvas context cache
2026-03-30 12:27:04 +08:00
Karl Seguin
25889ff918 Improve canvas context caching
Improve https://github.com/lightpanda-io/browser/pull/2022 to also cache webgl
context and add tests.
2026-03-30 12:14:32 +08:00
Karl Seguin
b4e3f246ca Merge remote-tracking branch 'evan108108/fix/canvas-getcontext-caching' into canvas_context_cache 2026-03-30 11:58:45 +08:00
Karl Seguin
8eeeeda8c1 Merge pull request #2021 from evan108108/fix/navigator-spec-compliance
fix: navigator.languages should include base language per spec
2026-03-30 11:40:49 +08:00
Karl Seguin
75dc4d5b0e Merge pull request #2031 from lightpanda-io/cdp-add-script-to-evaluate-on-new-document
Cdp add script to evaluate on new document
2026-03-30 11:16:39 +08:00
Karl Seguin
0d40aed1b7 zig fmt 2026-03-30 09:32:22 +08:00
Karl Seguin
78cb766298 Log for unimplemented parameter
Wrap script_on_new_document execution in try/catch for better error reporting.

Improve test for script_on_new_document
2026-03-30 09:31:13 +08:00
Karl Seguin
f60e5cce6d Protect transfer.kill() the way transfer.abort() is protected
Transfer.abort() is protected from aborting the transfer while inside of a
libcurl callback (since libcurl doesn't support mutating the easy while inside
of a callback AND it causes issues in the zig code).

This applies similar logic to Transfer.kill() which is less likely to be called
but worse if it is called in a callback, as transfer.kill() deinit's the
transfer - something the callback caller is not expecting. Since killing isn't
safe to do, we flag the transfer as aborted AND null/noop all the callbacks.

Fixes WPT crash /content-security-policy/frame-src/frame-src-blocked-path-matching.sub.html
2026-03-29 19:48:47 +08:00