mirror of
https://github.com/apple/container.git
synced 2026-07-12 20:47:04 +00:00
7020082723
`BuildFSSync.walk` relied on an implementation detail to skip traversing the path ".", relative to the build context dir. Specifically, it assumed that: - `URL.parentOf()` would return false when the parent argument was relative. - `URL.path(percentEncoded: false)` would preserve the relativity of an input path. These assumptions held on earlier macOS releases, so the context directory silently remained untouched. In some versions of macOS , `URL.path(percentEncoded: false)` always returns an absolute path, regardless of how the URL was created. Because of this change, `URL.parentOf()` now returns true for ".", and BuildFSSync.walk begins descending into the context directory—something it was never meant to do. This solution: - Remove the hidden dependency on `URL.parentOf()` for context‑directory detection. - Add an explicit check for "." inside BuildFSSync.walk and bail out early. Replace fragile calls to `URL.path(percentEncoded: false`) with the stable, documented `URL.relativePath`, which preserves relativity when the original path was relative.