Commit graph

615 commits

Author SHA1 Message Date
Timothy Flynn
93712b24bf Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
Timothy Flynn
22e0eeada2 Everywhere: Hoist the Services folder to the top-level 2024-11-10 12:50:45 +01:00
sideshowbarker
98b223b9df Docs: Beef up the FAQ 2024-11-09 11:07:55 -07:00
Andrew Kaster
f4124c7f40 CI+DevContainer+Documentation: Remove install steps for ffmpeg libs 2024-11-08 11:10:31 -07:00
sideshowbarker
96ded779e2 Docs: Recommend “Web Browser Engineering” book in GettingStarted guide
Some checks are pending
CI / Lagom (false, FUZZ, ubuntu-24.04, Linux, Clang) (push) Waiting to run
CI / Lagom (false, NO_FUZZ, macos-14, macOS, Clang) (push) Waiting to run
CI / Lagom (false, NO_FUZZ, ubuntu-24.04, Linux, GNU) (push) Waiting to run
CI / Lagom (true, NO_FUZZ, ubuntu-24.04, Linux, Clang) (push) Waiting to run
Package the js repl as a binary artifact / build-and-package (macos-14, macOS, macOS-universal2) (push) Waiting to run
Package the js repl as a binary artifact / build-and-package (ubuntu-24.04, Linux, Linux-x86_64) (push) Waiting to run
Run test262 and test-wasm / run_and_update_results (push) Waiting to run
Lint Code / lint (push) Waiting to run
Push notes / build (push) Waiting to run
2024-11-07 15:39:31 +01:00
Timothy Flynn
5681dbee64 Meta: Move the vcpkg installation/cache directories under Build
In addition to changing the build-type dependent build directories, we
can take this opportunity to move the vcpkg cache directory to the Build
folder itself. This probably isn't 100% needed, but it ensures that no
leftover artifacts are used from non-dynamic vcpkg builds, and it's also
generally nice to have all build artifacts under Build.
2024-11-06 10:38:57 -07:00
Timothy Flynn
4ffca2089e Meta: Change the default build directories to exclude "ladybird" prefix
The reason for this change is that CMake/vcpkg are unable to detect a
change to VCPKG_LIBRARY_LINKAGE. So when we switch to dynamic builds,
the switch would be non-functional, and every developer would have to
remove their Build and vcpkg cache directories manually. By changing
these directories, vcpkg is able to detect it must rebuild.
2024-11-06 10:38:57 -07:00
Sam Atkins
7a5b38d577 Meta: Support importing WPT reference tests 2024-11-05 17:58:16 +00:00
Sam Atkins
b7efb61fbe Tests/LibWeb: Restructure Ref and Screenshot test dirs to match others
Some checks are pending
CI / Lagom (false, FUZZ, ubuntu-24.04, Linux, Clang) (push) Waiting to run
CI / Lagom (false, NO_FUZZ, macos-14, macOS, Clang) (push) Waiting to run
CI / Lagom (false, NO_FUZZ, ubuntu-24.04, Linux, GNU) (push) Waiting to run
CI / Lagom (true, NO_FUZZ, ubuntu-24.04, Linux, Clang) (push) Waiting to run
Package the js repl as a binary artifact / build-and-package (macos-14, macOS, macOS-universal2) (push) Waiting to run
Package the js repl as a binary artifact / build-and-package (ubuntu-24.04, Linux, Linux-x86_64) (push) Waiting to run
Run test262 and test-wasm / run_and_update_results (push) Waiting to run
Lint Code / lint (push) Waiting to run
Push notes / build (push) Waiting to run
Now each test type has the same directories:
- input
- expected
- data

Also, tests can be in subdirectories within ./input.
2024-11-05 14:02:07 +00:00
sideshowbarker
21b705ee32 Documentation: Explain how to import tests using the WPT.sh script 2024-11-05 10:38:52 +01:00
Kostya Farber
aeab342fd7 Documentation: Add VSCode debugger instructions
Some checks are pending
CI / Lagom (false, FUZZ, ubuntu-24.04, Linux, Clang) (push) Waiting to run
CI / Lagom (false, NO_FUZZ, macos-14, macOS, Clang) (push) Waiting to run
CI / Lagom (false, NO_FUZZ, ubuntu-24.04, Linux, GNU) (push) Waiting to run
CI / Lagom (true, NO_FUZZ, ubuntu-24.04, Linux, Clang) (push) Waiting to run
Package the js repl as a binary artifact / build-and-package (macos-14, macOS, macOS-universal2) (push) Waiting to run
Package the js repl as a binary artifact / build-and-package (ubuntu-24.04, Linux, Linux-x86_64) (push) Waiting to run
Run test262 and test-wasm / run_and_update_results (push) Waiting to run
Lint Code / lint (push) Waiting to run
Push notes / build (push) Waiting to run
Co-authored-by: sideshowbarker <mike@w3.org>
2024-11-01 12:25:28 -07:00
Hermes Junior
1be6c12501 Documentation: Explain how to fix CMake errors in CLion
When importing the project in some CLion versions,
the build profile can be created missing configurations,
breaking code insight.
2024-11-01 16:22:40 +00:00
Timothy Flynn
3a6b698572 Documentation: Add note about making the macOS terminal a developer tool 2024-11-01 15:04:53 +01:00
sideshowbarker
51912bf0da Documentation: Make updates to align better with new issue template 2024-10-31 09:18:08 +01:00
66542e
9b44a99617 Documentation: Rename class name on Images/classes.png
Updated class name on diagram according to rename in the
commit(3a71748e5d).
2024-10-28 11:06:38 -04:00
Kostya Farber
b953b5cc71 Documentation: Change in name from Serenity to Ladybird
Probably a remnant from Ladybird being in Serenity :^).
2024-10-27 14:33:24 +01:00
Jonne Ransijn
551b72b018 Documentation: Add one more option for getting started
Using a profiler is another great way to find issues
2024-10-27 09:43:04 +01:00
Jonne Ransijn
d002254ada Meta: Add build instructions for Void Linux
`git` and `bash` are most likely already installed, `bash` is part of
`base-system`, and `git` is required to pull the repository in the
first place, but they are not included in `base-minimal` or
`base-container`, and they ARE required for a successful build,
so I have added them regardless.

`qt6-tools-devel` and `qt6-wayland-devel` were not required to compile
and link Ladybird on my machine, but I have included them as they are
installed on the other Linux distributions.
2024-10-23 11:33:03 -06:00
Sam Atkins
86744449e3 Documentation: Flatten the Browser/ directory
Separating out the browser documentation doesn't make much sense now
that we are only a browser. :^)
2024-10-23 09:02:46 +02:00
Sam Atkins
25441e2250 Documentation: Move editor configuration guides into a subdirectory
This makes them a bit easier to find, and also stops them cluttering up
the main documentation.
2024-10-23 09:02:46 +02:00
Sam Atkins
c036e87d46 Documentation: Combine testing documentation together
Bring together the docs on running tests, with the ones on writing them
which were hidden in Browser/Patterns.md

I've made a few adjustments while I was at it, because RunningTests.md
was a bit outdated and didn't mention `Meta/ladybird.sh test`. It's
possible they're still outdated and wrong, but I'm not familiar enough
with that area to know.
2024-10-23 09:02:46 +02:00
Jelle Raaijmakers
0310b47a7b Documentation: Remove doc on self-hosted runners
The mentioned runner is no longer in use, and we set up runners managed
by the org nowadays.
2024-10-17 08:16:50 -04:00
John Diamond
5c35807878 Documentation: Suggest installing clang-format version 18 precisely 2024-10-14 15:54:53 -06:00
Totto16
846a3a16e2 Meta: Update the devcontainer configuration
Update the base image and the feature images
Add new packages to the install.sh command
as they are now needed by some dependencies, that are built via vcpkg
Add newer clang version, but the default stays the same
2024-10-12 11:34:57 -06:00
Andrew Kaster
3b2b86303f Documentation: Add start of a Porting guide 2024-10-11 09:08:10 +02:00
Andrew Kaster
5e090b359c Documentation: Add instructions for experimental native Windows build
Co-Authored-By: pheonixfirewingz <luke.a.shore@proton.me>
2024-10-10 21:48:41 -06:00
Timothy Flynn
de1475f99a Documentation: Update description of "Unable to find ninja" error
Unlike the current FAQ entry, this error really never involves having to
uninstall/reinstall Ninja or invoking it directly.
2024-10-08 16:34:13 +02:00
Neil Viloria
1e29a3ae13 Documentation: Update command for regenerating test expectations 2024-10-06 22:48:13 -06:00
sideshowbarker
6762714f5e Documentation: Emphasize getting started by troubleshooting WPT tests 2024-10-04 20:01:42 +02:00
Timothy Flynn
d33a87c8c4 LibWeb+Documentation: Remove the rebaseline-libweb-test script
This is superseded by the headless-browser --rebaseline flag.
2024-10-03 09:15:45 -04:00
Jelle Raaijmakers
57783eff24 LibMedia: Convert OggLoader into generic FFmpegLoader
This loader supports whatever format libavformat and libavcodec can
handle. Currently only seekable streams are supported, and we still have
some limitations as to the number of channels and sample format.

Plays all non-streaming audio files at:

  https://tools.woolyss.com/html5-audio-video-tester/
2024-09-30 18:48:12 +02:00
Sam Atkins
fdcece2e88 LibWeb/CSS: Implement legacy name aliases for properties
When a property is a "legacy name alias", any time it is used in CSS or
via the CSSOM its aliased name is used instead.
(See https://drafts.csswg.org/css-cascade-5/#legacy-name-alias)

This means we only care about the alias when parsing a string as a
PropertyID - and we can just return the PropertyID it is an alias for.
No need for a distinct PropertyID for it, and no need for LibWeb to
care about it at all.

Previously, we had a bunch of these properties, which misused our code
for "logical aliases", some of which I've discovered were not even
fully implemented. But with this change, all that code can go away, and
making a legacy alias is just a case of putting it in the JSON. This
also shrinks `StyleProperties` as it doesn't need to contain data for
these aliases, and removes a whole load of `-webkit-*` spam from the
style inspector.
2024-09-27 17:16:23 +01:00
Alec Murphy
fe9af6ffa2 Documentation: Add missing required Fedora packages
These packages are required for building on Fedora.
2024-09-23 11:13:01 -06:00
Han
f65df3f59f Documentation: Add Browsing Contexts and Navigables to Browser/LibWeb 2024-09-20 08:15:31 +02:00
Jelle Raaijmakers
1b267abf36 LibMedia: Link to avformat as well
This allows us to process container formats in future commits.
2024-09-12 10:01:19 +02:00
Sam Atkins
71d977b791 Documentation: Document the CSS JSON files and what they do
Some checks are pending
CI / Lagom (false, FUZZ, ubuntu-22.04, Linux, Clang) (push) Waiting to run
CI / Lagom (false, NO_FUZZ, macos-14, macOS, Clang) (push) Waiting to run
CI / Lagom (false, NO_FUZZ, ubuntu-22.04, Linux, GNU) (push) Waiting to run
CI / Lagom (true, NO_FUZZ, ubuntu-22.04, Linux, Clang) (push) Waiting to run
Package the js repl as a binary artifact / build-and-package (macos-14, macOS, macOS-universal2) (push) Waiting to run
Package the js repl as a binary artifact / build-and-package (ubuntu-22.04, Linux, Linux-x86_64) (push) Waiting to run
Run test262 and test-wasm / run_and_update_results (push) Waiting to run
Lint Code / lint (push) Waiting to run
Push notes / build (push) Waiting to run
2024-09-11 15:52:31 +02:00
sideshowbarker
55aad12fe3 Documentation: Explain how to use the rebaseline-libweb-test script
Some checks are pending
CI / Lagom (false, FUZZ, ubuntu-22.04, Linux, Clang) (push) Waiting to run
CI / Lagom (false, NO_FUZZ, macos-14, macOS, Clang) (push) Waiting to run
CI / Lagom (false, NO_FUZZ, ubuntu-22.04, Linux, GNU) (push) Waiting to run
CI / Lagom (true, NO_FUZZ, ubuntu-22.04, Linux, Clang) (push) Waiting to run
Package the js repl as a binary artifact / build-and-package (macos-14, macOS, macOS-universal2) (push) Waiting to run
Package the js repl as a binary artifact / build-and-package (ubuntu-22.04, Linux, Linux-x86_64) (push) Waiting to run
Run test262 and test-wasm / run_and_update_results (push) Waiting to run
Lint Code / lint (push) Waiting to run
Push notes / build (push) Waiting to run
This change adds documentation on using the rebaseline-libweb-test
script to regenerate the expectations file for a LibWeb/Text/input test.
2024-09-01 14:15:37 +02:00
circl
9ab17414ce Documentation: Rephrase note about good first issues in beginner's guide 2024-08-28 20:37:46 -06:00
circl
3db56b1111 Documentation: Add coding style to developer docs in beginner's guide 2024-08-28 20:37:46 -06:00
circl
e47f9d718a Documentation: Rephrase git rebase description in beginner's guide 2024-08-28 20:37:46 -06:00
Timothy Flynn
a4e814578b Documentation: Add a note about clang plugins 2024-08-28 15:36:47 +02:00
Tim Ledbetter
227ac9973f Documentation: Update wpt.fyi URL in getting started contributing guide 2024-08-18 00:22:21 +01:00
circl
7d4500a109 Documentation: Remove SerenityOS mentions from patterns reference 2024-08-17 11:51:06 -06:00
circl
336bfb9e88 Documentation: Remove extra <hr>s from the smart pointers reference
They are either redundant or duplicated from GitHub's formatting
2024-08-17 11:51:06 -06:00
circl
954b7ffb52 Documentation: Change two titles to not mention SerenityOS 2024-08-17 11:51:06 -06:00
circl
0dfc13f37d Documentation: Add a getting started contributing guide
This document aims to be a beginner-friendly summary of the existing
contribution requirements for Ladybird, intended to be linked to
new-comers.
2024-08-17 11:51:06 -06:00
Tim Ledbetter
1c5a7cd31b Documentation: Recommend enabling Qt chrome when running WPT on MacOS 2024-08-17 07:43:29 +02:00
Sam Atkins
0e3487b9ab LibWeb: Rename StyleValue -> CSSStyleValue
This matches the name in the CSS Typed OM spec.
https://drafts.css-houdini.org/css-typed-om-1/#cssstylevalue

No behaviour changes.
2024-08-15 13:58:38 +01:00
Tim Ledbetter
c9caa4262e Meta: Add a script to run the Web Platform tests locally
This change adds a script that can run the Web Platform Tests and
compare different test runs.
2024-08-13 14:10:56 +02:00
Will Hawkins
4f4fdce62a Meta: Script to configure clangd according to build type
Add a simple shell script to update the local clangd configuration
according to the type of build selected by the user. Include
documentation on where the script might be useful when building
under different configurations.
2024-08-05 23:44:03 -06:00