Desktop Client 4.0.0 for macOS is here... questions? (VFS)

I just received a notification that the macOS 4.0.0 client is available, and as I usually do, updated it. Seems to work fine, thanks[1]!

However, I noticed it seemed to be a larger download than usual, and that and the major release versioning got me to try to understand what’s new, and how I should consider making use of new features, specifically VFS[2].

I’ve read the page on the Virtual Files Client, and I have to admit it seems like there’s some context that I don’t quite get, viz,

  1. How is the new VFS client functionally different from what I am running now? In terms of end-user experience in general?
  2. What advantages does the new VFS client afford that the “Classic” client does not support?
  3. Are there issues or is there any advice about this being a new codebase about adopting it? Full speed ahead or wait for bugs to be surfaced? Are any reasons for concern of “naive” apps or those that (probably) do quite a bit of their own i/o management (I’m thinking Adobe Creative Cloud, for example.)
  4. What’s the migration process?

The page on this referenced above is great, but this is almost like a (why should you use this?) set of questions.

I’m guessing the advantages of this are storage utilization on the client and performance - access to, but not necessarily having to locally store everything needed on the server. I would also be curious about whether there is preexisting macOS code for VFS that the client is leveraging or whether that’s an interface that was developed by the team. (Oh, and the documentation references a notify-push app that I don’t see as available in the Stable/Containers version of the server distribution.)

Thanks for any info you can point me to!

Notes:

  1. And, thanks many times over for this work, I’m extremely appreciative of everything this project does for us!
  2. I don’t even know whether this is the first release of VFS for the macOS client - but certainly that seems to be a big aspect to it.
  1. How is the new VFS client functionally different from what I am running now? In terms of end-user experience in general?

You do not have to synchronize everything to your local disk as it used to be, you already noticed that. Content is synchronized on demand like with (for example) iCloud Drive.

I would also be curious about whether there is preexisting macOS code for VFS that the client is leveraging or whether that’s an interface that was developed by the team.

The “VFS” (actually called “file provider extension” on Apple platforms) is built upon the File Provider framework by Apple which meant for the purpose of integrating cloud storage seamlessly and transparently into your local file system. Such technology (as also found on other platforms) overcomes certain conceptual and fundamental problems classic file synchronization solutions have.

Our file provider extension has been around for a while already but got substantially more reliable with the latest release and we know and have a plan where to further improve.

Thanks, @iva.horn for that information; it’s very helpful and appreciated.

What (would) happen if I install the new client and point it to the same location on my client as duplicated from the server by the current client? Or would you suggest that I either choose a new location and run for a while to be sure that I’m comfortable with the functionality - or else just kill off the current directory and have the new client re-populate it?

In other words, looking for advice and a confidence check.

(I do have other apps syncing things to that location, so it’s a bit tricky.)

Any idea what/where that notify-push app is?

What (would) happen if I install the new client and point it to the same location on my client as duplicated from the server by the current client?

Classic sync and file provider extension are two different solutions independent from each other and (due to platform restrictions imposed by Apple) cannot run simultaneously. In the latter, you cannot choose any location to synchronize to because the system defines it.

You can leave the current classic sync directory in place and disable that synchronization, it is irrelevant for the file provider extension.

Any idea what/where that notify-push app is?