53 Commits

Author SHA1 Message Date
Karl Seguin
9845392b71 Simplify filter and try to make it work with progressive build info 2025-10-18 11:18:50 +08:00
Karl Seguin
0795b7a583 Filter out the huge compile command when using make test
I couldn't figure out how (or if it's possible) to do this with build.zig
2025-10-18 08:14:07 +08:00
Pierre Tachoire
3b51ca3947 make: download libiconv from GH fork 2025-09-15 08:59:30 +02:00
Pierre Tachoire
62a2d08b53 ci: cache libiconv 2025-09-15 08:43:48 +02:00
sjorsdonkers
7da83d2259 fix makebuilddev 2025-06-03 16:25:35 +02:00
Karl Seguin
72a983f6d8 Apply suggestions from code review
Co-authored-by: Pierre Tachoire <pierre@lightpanda.io>
2025-05-22 15:36:55 +08:00
Karl Seguin
a720333c0f Add debug log level to make build-dev and add new make run-debug
Update WPT submodule, now includes xhr/formdata tests.
2025-05-22 15:28:07 +08:00
Karl Seguin
ca3fa3dc40 Rework WPT runner (#589)
Some checks failed
e2e-test / zig build release (push) Has been cancelled
e2e-test / puppeteer-perf (push) Has been cancelled
e2e-test / demo-scripts (push) Has been cancelled
wpt / web platform tests (push) Has been cancelled
wpt / web platform tests json output (push) Has been cancelled
wpt / 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
* Rework WPT runner

We have no crashing tests, remove safe mode. Allows better re-use of arenas,
and if we do introduce a crash, it won't be easy to ignore. Could allow for
re-using the environment across tests to further improve performance.

Remove console now that we have a working console api.

* Update workflows, add summary

Remove --safe option from WPT workflows (it's no longer valid)

Include a total test/case summary when --summary or --text (default) is used.

* remove wpt --safe flag from Makefile

* handle tests in the root of the test folder

* Fix a couple possible segfaults base on strange usage (WPT stuff)

* generate proper JSON

* generate proper JSON (for real this time?)

* fix tag type check
2025-05-03 07:53:02 +08:00
Pierre Tachoire
b62faef520 make: add end2end target 2025-04-17 17:41:29 +02:00
Karl Seguin
f6c43eaf9c Fix dockerfile (hopefully)
Add dummy --json stats output to tests

Comment typos fixed

Add make get-v8, build-v8 and build-v8-dev make targets
2025-04-15 15:18:06 +08:00
Karl Seguin
cda6f89dba work on fixing github workflows 2025-04-15 15:18:06 +08:00
Karl Seguin
b8d7744563 replace zig-js-runtime 2025-04-15 15:18:04 +08:00
Pierre Tachoire
e79cd58c8f ci: add macos x86_64 nightly build 2025-03-19 17:12:10 +01:00
Pierre Tachoire
c5397bfbe2 Merge pull request #448 from karlseguin/set_cookie
Some checks failed
e2e-test / zig build release (push) Has been cancelled
wpt / web platform tests (push) Has been cancelled
zig-test / zig build dev (push) Has been cancelled
zig-test / zig test (push) Has been cancelled
e2e-test / puppeteer (push) Has been cancelled
wpt / perf-fmt (push) Has been cancelled
zig-test / perf-fmt (push) Has been cancelled
Add Set-Cookie parsing
2025-03-04 13:20:33 +01:00
Karl Seguin
6f5028612a add cookie jar 2025-02-27 16:09:10 +08:00
Karl Seguin
d0ba06c44b Add git_commit to build and build-dev target
Add "version" command to cli.
2025-02-26 20:44:44 +08:00
Karl Seguin
6d6b840cf6 Use $(ZIG) variable when building netsurf 2025-02-20 08:42:45 +08:00
Karl Seguin
2c4661a250 Add a new unittest build step
Preserves all existing behavior (i.e. make test and zig build test are not
changed in any way).

The new 'unittest' only runs unit tests and is fast to build. It takes ~1.7 to
build unittest, vs ~11.09 to build test. This is really the main goal, and
hopefully any unit test which are (a) fast and (b) don't impact build times
will be run here.

The test runner is based on:
https://gist.github.com/karlseguin/c6bea5b35e4e8d26af6f81c22cb5d76b

It allow filtering, i.e. `make unittest F="parse query dup"`.

'unittest' does memory leak detection when tests use std.testing.allocator.

Fixed a memory leak in url/query which was detected/reported with by the new
'unittest'.

In order to avoid having 3 src/test_xyx.zig files, I merged the existing
test_runner.zig and run_tests.zig into a single main_tests.zig. (this change
is superfluous, but I thought it was cleaner this way. Happy to revert this).
2025-02-09 11:04:21 +08:00
Lucien Coffe
88e32505a3 fix Makefile download-zig: url changed 2024-11-22 18:50:11 +01:00
Francis Bouvier
2a2486cbe0 build: fix clean-libiconv
Signed-off-by: Francis Bouvier <francis@lightpanda.io>
2024-10-30 13:41:34 +01:00
Francis Bouvier
b9e2be2052 build: support multi os/arch conf for netsurf
Signed-off-by: Francis Bouvier <francis@lightpanda.io>
2024-10-29 20:06:29 +01:00
Francis Bouvier
be5d7022cc build: support multi os/arch conf for libiconv
Signed-off-by: Francis Bouvier <francis@lightpanda.io>
2024-10-28 21:08:46 +01:00
Francis Bouvier
d1951b286c build: support multi os/arch conf for mimalloc
Signed-off-by: Francis Bouvier <francis@lightpanda.io>
2024-10-28 16:06:41 +01:00
Francis Bouvier
46d0aa6f9e Remove all references to the name 'browsercore'
Signed-off-by: Francis Bouvier <francis@lightpanda.io>
2024-10-29 22:16:56 +01:00
Francis Bouvier
0636240a58 Update README
Signed-off-by: Francis Bouvier <francis@lightpanda.io>
2024-05-15 18:10:05 +02:00
Francis Bouvier
986e69f45d Update dependancy jsruntime-lib -> zig-js-runtime
Signed-off-by: Francis Bouvier <francis@lightpanda.io>
2024-05-14 11:35:23 +02:00
Pierre Tachoire
53a5326248 mimalloc: avoid mimalloc override
By default mimalloc is built to override default allocation functions.
So it is used also by v8.

This change avoid the mimalloc override to keep the native stdlib
functions.
2024-04-19 11:47:03 +02:00
Pierre Tachoire
59b2954ff4 deps: add mimalloc dependency 2024-04-19 11:46:41 +02:00
Pierre Tachoire
52d3f3e966 deps: remove lexbor 2024-03-28 11:13:17 +01:00
Pierre Tachoire
006aea25b8 wpt: fix normal output 2024-01-03 09:56:56 +01:00
Pierre Tachoire
2643366639 make: use safe mode w/ wpt 2023-12-04 17:55:52 +01:00
Pierre Tachoire
6806c151a3 make: add download-zig target 2023-12-04 12:18:49 +01:00
Pierre Tachoire
db8747d1f2 make: add install-netsurf-dev
Build netsurf in debug mode
2023-11-22 17:17:51 +01:00
Pierre Tachoire
ad58e536ed makefile: remove useless var 2023-11-14 11:36:33 +01:00
Pierre Tachoire
bf0af2c036 wpt: accept test name argument 2023-10-11 10:48:11 +02:00
Pierre Tachoire
22b9b1841c wpt: rename file into main and create make wpt 2023-10-11 09:35:52 +02:00
Pierre Tachoire
a7933083bd make: add NDEBUG option to netsurf build
In order to remove the debug output from the parser.
2023-10-10 17:53:09 +02:00
Pierre Tachoire
59b5e0a583 netsurf: use zigg cc to compile statically libdom example 2023-09-25 09:56:32 +02:00
Pierre Tachoire
d7fec31b8a build libiconv from sources 2023-09-22 16:10:22 +02:00
Francis Bouvier
ef1ce6e8c2 Makefile: add clean-netsurf and test-netsurf
Signed-off-by: Francis Bouvier <francis.bouvier@gmail.com>
2023-09-20 22:44:02 +02:00
Francis Bouvier
1f61eaff9d Makefile: use make install for install-netsurf
Signed-off-by: Francis Bouvier <francis.bouvier@gmail.com>
2023-09-20 22:42:06 +02:00
Francis Bouvier
d6027b238b build: link netsurf
Signed-off-by: Francis Bouvier <francis.bouvier@gmail.com>
2023-09-07 16:51:29 +02:00
Francis Bouvier
97348cef5c Add netsurf submodules
Signed-off-by: Francis Bouvier <francis.bouvier@gmail.com>
2023-09-06 17:51:43 +02:00
Francis Bouvier
d38f59d631 Makefile: add install-netsurf
Signed-off-by: Francis Bouvier <francis.bouvier@gmail.com>
2023-09-06 17:28:09 +02:00
Pierre Tachoire
e5c7a57946 make: use zig variable 2023-09-19 17:28:52 +02:00
Pierre Tachoire
cda5b2029f make: build lexbor the way commented in build.zig 2023-09-01 17:29:31 +02:00
Pierre Tachoire
3bfefcb047 vendor: seperate lexbor source from build
* add `vendor/lexbor-src` submodule
* build lexbor static lib into `vendor/lexbor`
2023-09-01 16:00:27 +02:00
Pierre Tachoire
999e1747bb make: improve lexbor build options 2023-09-01 16:00:27 +02:00
Pierre Tachoire
4124b6e4c0 readme: add install instructions 2023-09-01 16:00:26 +02:00
Francis Bouvier
fa0b8b8671 Merge pull request #3 from francisbouvier/fix-make-help
make: fix help w/ linux
2023-08-30 17:09:05 +02:00