summaryrefslogtreecommitdiff
path: root/Meta
AgeCommit message (Collapse)Author
2023-02-25Lagom: Build `file` in lagom buildsNico Weber
2023-02-25Lagom: Build LibELF on arm64Nico Weber
This seems to build fine now on Arm Macs.
2023-02-24LibTimeZone: Propagate try_append() errors while building timezone dataMacDue
2023-02-24LibUnicode: Propagate try_append() errors when building emoji dataMacDue
2023-02-24LibUnicode: Generate the path to emoji images alongside emoji dataTimothy Flynn
This will provide for quicker emoji lookups, rather than having to discover and allocate these paths at runtime before we find out if they even exist.
2023-02-24LibGfx: Add scaffolding for a webp decoderNico Weber
At the moment, this processes the RIFF chunk structure and extracts the ICCP chunk, so that `icc` can now print ICC profiles embedded in webp files. (And are image files really more than containers of icc profiles?) It doesn't even decode image dimensions yet. The lossy format is a VP8 video frame. Once we get to that, we might want to move all the image decoders into a new LibImageDecoders that depends on both LibGfx and LibVideo. (Other newer image formats like heic and av1f also use video frames for image data.)
2023-02-24CI: Make sure to brew update in macOS Azure setupAndrew Kaster
This picks up any upstream brew changes that haven't been pulled into the default Azure VMs. For example, the ffmpeg dependency of qt is currently broken in the 8 day old brew commit they are using.
2023-02-24CI+Lagom: Use the same options for running test-wasm in ctest and CIAndrew Kaster
Make sure that we set SERENITY_SOURCE_DIR in ctest, and make sure to pass the test root to the CI job. More overhaul of test-js 'test root' finding is needed however.
2023-02-23BindingsGenerator: Release value setting members of dictionaryKenneth Myhra
When a constructor has an optional dictionary as argument, and those members are of type new string, make sure that we release_value() setting the dictionary members.
2023-02-23BindingsGenerator: Pass optional values as 'sv' to String::from_utf8()Kenneth Myhra
Pass optional values as StringView to String::from_utf8(), otherwise this would not compile.
2023-02-23BindingsGenerator: Allow stringifier to return DOMException if neededKenneth Myhra
2023-02-22Lagom: Include AccessibilityTreeModel in LibWebViewMacDue
This will be needed for the accessibility inspector in Ladybird.
2023-02-22LibWeb: Allow prototype.{entries keys,value} to propagate errorsKenneth Myhra
This allows the prototype.{entries keys,value} native functions generated by the BindingsGenerator to propagate errors if needed.
2023-02-22LibWeb: Allow EventListener/NodeFilter path to propagate errorsKenneth Myhra
This allows the EventListener/NodeFilter path of the BindingsGenerator to propagate errors if needed.
2023-02-21LibWeb+LibIDL: Fix (or paper over) various const-correctness issuesAndreas Kling
There's definitely stuff to iterate on here, but this takes care of making the libraries compile with stricter RP and NNRP.
2023-02-20LibCore: Add support for NetBSD in anon_createnipos
2023-02-19LibTextCodec+Everywhere: Port Decoders to new StringsSam Atkins
2023-02-19LibTextCodec+Everywhere: Return Optional<Decoder&> from `decoder_for()`Sam Atkins
2023-02-19LibWeb: Make property/media-feature name matching ASCII case-insensitiveSam Atkins
https://www.w3.org/TR/css-conditional-3/#dom-css-supports specifically asks for this when calling `CSS::property_id_from_string()`, but in general, CSS property and media-feature names can only contain ASCII.
2023-02-18LibGfx: Rename `JPGLoader` to `JPEGLoader`Lucas CHOLLET
The patch also contains modifications on several classes, functions or files that are related to the `JPGLoader`. Renaming include: - JPGLoader{.h, .cpp} - JPGImageDecoderPlugin - JPGLoadingContext - JPG_DEBUG - decode_jpg - FuzzJPGLoader.cpp - Few string literals or texts
2023-02-18LibWeb: Convert FormData to String and Vector storageLuke Wilde
This makes use of the new [UseNewAKString] extended attribute. Using Vector storage will make it easier to make this interface into an IDL iterable. It seems the reason it didn't use Vector originally was due to awkward DeprecatedString -> String conversions.
2023-02-18LibWeb: Add an extended attribute that makes interfaces use AK::StringLuke Wilde
Adding the [UseNewAKString] extended attribute to an interface will cause all IDL string types to use String instead of DeprecatedString. This is done on an per interface level instead of per type/parameter because: - It's much simpler to implement, as the generators can already access the interface's extended attributes. Doing it per type/parameter would mean parsing and piping extended attributes for each type that doesn't already take extended attributes, such as unions. - Allows more incremental adoption of AK::String. For example, adding [UseNewAKString] to BodyInit would require refactoring Request, Response and XMLHttpRequest to AK::String in one swoop. Doing it on the interface allows you to convert just XHR and its dependencies at once, for example. - Simple string return types (i.e. not parameterised or not in a union) already accept any of the string types JS::PrimitiveString::create accepts. For example, you can add [UseNewAKString] to DOMStringMap to convert Element attributes to AK::String and still return AK::String from get_attribute, without adding [UseNewAKString] to Element. - Adding [UseNewAKString] to one function typically means adding it to a bunch of other functions, if not the rest of them. For example, adding [UseNewAKString] to the parameters FormData.append would either mean converting AK::String to AK::DeprecatedString or storing the AK::String as-is, making the other functions of FormData have to convert back from AK::String or also support AK::String.
2023-02-17LibJS+Everywhere: Convert JS::Error to StringTimothy Flynn
This includes an Error::create overload to create an Error from a UTF-8 StringView. If creating a String from that view fails, the factory will return an OOM InternalError instead. VM::throw_completion can also make use of this overload via its perfect forwarding.
2023-02-16LibWeb: Convert usages of Value::TDSWOSE to Value::TSWOSETimothy Flynn
2023-02-16LibJS+Everywhere: Deprecate Value::to_string_without_side_effectsTimothy Flynn
2023-02-15CMake: Add -mstrict-align flag to compile options for aarch64 buildTimon Kruiper
The aarch64 processor is set up to trap on unaligned memory accesses, so to enforce that the compiler correctly generates aligned accesses, the -mstrict-align flag is needed. We also need the -Wno-cast-align as there are some files in AK that don't build without the flag.
2023-02-15LibTextCodec+Everywhere: Make TextCodec::decoder_for() take a StringViewSam Atkins
We don't need a full String/DeprecatedString inside this function, so we might as well not force users to create one.
2023-02-13Meta: Add a `Shell --posix` parser fuzzerAli Mohammad Pur
2023-02-13Shell: Start implementing a POSIX-compliant parserAli Mohammad Pur
The parser is still very much a work-in-progress, but it can currently parse most of the basic bits, the only *completely* unimplemented things in the parser are: - heredocs (io_here) - alias expansion - arithmetic expansion There are a whole suite of bugs, and syntax highlighting is unreliable at best. For now, this is not attached anywhere, a future commit will enable it for /bin/sh or a `Shell --posix` invocation.
2023-02-13Everywhere: Remove the `AK::` qualifier from Stream usagesTim Schumacher
2023-02-13LibCore: Remove `Stream.h`Tim Schumacher
2023-02-13LibCore: Move Stream-based file into the `Core` namespaceTim Schumacher
2023-02-13LibCore: Move Stream-based sockets into the `Core` namespaceTim Schumacher
2023-02-13LibCore: Rename `File` to `DeprecatedFile`Tim Schumacher
As usual, this removes many unused includes and moves used includes further down the chain.
2023-02-12LibWeb: Introduce the FormData interface from the XHR specificationKenneth Myhra
2023-02-10CI: Add script to post mastodon toots for commits on masternetworkException
This patch adds the toot-commits script (mirroring tweet-commits), posting new commits on the master branch to https://serenityos.social/@commits.
2023-02-10AK+Everywhere: Do not implicitly copy variables in TRY macrosTimothy Flynn
For example, consider cases where we want to propagate errors only in specific instances: auto result = read_data(); // something like ErrorOr<ByteBuffer> if (result.is_error() && result.error().code() != EINTR) continue; auto bytes = TRY(result); The TRY invocation will currently copy the byte buffer when the expression (in this case, just a local variable) is stored into _temporary_result. This patch binds the expression to a reference to prevent such copies. In less trival invocations (such as TRY(some_function()), this will incur only temporary lifetime extensions, i.e. no functional change.
2023-02-09LibJS+LibWeb: Convert string view PrimitiveString instances to StringTimothy Flynn
First, this adds an overload of PrimitiveString::create for StringView. This overload will throw an OOM completion if creating a String fails. This is not only a bit more convenient, but it also ensures at compile time that all PrimitiveString::create(string_view) invocations will be handled as String and OOM-aware. Next, this wraps all invocations to PrimitiveString::create(string_view) with MUST_OR_THROW_OOM. A small PrimitiveString::create(DeprecatedFlyString) overload also had to be added to disambiguate between the StringView and DeprecatedString overloads.
2023-02-09Revert "Meta: Automatically select best apt mirror"Timothy Flynn
This reverts commit b0606d90f0da2fd2651768d1e250a692e3c92abf. This seems to prevent libegl-mesa0 from being installed (which for some reason isn't failing the Azure jobs - the failure seen later is that ccache is not installed).
2023-02-08Everywhere: Use ReadonlySpan<T> instead of Span<T const>MacDue
2023-02-08LibJS+LibLocale: Propagate OOM from CLDR RelativeTime Vector operationsTimothy Flynn
2023-02-08LibLocale: Propagate OOM from CLDR DateTime Vector and String operationsTimothy Flynn
2023-02-08LibJS+LibLocale: Propagate OOM from CLDR NumberFormat Vector operationsTimothy Flynn
2023-02-08Meta: Allow creating disk image without installing kernel into itTimon Kruiper
This change allows for creating smaller disk images, which is useful for creating a disk image that will be put into ram.
2023-02-08AK: Remove the fallible constructor from `FixedMemoryStream`Tim Schumacher
2023-02-07Meta: Automatically select best apt mirrorMacDue
This is an attempt to avoid issues with the azure ubuntu apt mirror by using apt-spy2 to select the best mirror before installing dependencies.
2023-02-04CMake: Don't require to install glapi.h to systemKarol Kosek
This failed when a current build configuration hadn't got any program depending on LibGL.
2023-02-04Lagom/ConfigureComponents: Run cmake command lastKarol Kosek
Previously the tool was removing the Root directory after configuring cmake which was breaking the build, as some cmake rules put some necessary files there. Moving the cmake command to be the last one makes it regenerate those files automatically. :^)
2023-02-03Meta: Register CanvasPattern as a platform objectMacDue
2023-02-02CMake: Set DWARF version before the debug information levelTim Schumacher
Setting the DWARF version after having selected which level of debug information to generate apparently undoes some settings again. Doing the reverse apparently keeps both the version and the debug level setting, resulting in a significantly smaller disk image size.