Karl Seguin
c335a545a3
Merge pull request #1107 from lightpanda-io/mutation_observer_improvement
...
e2e-test / zig build release (push) Has been cancelled
e2e-test / demo-scripts (push) Has been cancelled
e2e-test / cdp-and-hyperfine-bench (push) Has been cancelled
e2e-test / perf-fmt (push) Has been cancelled
zig-test / zig build dev (push) Has been cancelled
zig-test / browser fetch (push) Has been cancelled
zig-test / zig test (push) Has been cancelled
zig-test / perf-fmt (push) Has been cancelled
nightly build / build-linux-x86_64 (push) Has been cancelled
nightly build / build-linux-aarch64 (push) Has been cancelled
nightly build / build-macos-aarch64 (push) Has been cancelled
nightly build / build-macos-x86_64 (push) Has been cancelled
wpt / web platform tests json output (push) Has been cancelled
wpt / perf-fmt (push) Has been cancelled
Use correct 'this' on MutationObserver callback
2025-10-01 08:44:07 +08:00
Karl Seguin
5bcccec610
Merge pull request #1103 from lightpanda-io/text_decode_view
...
Text decode view
2025-10-01 08:42:54 +08:00
Karl Seguin
20ae9c3a53
fix dep link
2025-09-30 21:41:08 +08:00
Karl Seguin
92ca7c5a4b
update zig-v8-form
2025-09-30 19:47:41 +08:00
Karl Seguin
37fa41b4a2
fix buffer ranges
2025-09-30 19:47:41 +08:00
Karl Seguin
298f959e13
Add broken TextDecoder test that should pass
2025-09-30 19:47:26 +08:00
Karl Seguin
1cb431f204
Better support for Uint8Array in ReadableStream
...
There's always going to be ambiguity between a string and a Uint8Array. We
already had TypedArray(u8) as a discriminator when _returning_ values. But now
the type is also used by mapping JS values to Zig. To support this efficiently
when probing the union, the typed array mapping logic was extracted into its
own function (so that it can be used by the probe).
2025-09-30 19:47:22 +08:00
Karl Seguin
74dc7b278b
Merge pull request #1105 from lightpanda-io/fix_bad_window_test
...
e2e-test / zig build release (push) Has been cancelled
e2e-test / demo-scripts (push) Has been cancelled
e2e-test / cdp-and-hyperfine-bench (push) Has been cancelled
e2e-test / perf-fmt (push) Has been cancelled
zig-test / zig build dev (push) Has been cancelled
zig-test / browser fetch (push) Has been cancelled
zig-test / zig test (push) Has been cancelled
zig-test / perf-fmt (push) Has been cancelled
fix typo and wrong API in window test
2025-09-30 19:44:10 +08:00
Karl Seguin
b47d8a794c
Use correct 'this' on MutationObserver callback
...
Add support for MutationObserver.disconnect
2025-09-30 19:36:06 +08:00
Halil Durak
eaf845959c
Merge pull request #1106 from lightpanda-io/nikneym/window-onload-fix
...
Don't allow object to be set on `window.onload`
2025-09-30 14:12:01 +03:00
Karl Seguin
651521d346
Merge pull request #1102 from lightpanda-io/readable_stream_uint8array
...
Better support for Uint8Array in ReadableStream
2025-09-30 19:03:46 +08:00
nikneym
fb37b29671
don't allow object to be set on window.onload
2025-09-30 12:38:08 +03:00
Karl Seguin
2ecf9016ba
Better support for Uint8Array in ReadableStream
...
There's always going to be ambiguity between a string and a Uint8Array. We
already had TypedArray(u8) as a discriminator when _returning_ values. But now
the type is also used by mapping JS values to Zig. To support this efficiently
when probing the union, the typed array mapping logic was extracted into its
own function (so that it can be used by the probe).
2025-09-30 16:32:55 +08:00
Karl Seguin
444b08be32
fix typo and wrong API in window test
2025-09-30 16:28:47 +08:00
Karl Seguin
2b84712eee
Add Session.fetchWait so that 'fetch' mode will follow navigation
2025-09-30 13:36:05 +08:00
Karl Seguin
20cb6cdd8b
Merge pull request #1091 from lightpanda-io/concurrent_blocking_imports
...
e2e-test / zig build release (push) Has been cancelled
e2e-test / demo-scripts (push) Has been cancelled
e2e-test / cdp-and-hyperfine-bench (push) Has been cancelled
e2e-test / perf-fmt (push) Has been cancelled
zig-test / zig build dev (push) Has been cancelled
zig-test / browser fetch (push) Has been cancelled
zig-test / zig test (push) Has been cancelled
zig-test / perf-fmt (push) Has been cancelled
Concurrent blocking imports
2025-09-30 12:30:42 +08:00
Karl Seguin
477a5e5338
Merge pull request #1088 from lightpanda-io/nonblocking_dynamic_imports
...
nonblocking dynamic imports
2025-09-30 12:30:31 +08:00
Karl Seguin
2a151229cb
Merge pull request #1101 from lightpanda-io/nikneym/window-onload
...
Add `window.onload` getter and setter
2025-09-30 09:15:40 +08:00
nikneym
1d50e091c7
add window.onload test
2025-09-29 14:45:47 +03:00
nikneym
c587e380a0
add window.onload getter and setter
2025-09-29 14:45:35 +03:00
Karl Seguin
54f9bfba84
Merge pull request #1099 from lightpanda-io/nikneym/qol-changes
...
e2e-test / zig build release (push) Has been cancelled
e2e-test / demo-scripts (push) Has been cancelled
e2e-test / cdp-and-hyperfine-bench (push) Has been cancelled
e2e-test / perf-fmt (push) Has been cancelled
zig-test / zig build dev (push) Has been cancelled
zig-test / browser fetch (push) Has been cancelled
zig-test / zig test (push) Has been cancelled
zig-test / perf-fmt (push) Has been cancelled
nightly build / build-linux-x86_64 (push) Has been cancelled
nightly build / build-linux-aarch64 (push) Has been cancelled
nightly build / build-macos-aarch64 (push) Has been cancelled
nightly build / build-macos-x86_64 (push) Has been cancelled
wpt / web platform tests json output (push) Has been cancelled
wpt / perf-fmt (push) Has been cancelled
Small changes
2025-09-29 17:39:32 +08:00
Karl Seguin
489ba131c5
Merge pull request #1097 from lightpanda-io/check_visibility_opts
...
e2e-test / zig build release (push) Has been cancelled
e2e-test / demo-scripts (push) Has been cancelled
e2e-test / cdp-and-hyperfine-bench (push) Has been cancelled
e2e-test / perf-fmt (push) Has been cancelled
zig-test / zig build dev (push) Has been cancelled
zig-test / browser fetch (push) Has been cancelled
zig-test / zig test (push) Has been cancelled
zig-test / perf-fmt (push) Has been cancelled
add missing checkVisibility options
2025-09-29 15:18:10 +08:00
Karl Seguin
5eac1a146f
Merge pull request #1098 from lightpanda-io/html_collection_indexed_accessor
...
Replace HTMLCollection postAttach's with indexed/named getter
2025-09-29 15:17:57 +08:00
Karl Seguin
d7ce6bdeff
Replace HTMLCollection postAttach's with indexed/named getter
...
This solves two issues. First, it's more correct, the indexers should be live.
Second, it makes sure that anything with an HTMLCollection prototype, like
HTMLOptionsCollection, also gets access to the index getters.
We could solve the 2nd issue by making `postAttach` work up the prototype
chain, but since postAttach is wrong (not live), I prefer this solution.
2025-09-29 14:03:59 +08:00
Karl Seguin
e88473d090
add missing checkVisibility options
2025-09-29 12:04:11 +08:00
nikneym
b9024ab032
set_innerHTML: simpler iteration
2025-09-26 15:38:23 +03:00
nikneym
98906be0f6
parseData: remove iterator variant
2025-09-26 15:38:22 +03:00
Pierre Tachoire
220775715d
Merge pull request #1094 from lightpanda-io/wpt-debug
...
e2e-test / zig build release (push) Has been cancelled
zig-test / zig build dev (push) Has been cancelled
zig-test / zig test (push) Has been cancelled
e2e-test / demo-scripts (push) Has been cancelled
e2e-test / cdp-and-hyperfine-bench (push) Has been cancelled
e2e-test / perf-fmt (push) Has been cancelled
zig-test / browser fetch (push) Has been cancelled
zig-test / perf-fmt (push) Has been cancelled
nightly build / build-linux-x86_64 (push) Has been cancelled
nightly build / build-linux-aarch64 (push) Has been cancelled
nightly build / build-macos-aarch64 (push) Has been cancelled
nightly build / build-macos-x86_64 (push) Has been cancelled
wpt / web platform tests json output (push) Has been cancelled
wpt / perf-fmt (push) Has been cancelled
ci: use debug mode for WPT tests
2025-09-26 13:54:17 +02:00
Pierre Tachoire
ecbf52157b
ci: use debug mode for WPT tests
2025-09-26 13:33:13 +02:00
Pierre Tachoire
a579977f66
Merge pull request #1086 from lightpanda-io/history
...
Implement `History` WebAPI.
2025-09-26 12:15:07 +02:00
Karl Seguin
418dc6fdc2
Start downloading all synchronous imports ASAP
...
This changes how non-async module loading works. In general, module loading
is triggered by a v8 callback. We ask it to process a module (a <script type=
module>) and then for every module that it depends on, we get a callback. This
callback expects the nested v8.Module instance, so we need to load it then and
there (as opposed to dynamic imports, where we only have to return a promise).
Previously, we solved this by issuing a blocking HTTP get in each callback. The
HTTP loop was able to continuing downloading already-queued resources, but if
a module depended on 20 nested modules, we'd issue 20 blocking gets one after
the other.
Once a module is compiled, we can ask v8 for a list of its dependent module. We
can them immediately start to download all of those modules. We then evaluate
the original module, which will trigger our callback. At this point, we still
need to block and wait for the response, but we've already started the download
and it's much faster. Sure, for the first module, we might need to wait the same
amount of time, but for the other 19, chances are by the time the callback
executes, we already have it downloaded and ready.
2025-09-26 15:38:50 +08:00
Karl Seguin
2aa4b03673
try to cleanup persisted references
2025-09-26 15:34:32 +08:00
Karl Seguin
f236a65a79
Merge pull request #1092 from lightpanda-io/nikneym/insert-adjacent-html
...
e2e-test / zig build release (push) Has been cancelled
e2e-test / demo-scripts (push) Has been cancelled
e2e-test / cdp-and-hyperfine-bench (push) Has been cancelled
e2e-test / perf-fmt (push) Has been cancelled
zig-test / zig build dev (push) Has been cancelled
zig-test / browser fetch (push) Has been cancelled
zig-test / zig test (push) Has been cancelled
zig-test / perf-fmt (push) Has been cancelled
Support `Element#insertAdjacentHTML`
2025-09-26 14:51:08 +08:00
nikneym
f7b08a1160
prefer orelse return instead of orelse unreachable
2025-09-26 09:43:30 +03:00
Karl Seguin
eed10dd1bb
Apply suggestions from code review
...
fix typos
Co-authored-by: Pierre Tachoire <pierre@lightpanda.io >
2025-09-26 10:37:31 +08:00
Muki Kiboigo
9992bd0999
clean up history api
2025-09-25 12:33:30 -07:00
nikneym
6912175e7e
prefer $ instead of document.querySelector
2025-09-25 19:30:10 +03:00
nikneym
a59c32757e
assert that nodes exist
2025-09-25 19:29:44 +03:00
nikneym
2438a0e60b
fix comment
2025-09-25 19:17:08 +03:00
nikneym
a850a902ce
make sure parent is not Document in beforebegin and afterend
2025-09-25 15:04:26 +03:00
nikneym
b7ba993ba6
improve insertAdjacentHTML test
2025-09-25 14:42:58 +03:00
nikneym
3eb0d57d5b
correct element insertation in insertAdjacentHTML
...
* also DRY since the loop is repeated multiple times.
2025-09-25 14:41:50 +03:00
Karl Seguin
6bf2ff9168
Protect against context changing during module resolution.
2025-09-25 13:39:02 +08:00
Karl Seguin
92226a8d06
Merge pull request #1090 from lightpanda-io/script_data_url_test
...
e2e-test / zig build release (push) Has been cancelled
e2e-test / demo-scripts (push) Has been cancelled
e2e-test / cdp-and-hyperfine-bench (push) Has been cancelled
e2e-test / perf-fmt (push) Has been cancelled
zig-test / zig build dev (push) Has been cancelled
zig-test / browser fetch (push) Has been cancelled
zig-test / zig test (push) Has been cancelled
zig-test / perf-fmt (push) Has been cancelled
nightly build / build-linux-x86_64 (push) Has been cancelled
nightly build / build-linux-aarch64 (push) Has been cancelled
nightly build / build-macos-aarch64 (push) Has been cancelled
nightly build / build-macos-x86_64 (push) Has been cancelled
wpt / web platform tests json output (push) Has been cancelled
wpt / perf-fmt (push) Has been cancelled
add script dataurl test
2025-09-25 10:15:47 +08:00
Karl Seguin
134424dfdc
add script dataurl test
2025-09-25 08:18:59 +08:00
Karl Seguin
58ceb66452
Merge pull request #1089 from lightpanda-io/fix-datauri
...
fix data uri scripts
2025-09-25 08:15:36 +08:00
nikneym
902b8fc789
add insertAdjacentHTML test
2025-09-24 20:26:05 +03:00
nikneym
923491a510
make ref_node of nodeInsertBefore nullable
2025-09-24 20:21:48 +03:00
nikneym
255b45d07b
initial insertAdjacentHTML attempt
2025-09-24 20:21:08 +03:00
Pierre Tachoire
8f68b5b289
fix data uri scripts
2025-09-24 17:29:23 +02:00