There's a lot of excitement these days about the new APFS filesystem coming from Apple. I'm certainly excited about it; some of the promised features sound great. However, I'm going to make a bold suggestion: Don't convert your production startup disk to APFS this Fall. Wait for the new filesystem to get some more mileage before making the switch. HFS+ is still a supported configuration for High Sierra, and sticking with the tried-and-true filesystem may save a lot of headaches and wasted time.
With just over three years of development and only 13 months of exposure to the developer community, it should come as no surprise that developers (and now some end users) have run into some problems with APFS on the High Sierra beta. All of that is a normal part of Apple's beta testing process. What's not normal, however, is the lack of information available on APFS. The APFS documentation is a meager 10 pages. The documentation for snapshots: zero pages. There are literally two sentences in all of the APFS documentation that do no more than describe that snapshots are a part of APFS. More importantly, there's not really any technical "meat" to the documentation. Two pages describe the APIs that you can use to clone files, but aside from that, it's primarily a lightweight description of features. In comparison, the HFS+ documentation was 59 pages and contained highly technical descriptions of the filesystem format. Apple's documentation indicates that Apple intends to document the filesystem format, but that hasn't happened yet, and it's getting really close to go-time.
Lack of documentation is not a small problem. Basic questions remain unanswered, such as "How do I determine how much space a particular snapshot uses?" and "How can I determine if 'file Y' is a clone of 'file X'?" Here's a good one: how can I definitively determine how much space any particular folder really uses? Doesn't that sound like a weird question? What's alarming is that even Finder doesn't do this math correctly yet.
Snapshots are probably the most exciting and promising feature of APFS, but that aspect of the new filesystem simply isn't ready at all. In fact, it remains to be determined whether third-party developers will ever get access to snapshot APIs. That one needs to be repeated to sink in. The programming interface for creating and manipulating snapshots is not available outside of Apple, and there's absolutely zero documentation about how they work and how to manage them. Yet here we are, just months away from this filesystem being pushed into production on millions of Macs, and we can't use this... Read More