Commit graph

36830 commits

Author SHA1 Message Date
kleines Filmröllchen 659a7a5da7 Meta: Completely overhaul the README
The README was getting a bit outdated in places, and it didn't have its
priorities straight (libc uwu, also we have browser no big deal). These
changes are largely based on what was discussed among major contributors
and maintainers, though I put in some extra stuff I'm bothered by.

The start of README is unchanged. The project blurb is probably its best
part, both then and now, so it definitely stays. The FAQ is moved up
under the About section because it's easier to find that way and makes
more sense logically.

The Features section is a highly compressed version of the previous
several features sections. Priorities are a big focus here: List what
matters to a reader, what they will likely care about, what's impressive
to them and what's probably not. The list therefore starts with the
factual basics about the Kernel followed directly by Browser+LibJS, the
probably biggest userland feat in this project. Then, we pedal back and
talk about OS basics, like security, POSIX, services, libraries,
devtools. We finish out by addressing the end user concerns
(customization, UI apps, multimedia & file format support), which
includes a bunch of things previously underrepresented. I think it's
rather important that Serenity has a unified style and UX philosophy, so
this should definitely be mentioned :^) At the end, I think it's very
important to state the NIH philosophy, but also the fact that there are
more than two hundred (!) ports.

Documentation section is slightly expanded to mention the Documentation
folder which doesn't really appear anywhere in the previous version.

Build instructions include a simple mention of the fact that Serenity
runs on almost anything. It's good to not scare off Windows users :^))
(self-deprecating humour overload)

The Get in Touch section and the issues section are combined into one
"how do i talk to u help" section that contains the same information but
includes a general link to CONTRIBUTING.

The Contributors section is now one big list of 100+ commit people.
Also, the GitHub contributor list is linked, as that lists over 30
additional people IIRC + detailed statistics.
2022-04-02 11:03:46 -07:00
Enver Balalic 747f347b75 LibWeb: Implement flex reverse layouts
This builds on the work done by implementing the flex order CSS
property and implements flex reverse layouts by just reversing
the order and the items within each order bucket.
2022-04-02 19:01:14 +02:00
djwisdom 645d49fa53 Base: Add new bitmap font Lucidity 2022-04-02 18:43:34 +02:00
GeekFiftyFive 737f5b26b7 AK+LibHTTP: Ensure plus signs are percent encoded in query string
Adds a new optional parameter 'reserved_chars' to
AK::URL::percent_encode. This new optional parameter allows the caller
to specify custom characters to be percent encoded. This is then used
to percent encode plus signs by HttpRequest::to_raw_request.
2022-04-02 18:43:15 +02:00
Enver Balalic 58398b1e12 LibWeb: Implement the flex order CSS property
Adds support for the flex order property and a test page for it
on the browser welcome page.
2022-04-02 18:40:32 +02:00
Hendiadyoin1 2377344a89 UserspaceEmulator: Implement the SSE extension
This almost fully implements the SSE extension, similar to the x87 and
MMX extensions, using a separate class "SoftVPU".

Currently missing are all shadow and exception checks, as well as the
denormals-are-zero and flush-to-zero flags.
Also missing are some integer-SIMD functions.
2022-04-02 18:37:38 +02:00
Hendiadyoin1 1d2ad9cf61 UserspaceEmulator: Don't mark SoftFPU::mmx_get/set as ALWAYS_INLINE
These are exposed by SoftCPU, and this attribute would cause these not
to create any symbols to link against.
2022-04-02 18:37:38 +02:00
Hendiadyoin1 b7a8cfdde9 LibX86: Correctly name CVTTSS2SI_r32_xmm2m32
This was previously erroneously called CVTTPS2PI_r32_xmm2m32, while
the mnemonic was correctly CVTTSS2SI.
2022-04-02 18:37:38 +02:00
Hendiadyoin1 1432b6ab0a LibX86: Use the correct code for UNPCKLS
We were accidentally using 0x15, which was immediately overridden by
UNPCKHS
2022-04-02 18:37:38 +02:00
Hendiadyoin1 3cae69a6c2 LibX86: Correctly name the first xmm argument
We were accidentally calling it a mm-register
2022-04-02 18:37:38 +02:00
Hendiadyoin1 f951849fd5 LibX86: Don't print repz prefix for SSE instructions 2022-04-02 18:37:38 +02:00
Hendiadyoin1 d03a6cc6c6 LibGfx: Use AK's rsqrt and cast to floats earlier 2022-04-02 18:37:38 +02:00
Hendiadyoin1 5ba5a6615d AK: Add vector variants of sqrt and rsqrt 2022-04-02 18:37:38 +02:00
Hendiadyoin1 b1db1e4e4f AK: Add rsqrt and a SSE specific implementation for sqrt 2022-04-02 18:37:38 +02:00
Idan Horowitz 50c4ba0756 Meta: Update required clang-format version in CONTRIBUTING.md 2022-04-02 17:35:27 +03:00
Sam Atkins b07659d00c Meta+LibWeb: Port PropertyID.h/cpp generators to invoke_generator() 2022-04-02 09:18:07 -04:00
Sam Atkins fc81d6c9f3 Meta+LibWeb: Port ValueID.h/cpp generators to invoke_generator() 2022-04-02 09:18:07 -04:00
Sam Atkins cb406e79f4 Meta+LibWeb: Port MediaFeatureID.h/cpp generators to invoke_generator() 2022-04-02 09:18:07 -04:00
Idan Horowitz 59080f441e LibJS: Normalize NaN values in Sets and Maps
This ensures that different NaN types (e.g. 0/0, 0 * Infinity, etc) are
mapped to the same Set/Map entry.
2022-04-02 14:15:43 +01:00
EWouters cc08f82ddb Ports: Fix dependency install when port name is not port folder name
There was a bug in the way the `.port_include.sh` script handled
installing dependencies. According to the
[documentation](https://github.com/SerenityOS/serenity/tree/master/Ports#depends)
the depends array should have port names in it. The port system allows
for the name of the port to be different from the folder where port
lives. Previously the `installdepends` function would cd to the name
of the port, now it will find and run the `package.sh` that has the
line `port=$depend` in it.
2022-04-02 13:12:02 +01:00
EWouters 77d9a764e3 Ports/libtiff: Name port as folder name and fix workdir
Previously when installing libtiff as a dependency for another port
it would not find the entry in `packages.db` as the ports that
depend on libtiff would use the folder name rather than the port
name in the dependency list. They did this because there was is a
bug in `.port_include.sh` that cds to the port name and not the
folder the port lives in. This is a workaround for that issue.
2022-04-02 13:12:02 +01:00
kleines Filmröllchen abb60cd888 Base: Add Andrew's very inspired musings to the fortunes database 2022-04-02 13:04:52 +01:00
Idan Horowitz 6f7cab91a7 LibWeb: Use the specification defined types in IntersectionObserverInit 2022-04-02 13:13:37 +03:00
Idan Horowitz b172b56757 LibWeb: Include relevant headers in IDL constructor implementations
Similarly to implementations of prototype methods, the implementations
of constructors sometimes require generated types.
2022-04-02 13:13:37 +03:00
Idan Horowitz a7f2d46b49 LibWeb: Support integral default values for IDL unions 2022-04-02 13:13:37 +03:00
Idan Horowitz 32d142b06c LibWeb: Remove no-op calls to emit_includes_for_all_imports for headers
When called with is_header=true the method was essentailly a no-op.
2022-04-02 13:13:37 +03:00
Idan Horowitz 61fc3c31c6 LibWeb: Add the ResizeObserverBoxOptions IDL enum 2022-04-02 13:13:37 +03:00
Idan Horowitz 110d73d786 LibWeb: Strip double quotes from IDL enum default values 2022-04-02 13:13:37 +03:00
Idan Horowitz f744c31a6f LibWeb: Use OnErrorEventHandler in WorkerGlobalScope IDL 2022-04-02 12:22:48 +04:30
Idan Horowitz d25bd2dbd8 LibWeb: Add the GlobalEventHandlers IDL mixin 2022-04-02 12:22:48 +04:30
Idan Horowitz 3ee8b5e534 LibWeb: Cache and reuse resolved IDL imports instead of rejecting them
This ensures that transitive imports succeed even if they were directly
imported beforehand.
2022-04-02 12:22:48 +04:30
James Mintram 14dbd28033 3DViewer: Add support for dropping files 2022-04-01 21:32:27 -07:00
Stephan Unverwerth 75d0f2c703 Base: Add tuba 3d model 2022-04-01 23:19:06 +02:00
Stephan Unverwerth 086fcd4e44 3DFileViewer: Do not abort model loading when texture is missing 2022-04-01 23:19:06 +02:00
Ali Mohammad Pur 265dd9b445 Meta: Avoid showing elements in extremely large vectors in gdb
This is most often just an invalid vector anyway.
2022-04-01 21:41:41 +01:00
Ali Mohammad Pur 899888bbf2 Meta: Update gdb script for changes in HashTable 2022-04-01 21:41:41 +01:00
Idan Horowitz 086969277e Everywhere: Run clang-format 2022-04-01 21:24:45 +01:00
Idan Horowitz 0376c127f6 Meta: Update .clang-format to correct qualifier alignment
This ensures 'east-const' order.
2022-04-01 21:24:45 +01:00
Idan Horowitz 852ae6c195 Meta: Switch to clang-format-14 as the standard formatter
Now that clang-format-14 ubuntu packages are available, it's time to
finally upgrade our clang-format version. This version brings with it
a bunch of useful features with const-placement being the most notable.
These will be enabled in the following commits.
2022-04-01 21:24:45 +01:00
Lady Gegga ed9ddf79ff Base: Add Hangul Syllables to font Katica Regular 10
https://www.unicode.org/charts/PDF/UAC00.pdf
D55C, AD6D, C5B4
2022-04-01 20:26:25 +01:00
Lady Gegga 0735571d05 Base: Add CJK character to font Katica Regular 10
https://www.unicode.org/charts/PDF/U4E00.pdf
8A9E, 6587
2022-04-01 20:26:25 +01:00
Lady Gegga 065155cd4e Base: Add Latin Extended Additional chrs to font Katica Regular 10
https://www.unicode.org/charts/PDF/U1E00.pdf
1EBF, 1EC7, 1E90-1E95, 1EB7, 1E70-1E73, 1E22, 1E7D-1E8A, 1E8E, 1E8F
2022-04-01 20:26:25 +01:00
Lady Gegga 5b44706db7 Base: Add Georgian characters to font Katica Regular 10
https://www.unicode.org/charts/PDF/U10A0.pdf
10E5, 10D0, 10E0, 10D7, 10E3, 10DA, 10D8
2022-04-01 20:26:25 +01:00
Lady Gegga c4f2ce76bf Base: Add Thai characters to font Katica Regular 10
https://www.unicode.org/charts/PDF/U0E00.pdf
0E44, 0E17, 0E22
2022-04-01 20:26:25 +01:00
Lady Gegga 88aca27232 Base: Add Bengali characters to font Katica Regular 10
https://www.unicode.org/charts/PDF/U0980.pdf
09AC, 09B0, 09BE, 0982, 09B2, 09F1
2022-04-01 20:26:25 +01:00
Lady Gegga 080b7b815e Base: Add Arabic characters to font Katica Regular 10
https://www.unicode.org/charts/PDF/U0600.pdf
06CC-06CF
2022-04-01 20:26:25 +01:00
James Mintram 81b6386c87 Toolchain: Fix the gdb build for aarch64 target on macOS host 2022-04-01 19:39:56 +01:00
Liav A db8942178a Kernel: Stop debug spam when using read on /dev/mem device
This is not really useful and quite annoying so let's disable it by
default.
2022-04-01 19:59:45 +02:00
Liav A d0abae8907 Kernel: Stop debug spam when using mmap on /dev/mem device
This is not really useful and quite annoying so let's disable it by
default.
2022-04-01 19:59:45 +02:00
Idan Horowitz 916e093d4a Documentation: Add Kernel/Userland quick switch to CLion configuration 2022-04-01 17:39:15 +01:00