Skip to content

Add Core UNIX domain socket support #107954

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

stuartcarnie
Copy link
Contributor

@stuartcarnie stuartcarnie commented Jun 24, 2025

This adds support for unix:// as a protocol option. It's initial use is intended to reduce latency for the Godot debugger, especially with embedded support, which sends a lot of messages on macOS. Future iterations of other platforms may also switch to a similar approach.

protocol average latency
TCP 16 µs
UNIX 4 µs

Later versions of Windows support AF_UNIX, so it could be added as an option too.

Usage

Launching the Godot editor with --debug-server=unix://tmp/godot_debug_server will use UDS instead of TCP.

Testing

Added unit tests for UDS, similar to the TCP tests.

Future

Future plan is to select unix:// automatically when running / debugging an embedded process.

@stuartcarnie stuartcarnie requested review from a team as code owners June 24, 2025 21:05
@stuartcarnie stuartcarnie force-pushed the unix_domain_socket_support branch from d64e1bc to c1b6433 Compare June 24, 2025 21:10
Later versions of Windows has support for `AF_UNIX`, so it could be
added.
@stuartcarnie stuartcarnie force-pushed the unix_domain_socket_support branch from c1b6433 to 87e471b Compare June 24, 2025 21:12
@akien-mga akien-mga added this to the 4.x milestone Jun 24, 2025
@fire fire changed the title Core: Add UNIX domain socket support Add Core UNIX domain socket support Jun 25, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants