Howard Oakley:
Now move the pointer to the right edge of the list of folder contents, just far enough to the left to avoid moving the window divider, but not so far as to fully select items from within that folder. Click there and the item will be selected, but in grey, the same as would appear if it had been fully selected but its window was no longer in focus. At this stage, the original folder will still be fully highlighted, as if nothing had been selected inside it, but you can drag that grey unfocussed selection to include other items inside the folder.
On my Mac, if I click on a file icon in the second column, the first column retains focus. The second column only gets focus if I click on a filename (or even farther to the right).
Now using the up and down arrow keys doesn’t move within the items inside that folder, but back with the fully highlighted folder. With a few of the items inside that folder in grey, so they’re selected but not in focus, press the spacebar for a QuickLook preview, and you’ll see the greyed items, not the folder that’s still fully selected to the left.
[…]
In other situations, this becomes infuriating.
In my log browser LogUI, separation of selection from focus can leave you clicking wildly without being able to select log entries.
Previously:
Bug Finder Mac macOS 27 Golden Gate Quick Look
Artem Novichkov (via Fatbobman):
Xcode also ships two command-line tools for the new format:
xcprojformatter came with the format in beta 2. It’s a formatter for
project files, like swift-format for code: it checks that a
project.xcproj file is valid and rewrites it with sorted keys and
consistent layout.
xcodeproj arrived in beta 3. It reads and edits projects from the
terminal: targets, build phases, groups, build settings, xcconfig files,
and Swift packages.
Neither is on your PATH, so run them with xcrun.
Previously:
Artificial Intelligence Mac macOS 27 Golden Gate Programming Xcode
Seth Willits (2024, bug):
There’s a deprecation warning in Xcode for URL.path that reads:
WARNING: path will be deprecated in a future version of macOS: Use path(percentEncoded:) instead
The problem is something like this:
Bundle.main.url(forAuxiliaryExecutable: "tool")!.path
… which returns the expected file path (ex: /Applications/MyApp.app/Contents/tool)
would be quickly rewritten as suggested to:
Bundle.main.url(forAuxiliaryExecutable: "tool")!.path(percentEncoded: false)
… which simply returns tool, because the URL returned is relative to a base URL.
[…]
I’ve always found it not-completely-obvious to newcomers how to get a standard file path string from a file URL and this only makes it more confusing.
There are at least three issues here:
url.path returns an absolute path, but url.path(percentEncoded: false) returned a relative path as of his writing. I tested this on macOS 26, and now it returns an absolute path. The documentation now says, “This function will resolve against the base URL.” It seems the behavior of the method changed without it being documented when, so be careful if you’re deploying to a mix of OS versions.
percentEncoded has a default value of true, whereas path did not return an encoded string. In other words, url.path() and url.path are completely different. So this is another case where Apple updated the API but flipped the default—a good way to introduce bugs.
It’s not obvious how to get the full file system path out of a URL. With NSURL, url.path was natural and did the right thing. Now, the URL equivalent is deprecated.
The natural replacement, url.path(), is wrong. So is Xcode’s recommendation of url.(percentEncoded: false).
url.absoluteURL.path(percentEncoded: false) is correct but verbose.
url.absoluteURL.standardizedFileURL.path(percentEncoded: false) is possibly better but even more verbose.
FilePath(url)?.string uses a newer API but gives you an optional, even though for a file URL it should never fail.
This seems like such basic functionality, but there’s no API that’s the obvious right choice, concise, and ergonomic.
Previously:
Cocoa iOS iOS 27 Mac macOS 27 Golden Gate Programming Swift Programming Language URL