fix: resolve AF_UNIX path-too-long failures on macOS - #562
Open
Swayam-arora-2004 wants to merge 1 commit into
Open
fix: resolve AF_UNIX path-too-long failures on macOS#562Swayam-arora-2004 wants to merge 1 commit into
Swayam-arora-2004 wants to merge 1 commit into
Conversation
On macOS, AF_UNIX socket paths are limited to 104 characters.
pytest's tmp_path generates paths up to 121 chars, causing
OSError('AF_UNIX path too long') in two tests that create Unix
domain sockets. The failures were silent — the OSError was caught
and treated as a connection error.
Two fixes:
- Add a shared short_tmp_path fixture in conftest.py that uses
tempfile.mkdtemp() to produce short (~55 char) paths.
- Switch the two affected tests to use short_tmp_path for their
socket paths only; all other temp files stay on tmp_path.
Bonus: serve_first_prompt_socket now accepts an optional ready
threading.Event that fires after listen() (not bind()), making
callers immune to the bind-vs-listen race on macOS schedulers.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
On macOS, AF_UNIX socket paths are limited to 104 characters. pytest's tmp_path generates paths up to 121 chars, causing OSError('AF_UNIX path too long') in two tests that create Unix domain sockets. The failures were silent — the OSError was caught and treated as a connection error.
Two fixes:
Bonus: serve_first_prompt_socket now accepts an optional ready threading.Event that fires after listen() (not bind()), making callers immune to the bind-vs-listen race on macOS schedulers.