Skip to content

fix(tests): skip the 1023-byte guest path check on macOS hosts - #8284

Merged
oneandonlydean merged 1 commit into
boykopovar:mainfrom
mugurc:fix/tests-path-length-macos
Oct 23, 2026
Merged

oneandonlydean merged 1 commit into
boykopovar:mainfrom
mugurc:fix/tests-path-length-macos

Conversation

@mugurc

@mugurc mugurc commented Oct 20, 2026

Copy link
Copy Markdown
Contributor

What

guest_path_name_length (#8164) fails on macOS at its check that a guest path of exactly 1023 bytes is not too long. The guest check passes it; the host does not. macOS fails a host path of 1024 bytes or more with ENAMETOOLONG, and the host form of a guest path is the root directory followed by the guest path, so a 1023-byte guest path is always longer than that there. In the test the root is the 73-byte build directory, so the host path has 1097 bytes. Part of the macOS series announced on #1 (#1 (comment)).

  • The test skips that one check on macOS. Every other check still runs there, including the 1024-byte path that must fail.
  • A new debt entry gives the macOS limit. The entry for guest path names already says that the host's own limit applies below FreeBSD's and gives the Windows one; it is at the 1000-character limit, so the macOS one has its own entry.

Tested

macOS 26.5.1, Apple M5 Max, Apple clang 21, x86-64 build under Rosetta 2. The libraries do not link on macOS without the rest of the macOS series, so the run is on main 3fd1cc3 with the series (ci/macos-series-2 on my fork), #8279, the open macOS fixes #7524 and #7937, and three changes from #7332.

Checklist

  • Based on current main; no other open PR implements the same functions
  • One topic per PR; follow-ups go in a new PR
  • No comments in code except technical debt
  • Unimplemented paths throw (NotImplemented_nid_no_patch); silent stubs are listed under Silent stubs in their library's technical debt file
  • No notes, investigation .md files or images added to the repository (attach them to this PR)
  • New third-party code is a submodule built from source (none added)
  • Generic behaviour, not specific to one title
  • Depends on: none
  • Fixes: none
  • Unblocks: none
  • GPUs tested: n/a
  • AI-assisted: yes

macOS fails a host path of 1024 bytes or more with ENAMETOOLONG, and the
host form of a guest path is the root directory followed by the guest
path, so a guest path of 1023 bytes, which FreeBSD accepts, fails there
under any root directory. guest_path_name_length skips that check on
macOS, and a debt entry for guest path names gives the macOS limit.
@github-actions

github-actions Bot commented Oct 20, 2026 •

Copy link
Copy Markdown

Other open pull requests touch the same code. Merging one will break the other, or both implement the same thing. If this one builds on them, list them in Depends on.

Pull request Conflicting files (lines on main) Same exports Same new files
PR 9873 docs/dev/debt/libc.md L77

Some comparisons could not be completed because a pull request conflicts with the base branch. Review these shared files manually before concluding that there is no overlap.

Pull request Shared files not compared
PR 3965 docs/dev/debt/libc.md
PR 5021 docs/dev/debt/libc.md
PR 5303 docs/dev/debt/libc.md
PR 7081 docs/dev/debt/libc.md
PR 7648 docs/dev/debt/libc.md
PR 7715 docs/dev/debt/libc.md
PR 8150 docs/dev/debt/libc.md
PR 8306 docs/dev/debt/libc.md
PR 8965 docs/dev/debt/libc.md
PR 9133 docs/dev/debt/libc.md
PR 9408 docs/dev/debt/libc.md
PR 9447 docs/dev/debt/libc.md
PR 9526 docs/dev/debt/libc.md
PR 9527 docs/dev/debt/libc.md
PR 9552 docs/dev/debt/libc.md
PR 9669 docs/dev/debt/libc.md
PR 9929 docs/dev/debt/libc.md

@ycbuzi

ycbuzi commented Oct 21, 2026

Copy link
Copy Markdown
Contributor

Windows run of 381c3b9 merged onto main ec7eacc (f24e2dec3a, clean), one of the hosts the description lists as not run. Windows 11 Home 10.0.26200, MinGW-w64 GCC 15.2.0 (ucrt-posix-seh r7), Release, BUILD_TESTING=ON.

Built guest_path_name_length_tests with no errors or warnings; ctest --repeat until-fail:2 on guest_path_name_length: passes on both repeats. Not run: Linux.

@oneandonlydean oneandonlydean self-assigned this Oct 23, 2026
@oneandonlydean
oneandonlydean merged commit f59f545 into boykopovar:main Oct 23, 2026
10 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants