1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-06-01 06:28:13 +00:00
serenity/Userland/Libraries
Timothy Flynn 4e5f56f737 LibSQL: Support launching a singleton SQLServer instance for Lagom hosts
On Serenity, SQLServer is started by SystemServer. But on Lagom, it is
manually started by e.g. Ladybird when the application is started, and
killed when the application exits. This means every Ladybird process
starts its own SQLServer, which defeats the purpose of SQLServer acting
as the single process interacting with the database files.

This patch will allow SQLClient to start up a single SQLServer instance,
first checking if one already exists. If it does exist, SQLClient will
simply connect to SQLServer's socket. If it does not exist, SQLClient
will launch SQLServer much like SystemServer would (with a local socket
file, etc.).

The child SQLServer process is double-forked; the grandchild process
becomes the SQLServer process, which the middle child process simply
exits to "detach" the grandchild process from the SQLClient process.
2022-12-11 10:08:17 -05:00
..
LibArchive AK+Everywhere: Rename String to DeprecatedString 2022-12-06 08:54:33 +01:00
LibAudio AK+Everywhere: Rename String to DeprecatedString 2022-12-06 08:54:33 +01:00
LibC Everywhere: Rename to_{string => deprecated_string}() where applicable 2022-12-06 08:54:33 +01:00
LibCards Meta+Userland: Pass Gfx::IntPoint by value 2022-12-07 11:48:27 +01:00
LibChess Everywhere: Rename to_{string => deprecated_string}() where applicable 2022-12-06 08:54:33 +01:00
LibCodeComprehension Everywhere: Rename to_{string => deprecated_string}() where applicable 2022-12-06 08:54:33 +01:00
LibCompress LibCompress: Port GzipDecompressor to Core::Stream 2022-12-10 12:05:55 +00:00
LibConfig AK+Everywhere: Rename String to DeprecatedString 2022-12-06 08:54:33 +01:00
LibCore LibCore: Add a standard path for runtime communication files 2022-12-11 10:08:17 -05:00
LibCoredump LibCompress: Port GzipDecompressor to Core::Stream 2022-12-10 12:05:55 +00:00
LibCpp Everywhere: Rename to_{string => deprecated_string}() where applicable 2022-12-06 08:54:33 +01:00
LibCrypt AK+Everywhere: Rename String to DeprecatedString 2022-12-06 08:54:33 +01:00
LibCrypto Everywhere: Use C++ concepts instead of requires clauses 2022-12-09 11:25:30 +00:00
LibDebug Everywhere: Rename to_{string => deprecated_string}() where applicable 2022-12-06 08:54:33 +01:00
LibDesktop Everywhere: Rename to_{string => deprecated_string}() where applicable 2022-12-06 08:54:33 +01:00
LibDeviceTree AK+Everywhere: Rename String to DeprecatedString 2022-12-06 08:54:33 +01:00
LibDiff Everywhere: Rename to_{string => deprecated_string}() where applicable 2022-12-06 08:54:33 +01:00
LibDNS Everywhere: Rename to_{string => deprecated_string}() where applicable 2022-12-06 08:54:33 +01:00
LibDSP Everywhere: Use C++ concepts instead of requires clauses 2022-12-09 11:25:30 +00:00
LibEDID Everywhere: Use C++ concepts instead of requires clauses 2022-12-09 11:25:30 +00:00
LibELF Everywhere: Rename to_{string => deprecated_string}() where applicable 2022-12-06 08:54:33 +01:00
LibFileSystemAccessClient AK+Everywhere: Rename String to DeprecatedString 2022-12-06 08:54:33 +01:00
LibGemini Everywhere: Rename to_{string => deprecated_string}() where applicable 2022-12-06 08:54:33 +01:00
LibGfx LibGfx: Allow creating Bitmaps from ReadonlyBytes objects 2022-12-10 10:49:03 +01:00
LibGL LibGL: Generate GL_OUT_OF_MEMORY error in glBufferData when OOM 2022-12-07 11:46:37 +01:00
LibGPU Meta+Userland: Pass Gfx::IntSize by value 2022-12-07 11:48:27 +01:00
LibGUI LibGUI+WindowServer: Add "visible" state to GUI actions 2022-12-10 14:28:38 +01:00
LibHTTP LibCompress: Port GzipDecompressor to Core::Stream 2022-12-10 12:05:55 +00:00
LibIDL Everywhere: Rename to_{string => deprecated_string}() where applicable 2022-12-06 08:54:33 +01:00
LibImageDecoderClient Everywhere: Mark dependencies of most targets as PRIVATE 2022-11-01 14:49:09 +00:00
LibIMAP Everywhere: Rename to_{string => deprecated_string}() where applicable 2022-12-06 08:54:33 +01:00
LibIPC LibIPC: Add a hook to MultiServer to inform owners of new clients 2022-12-11 10:08:17 -05:00
LibJS LibJS: Rename same_value_non_{numeric => number}() and handle BigInts 2022-12-10 11:35:20 +00:00
LibKeyboard Everywhere: Rename to_{string => deprecated_string}() where applicable 2022-12-06 08:54:33 +01:00
LibLine Everywhere: Rename to_{string => deprecated_string}() where applicable 2022-12-06 08:54:33 +01:00
LibLocale Everywhere: Rename to_{string => deprecated_string}() where applicable 2022-12-06 08:54:33 +01:00
LibMain Everywhere: Explicitly link all binaries against the LibC target 2022-11-01 14:49:09 +00:00
LibMarkdown LibJS: Convert MarkupGenerator to the new String 2022-12-07 09:58:38 +00:00
LibPartition Everywhere: Mark dependencies of most targets as PRIVATE 2022-11-01 14:49:09 +00:00
LibPCIDB AK+Everywhere: Rename String to DeprecatedString 2022-12-06 08:54:33 +01:00
LibPDF LibPDF: Add initial image display support 2022-12-10 10:49:03 +01:00
LibProtocol AK+Everywhere: Rename String to DeprecatedString 2022-12-06 08:54:33 +01:00
LibRegex Everywhere: Use C++ concepts instead of requires clauses 2022-12-09 11:25:30 +00:00
LibSanitizer LibC: Properly implement stack protectors 2022-11-01 14:49:09 +00:00
LibSoftGPU Meta+Userland: Pass Gfx::IntSize by value 2022-12-07 11:48:27 +01:00
LibSQL LibSQL: Support launching a singleton SQLServer instance for Lagom hosts 2022-12-11 10:08:17 -05:00
LibSymbolication Everywhere: Rename to_{string => deprecated_string}() where applicable 2022-12-06 08:54:33 +01:00
LibSyntax AK+Everywhere: Rename String to DeprecatedString 2022-12-06 08:54:33 +01:00
LibSystem Meta+Userland: Add ENABLE_USERSPACE_COVERAGE_COLLECTION CMake option 2022-05-02 01:46:18 +02:00
LibTest Everywhere: Rename to_{string => deprecated_string}() where applicable 2022-12-06 08:54:33 +01:00
LibTextCodec Everywhere: Rename to_{string => deprecated_string}() where applicable 2022-12-06 08:54:33 +01:00
LibThreading AK+Everywhere: Rename String to DeprecatedString 2022-12-06 08:54:33 +01:00
LibTimeZone AK+Everywhere: Rename String to DeprecatedString 2022-12-06 08:54:33 +01:00
LibTLS Everywhere: Rename to_{string => deprecated_string}() where applicable 2022-12-06 08:54:33 +01:00
LibUnicode Everywhere: Rename to_{string => deprecated_string}() where applicable 2022-12-06 08:54:33 +01:00
LibUSBDB AK+Everywhere: Rename String to DeprecatedString 2022-12-06 08:54:33 +01:00
LibVideo Everywhere: Rename to_{string => deprecated_string}() where applicable 2022-12-06 08:54:33 +01:00
LibVT Meta+Userland: Pass Gfx::IntSize by value 2022-12-07 11:48:27 +01:00
LibWasm Everywhere: Rename to_{string => deprecated_string}() where applicable 2022-12-06 08:54:33 +01:00
LibWeb LibWeb: Check HTML parser position is equal to or after insertion point 2022-12-10 21:37:18 +00:00
LibWebSocket Everywhere: Rename to_{string => deprecated_string}() where applicable 2022-12-06 08:54:33 +01:00
LibWebView Browser+LibWebView+WebContent: Do not domain match on cookie updates 2022-12-08 17:14:48 +01:00
LibX86 Everywhere: Rename to_{string => deprecated_string}() where applicable 2022-12-06 08:54:33 +01:00
LibXML Everywhere: Rename to_{string => deprecated_string}() where applicable 2022-12-06 08:54:33 +01:00
CMakeLists.txt LibIDL+WrapperGenerator: Move IDL code into a library 2022-09-17 21:27:17 +02:00