summaryrefslogtreecommitdiff
path: root/Userland/Utilities
AgeCommit message (Collapse)Author
2023-02-04Utilities: Rename special target binaries only if they existKarol Kosek
Before 6490529ef76ebf37f9e58bf76c6271be6842afa1, all programs in the SPECIAL_TARGETS list were built because they didn't have an EXCLUDE_FROM_ALL property set. That commit set the property for all targets, but because of this, the minimal "Required" build configuration no longer built, as CMake failed to rename every special target. Even the not built ones. This commit makes the rename action run only if the executable exists, which makes us build Serenity without the `install` utility, and also by using the minimal configuration set. :^) :^)
2023-02-03LibSQL+Userland: Pass SQL IPC results to clients in a structureTimothy Flynn
SQLClient exists as a wrapper around SQL IPC to provide a bit friendlier interface for clients to deal with. Though right now, it mostly forwards values as-is from IPC to the clients. This makes it a bit verbose to add values to IPC responses, as we then have to add it to the callbacks used by all clients. It's also a bit confusing seeing a sea of "auto" as the parameter types for these callbacks. This patch moves these response values to named structures instead. This will allow adding values without needing to simultaneously update all clients. We can then separately handle the new values in interested clients only.
2023-02-03grep: Port to `Core::Stream`Lucas CHOLLET
It also adds support for `ErrorOr` in one lambda.
2023-02-03Utilities/w: Replace uses of JsonObject::get_deprecated()/get_ptr()Sam Atkins
2023-02-03Utilities/route: Replace uses of JsonObject::get_deprecated()/get_ptr()Sam Atkins
2023-02-03Utilities/pmap: Replace uses of JsonObject::get_deprecated()/get_ptr()Sam Atkins
2023-02-03Utilities/netstat: Replace uses of JsonObject::get_deprecated()/get_ptrSam Atkins
2023-02-03Utilities/mount: Replace uses of JsonObject::get_deprecated()/get_ptr()Sam Atkins
2023-02-03Utilities/lsusb: Replace uses of JsonObject::get_deprecated()/get_ptr()Sam Atkins
2023-02-03Utilities/lsof: Replace uses of JsonObject::get_deprecated()/get_ptr()Sam Atkins
2023-02-03Utilities/lsjails: Replace uses of JsonObject::get_deprecated()/get_ptrSam Atkins
2023-02-03Utilities/lsirq: Replace uses of JsonObject::get_deprecated()/get_ptr()Sam Atkins
2023-02-03Utilities/lscpu: Replace uses of JsonObject::get_deprecated()/get_ptr()Sam Atkins
2023-02-03Utilities/json: Replace uses of JsonObject::get_deprecated()/get_ptr()Sam Atkins
2023-02-03Utilities/ifconfig: Replace uses of JsonObject::get_deprecated()/get_ptrSam Atkins
2023-02-03Utilities/fortune: Replace uses of JsonObject::get_deprecated()/get_ptrSam Atkins
2023-02-03Utilities/df: Replace uses of JsonObject::get_deprecated()/get_ptr()Sam Atkins
2023-02-03Utilities/arp: Replace uses of JsonObject::get_deprecated()/get_ptr()Sam Atkins
2023-02-02LibWeb+LibWebSocket: DOM WebSocket subprotocol supportGuilherme Gonçalves
This adds support for WebSocket subprotocols to WebSocket DOM objects, with some necessary plumbing to LibWebSocket and its clients. See the associated pull request for how this was tested.
2023-02-02LibSQL+Ladybird: Accept a list of paths for spawning SQLServer in LagomAndrew Kaster
Use the new get_paths_for_helper_process method in Ladybird to query Qt for the runtime path of the current executable as well as the build directory paths.
2023-02-01LibWeb+WebContent: Do not reference-count file request objectsTimothy Flynn
There is currently a memory leak with these file request objects due to the callback on_file_request_finish referencing itself in its capture list. This object does not need to be reference counted or allocated on the heap. It is only ever stored in a HashMap until a response is received from the browser, and it is not shared.
2023-01-29AK: Move memory streams from `LibCore`Tim Schumacher
2023-01-29AK: Move `Stream` and `SeekableStream` from `LibCore`Tim Schumacher
`Stream` will be qualified as `AK::Stream` until we remove the `Core::Stream` namespace. `IODevice` now reuses the `SeekMode` that is defined by `SeekableStream`, since defining its own would require us to qualify it with `AK::SeekMode` everywhere.
2023-01-29AK: Move `Handle` from `LibCore` and name it `MaybeOwned`Tim Schumacher
The new name should make it abundantly clear what it does.
2023-01-29LibJS+Everywhere: Allow Cell::initialize overrides to throw OOM errorsTimothy Flynn
Note that as of this commit, there aren't any such throwers, and the call site in Heap::allocate will drop exceptions on the floor. This commit only serves to change the declaration of the overrides, make sure they return an empty value, and to propagate OOM errors frm their base initialize invocations.
2023-01-28LibGfx+icc: Read and display lut16Type and lut8Type ICC tag typesNico Weber
2023-01-28icc: Print profile sizeNico Weber
2023-01-28LibGfx: Split ICC/Profile.{h,cpp} into several filesNico Weber
s15Fixed16Number and XYZNumber are somewhat awkwardly duplicated in both Profile.cpp and TagTypes.cpp. Other than that, this is a pure code move. No behavior change.
2023-01-28LibGfx: Move ICCProfile.{h,cpp} to ICC/Profile.{h,cpp}Nico Weber
2023-01-27AK: Remove StringBuilder::build() in favor of to_deprecated_string()Linus Groh
Having an alias function that only wraps another one is silly, and keeping the more obvious name should flush out more uses of deprecated strings. No behavior change.
2023-01-27icc: Accept path to images in addition to path to ICC profileNico Weber
2023-01-27LibGfx+icc: ICCProfile's primary_platform() should be optionalNico Weber
Found by running `icc` on a jpeg file produced by a Pixel phone after #17195.
2023-01-26LibGfx: Remove `try_` prefix from bitmap creation functionsTim Schumacher
Those don't have any non-try counterpart, so we might as well just omit it.
2023-01-26icc: Align "else" for Type3 with "if"Nico Weber
2023-01-26icc: Indent ParametricCurveTagData the same amount as the other typesNico Weber
2023-01-25LibWasm: Port the parser to `Core::Stream`Tim Schumacher
2023-01-25LibWasm: Port `Wasm::Printer` to `Core::Stream`Tim Schumacher
2023-01-25icc: Print each tag signature's spec nameNico Weber
The spec names are still a bit cryptic ("deviceMfgDescTag" for "device manufacturer description"), but less cryptic than just the fourcc. There's a private tag area, so this will only print the spec name of tags in the current spec. Private tags are in active use, e.g.: $ icc /Library/ColorSync/Profiles/WebSafeColors.icc ... Unknown tag ('dscm'): type 'mluc', offset 312, size 1490 (That's a v2 file. In v2, 'desc' has that strange textDescriptionType. In v4, 'desc' has type 'mluc' -- but in v2, it didn't yet, so Apple invented the private 'dscm' tag which has the description as an 'mluc'.)
2023-01-24icc: Print every TagData object only onceNico Weber
When several tags refer to the same TagData object, we now only print it the first time, and print "(see 'foob' above)" the following times, where `foob` is the tag identifier where we printed it the first time.
2023-01-23LibGfx+icc: Add ICCProfile support for parametricCurveType and print itNico Weber
With this, we can parse all types required in v4 "Three-component matrix-based Input profiles".
2023-01-23LibGfx+icc: Add ICCProfile support for curveType and print itNico Weber
2023-01-23LibGfx+icc: Add ICCProfile support for s15Fixed16ArrayType and print itNico Weber
This is the type of the chromaticAdaptationTag, which is a required tag in v4 profiles for all non-DeviceLink profiles.
2023-01-23LibGfx+icc: Add ICCProfile support for XYZType and print itNico Weber
2023-01-23LibGfx+icc: Add ICCProfile support for textDescriptionType and print itNico Weber
This is used in v2 profiles for the required 'desc' tag. In v2 profiles, it's also used by the 'dmnd', 'dmdd', 'scrd', 'vued' tags. In v4 profiles, these all use 'mluc' instead (except for 'scrd', which is no longer part of the spec in v4).
2023-01-22icc: Print MultiLocalizedUnicodeTagData contentsNico Weber
2023-01-22icc: Print TextTagData contentsNico Weber
2023-01-21LibGfx+icc: Make device manufacturer and device model clickableNico Weber
2023-01-21Kernel+Userland: Move LibC/sys/ioctl_numbers to Kernel/API/Ioctl.hAndrew Kaster
This header has always been fundamentally a Kernel API file. Move it where it belongs. Include it directly in Kernel files, and make Userland applications include it via sys/ioctl.h rather than directly.
2023-01-21Kernel+LibC: Move LibC/signal_numbers.h to Kernel/API/POSIXAndrew Kaster
Make Userland and Tests users just include signal.h, and move Kernel users to the new API file.
2023-01-21AK: Remove `FileStream`Tim Schumacher