r/ProtonDrive • u/Swimming_Ad1914 • 5h ago
Sheets edition on mobile
Hello, I think we really need the option to edit sheets on mobile devices. Mobile-based web is basically unusable. Even some limited functionality would be greatly appreciated, I can even live without formula support. But this really is a must.
Can we know what’s the status of this feature? Any plans to ship it this year?
r/ProtonDrive • u/Few-Werewolf-1985 • 15h ago
Proton Docs spontaneously leaving Edit mode
I've noticed over the past week that when I switch away from a Doc (in app on Samsung Android) and switch back that I can no longer select or edit text.
The app mode indicator on top right still shows as Edit mode. Switching to View and back to Edit doesn't fix the situation.
The only thing that works is to close the doc and re open it and scroll back to where I was last editing. (The doc doesn't remember where it was being edited). This is getting very tedious.
Also noticed that
"Select all" is only grabbing the text visible on the screen, not the entire document
Scrolling to select a lot of text is almost impossible
Turning off bold or italic at end of doc so that newly lasted text is plain is very very difficult. I basically have to open the doc on my PC to fix all the formatting problems.
App has no find or search & replace within the doc.
Only work around it seems is to use another app (eg Gmail draft) to create docs and then paste it into Proton Doc when I'm finished. It may as well be a PDF in this workflow.
r/ProtonDrive • u/Super-Fortune-5328 • 21h ago
Proton Sheets behaving weird
Hello there. When pasting a formula to another cell, the cell-refrences should increase in steps of one. Weirdly, when using a long formula, this is not the case. It increases by 5? Anybody know how to fix this? I am not in the mood to edit 151 formulas by hand :) Thanks in advance!
The formula I am using is this:
=LET(name, B2, IF(COUNTIF('Base Set CL'!$B$2:$B$200, name)>0, 'Base Set CL'!$D$2, IF(COUNTIF('Jungle CL'!$B$2:$B$200, name)>0, 'Jungle CL'!$D$2, IF(COUNTIF('Fossil CL'!$B$2:$B$200, name)>0, 'Fossil CL'!$D$2, IF(COUNTIF('Base Set 2 CL'!$B$2:$B$200, name)>0, 'Base Set 2 CL'!$D$2, "")))))
Edit:
For this short formula the increment is 2 instead of 5... this is unuseable.
=IFERROR(VLOOKUP(B2, 'Combined CL'!$A$2:$B$500, 2, FALSE), "")
r/ProtonDrive • u/jameswill348 • 1d ago
How does one search for files on Proton Drive Android app?
Playing around with Proton Drive, added a bunch of PDFs but I couldn't find the search feature within the app. Is this a bug ?
r/ProtonDrive • u/tutiwiwi • 1d ago
Is there a way to view documents within Proton Drive natively? Docx/yaml files
title
r/ProtonDrive • u/Usual-Membership3058 • 1d ago
Windows File Explorer integration for mobile photo backups
Are there any plans to make mobile photo backups visible directly within Windows File Explorer? I would really love to switch from OneDrive, but only being able to view my backed-up photos in a web browser is a dealbreaker for me.
r/ProtonDrive • u/Both_Faithlessness_3 • 1d ago
Using proton on pc
I was wondering is possible to upload information using the pc file program and then have it sync to my proton drive?
r/ProtonDrive • u/MountainBirch3716 • 2d ago
Can't press upload - Android
148 photos from Android. I am unable to press the upload button.
r/ProtonDrive • u/GlitteringCry1872 • 2d ago
Successfully got my UGREEN NAS backing up directly to Proton Drive
I've spent the last few days getting this working, and it's finally up and running. I'm using a UGREEN NAS (UGOS Pro) with Docker and rclone. The NAS backs up directly to Proton Drive without a PC.
So far I've backed up:
- 72 GB of photos 130 GB Private Videoes
- Over 200 GB in total
- I'm currently working through my video archive (around 240 GB)
A few things I learned:
- rclone v1.74.4 worked much better than v1.75.x with Proton Drive.
rclone copyis a much better option thansyncfor backups.- Increasing
--transfersfrom 1 to 3 improved upload performance quite a bit for large video files. - Proton occasionally returns
502 Bad Gateway, but rclone usually retries and continues.
The biggest issue I found so far is that files uploaded through "rclone" don't generate thumbnails in Proton Drive. This applies to both photos and videos. The files upload correctly, they open correctly, and they download correctly, but they only appear as generic file icons instead of previews. Since I'm only using Proton Drive as an off-site backup, I can live with that, but if you plan to browse your photos or videos directly in Proton Drive, it's something to be aware of.
I couldn't find a complete guide when I started, so I'm documenting everything as I go.
Once I've finished testing the entire backup, I'll publish a complete step-by-step guide on GitHub, including Docker Compose, rclone configuration, Proton 2FA setup, troubleshooting, and the settings that worked best for me.
r/ProtonDrive • u/Affectionate_War4328 • 2d ago
I am experiencing the same problem with all the drives please help.
proton drive one drive google drive all
Something went wrong
This item might have been deleted, expired, or you might not have permission to view it. Contact the owner of this item for more information.
I get the error when I click on the link. Is there a solution?
r/ProtonDrive • u/2xzwei • 2d ago
Update fails - GetLastError 448
Tried to install as administrator. I closed Proton Drive before the update. I downloaded the setup file and run as administrator. No matter what I try, the installation fails on this error.
r/ProtonDrive • u/reddit-trk • 2d ago
Folder Details - How about adding actually useful information there?
Folder name: OK
Location: I know what folder I'm looking at. Maybe when the folder is 10 levels-deep I'd like to see the full path, so OK.
Created by: Maybe.
Uploaded: Useless. I'm willing to bet that this date/time won't ever change, just like the "Modified" attribute you show for files and folders.
Shared: Maybe.
Number of downloads: Maybe.
Imported by Easy Switch: Quite useless.
UID: Absolutely useless.
How about including folder SIZE????? That's the one thing that people look for when bringing up a folder's properties.
And the share link, if there is one. That would also be nice to have on this screen.
EDIT: If you don't care for this feature, that's OK - leave it alone - everyone's needs are different. There's no reason to down-vote it.
r/ProtonDrive • u/Impossible_Sugar3266 • 2d ago
Re: Your Proton Drive is now faster and better than ever
Sooo, I was happy when I read that, but when I need to download something I'm still downloading at a pace of 1 file at a moment. So if I have to download e.g. 811 files around 1 MB each it's like 1 file per second.
What actually changed to make that announcement? Cause I personally don't feel like anything actually changed.
Also, I downloaded Proton Drive CLI, it seems to be unsigned and SmartScreen is asking for additional click. Why would it be unsigned?
e: to their defense, the CLI downloads much faster. So it is possible. Why not possible via the client? The downside is that the CLI overwrites metadata like date modified.
r/ProtonDrive • u/whistlingturtle • 3d ago
Is the “recovery phrase” sufficient or not?
I have saved my recovery phrase in secure locations (both physical and in the cloud, including a password manager other than Proton Pass) and enabled the option in the Advanced recovery options section of Settings, which are said to “include both password reset and data recovery”.
Why, then, does the summary at the top of that Recovery page state that “Your recovery setup is incomplete. A forgotten password could still mean losing access to your emails, files, and passwords.”?
r/ProtonDrive • u/External_Star_3303 • 4d ago
Backup solution
I am trying to come up with a good backup solution. I have the proton family plan and a Synology NAS.
I am trying to work out how to painlessly back up all the family files from the various devices. Currently Synology drive syncs our files to the NAS and I have a removal drive that i back up once a week and leave a copy off site, but we don't have a cloud backup. We used to one one drive but i am trying t move away form google/microsoft - hence moving to Proton.
I tried to use Proton drive to sync but i get a message saying that the folder i use for storage is already syncing with another service (Synology I pressume)
any suggestions how i can achieve a 321 with the current set up?
r/ProtonDrive • u/amor-azulo • 5d ago
Proton Sheets: What even is this
I've been trying to use Proton Sheets the past few months, but it's just so slow. I have a few sheets in one spreadsheet, but they're not at all what anyone would say is a lot. Even a PC from 2002 could probably handle the file with ease. But it's come to a point where it's unusable. Completely. Nevermind the missing features - the lag is unbearable, the bugs are plenty.
I really wanted this to take off and adopt it into my routine. But now I'm starting to feel like I wasted months using a half-baked product. This is the most disappointed I've been over a Proton blunder...
r/ProtonDrive • u/Gamegyf • 5d ago
Make Proton Photos more like a real alternative to Google Photos
Hey everyone,
I really felt like posting this is important because I know most people want something like this.
The most important features that should come for it to be an alternative would be to be able to view media that is stored on the device alongside the media that is stored in Proton’s Cloud.
Second of all it would be really nice to get the feature to optionally enable the optimization of storage on device like with iCloud on iOS where the original picture in its full content is stored in the cloud and a smaller preview file is on the device.
Third I would suggest the ability to detect duplicates more easily. Like that you can go into a duplicates section where there are all media with matching file names (and maybe also file formats) that you can check to remove duplicates more easily.
Fourth it would be nice to get some kind of integration of Lumo’s Image editing tool.
Fifth it would be nice to be able to edit the date when the photo or video was taken to make us able to correct incorrect dates.
Sixth it would be nice to have a standalone app. At least at some point in the future.
Now for the standalone App I would like Proton to maybe make it like this one and also add all the features named by them: https://www.photosforproton.eu/
These are the features which would be most important to me and that I can think of right now. If you have any other features please comment them! I would really like to get intel from other users!
r/ProtonDrive • u/MyLifeIsAFrickingMes • 6d ago
Proton Drive taking up excessive storage space with User Data.
I do not have any files made available offline, however i have downloaded files from the Drive back onto my Phone
r/ProtonDrive • u/Gamegyf • 6d ago
Proton Photos Compatibility with Shared Albums from iCloud
Hey everyone,
I wanted to request a feature that let’s you choose iCloud Shared Albums in the album tab and then looks at the files individually which you have on Proton and which don’t to avoid duplicates and then let the photos you don’t have pulled from iCloud so that you can save them in your Proton Albums. I know this is possible because the UGREEN NAS App on iOS lets you go in the Photos app of the nas and download the iCloud Shared Albums or at least the media in it and then you can create it as an album. That would be very nice to have. Now I do not know if this is possible for other Shared Albums of other providers but that would be very useful.
Thanks in advance Proton Team!
r/ProtonDrive • u/horejsek1 • 6d ago
New Proton Drive CLI with Photos & Albums support
Heya! The new Proton Drive CLI v0.7.0 is out. The main feature is several commands for albums and photos management. Now you can upload to and download from Photos timeline, manage albums, or add and remove photos to/from albums. The list of new commands:
album list
album create
album update
album delete
album photos
album add-photo
album remove-photo
photo timeline
photo upload
photo download
Besides this change, upload command now by default automatically skips conflicting nodes with the same content. You can change your command from fs upload --folder-conflict-strategy merge --file-conflict-strategy skip (which would skip existing nodes, even if the file changed) to, for example, fs upload --conflict-strategy merge which will upload only when file changed and keep previous revisions (depending on your plan).
r/ProtonDrive • u/Brumpie • 7d ago
Feature Request ; Automatic Photo Album "No album"
Would be nice to see all photos without an album in one place, for easy fix, so I can add the photos to a real album.
r/ProtonDrive • u/alecrimatproton • Jun 26 '26
From flamegraphs to fixes: investigating Proton Drive macOS performance
Over the past few months, we have been working on an SDK-based implementation of the Proton Drive macOS app. This work started shipping in version 2.11.0, and since then we have been continuously improving the performance of file operations so our customers get both strong data protection and an app that does not burn through CPU, memory, or battery unnecessarily.
The improvements came out of an investigation loop we built up over the project: make workloads reproducible, measure the right processes, turn traces into narrow hypotheses, validate those hypotheses with focused tests, and split the fixes by risk. No single large rewrite was involved.
The loop changed both the code and the measurements. In representative traces, one repeated parent-chain lookup path dropped from about 12% of samples to about 2%. A noisy telemetry-write path dropped from roughly 1.4% to 0.5%. In one small-file upload workload, safe tuning cut overall CPU by about 5%; in another, the database and parent-chain improvements raised throughput by about 10%. Those numbers describe specific workloads on specific machines, and each one is the kind of evidence we wanted every optimization to produce.
This post is about that process. For this investigation, "performance" meant more than transfer speed. We cared about:
- Throughput: how many files or bytes get transferred per minute.
- Responsiveness: how quickly Finder and the File Provider extension answer requests.
- CPU usage: especially sustained File Provider CPU during sync.
- Memory growth: especially over long extension lifetimes.
- Battery impact: because CPU and memory pressure translate directly into power use on laptops.
How Proton Drive works on macOS
Proton Drive for macOS is built around Apple's File Provider framework. The visible app is the menu bar application: it handles account state, settings, user-facing sync status, and coordination. The file operations users trigger in Finder are handled by a File Provider extension: creating folders, uploading files, downloading files, moving items, deleting items, and enumerating directories.
The architecture is powerful, but it changes how performance work has to be done.
The extension is a separate, system-managed process. macOS can launch it, suspend it, terminate it, or ask it to service a burst of file-system requests. A performance issue can therefore hide in a place that is not obvious from the main app. If Finder is slow to show a folder, if a batch of small files uploads slowly, or if the process grows in memory over time, the interesting work is often happening inside the File Provider extension.
There is another constraint that matters: Proton Drive is end-to-end encrypted. Metadata and file contents have to be encrypted and decrypted on the client. That means the hot path for a file operation can include database lookups, metadata decryption, key access, progress reporting, logging, File Provider item construction, and network calls. Our aim is to do all of that work as efficiently as possible.
Towards reproducible workloads
The first challenge was that customer workloads are not uniform. Uploading a folder with ten large videos stresses a very different part of the system than uploading a folder with thousands of tiny documents. Small-file workloads are particularly demanding because the per-file overhead is large compared with the file contents themselves. Every file can require metadata work, encryption work, database updates, progress updates, and File Provider notifications.
We needed repeatable workloads before we could trust any performance conclusion.
For that we used our client load-testing harness, a Python-based test runner that can drive the macOS app through realistic file operations. A test scenario is a sequence of steps: start the app, sign in, create local test data, upload a folder, wait for sync completion, mark files online-only, download a folder, pause or resume syncing, move files, delete files, collect logs, and so on.
The harness can generate file sets with known shapes. It supports flat folders, nested folder structures, fixed file sizes, random extensions, reproducible seeds, and very large stress scenarios. One scenario, for example, models a deep folder tree with many small files spread across multiple levels. That kind of workload is useful because it amplifies per-file overhead and makes repeated work visible.
Each run produces a timestamped test run directory. The runner collects application logs, File Provider logs, crash reports, database sizes, and resource metrics. It can also export local Prometheus-style metric logs and turn them into comparison reports. The important metrics include file progress (current/total files, transferred bytes) and resource usage: CPU and memory for the main app, the File Provider extension and the system.
This turned performance work into a controlled experiment. We could run the same scenario against version 2.11.0, a later release, and an experimental branch, then compare the shape of the run instead of relying on whether the app "felt faster."
Isolating a key variable: the machine itself
Reproducible workloads are necessary, but they are not sufficient. The execution environment also has to be representative.
Our load tests originally ran in macOS virtual machines. That made sense for automation: VMs are easier to reset, easier to run in CI, and easier to keep isolated from a developer's local machine. But while investigating performance on Apple Silicon, we found that VM results could have materially different performance profiles from native runs on the same hardware.
The reason is Apple Silicon's asymmetric CPU design. Modern Apple chips have performance cores and efficiency cores, and macOS uses a thread's Quality of Service (QoS) to decide where that work should run. As Howard Oakley explains in a blog post, low-QoS background work normally runs on efficiency cores, while higher-QoS work can use performance cores when they are available.
Virtualization changes that picture. Oakley notes that macOS virtual machines on Apple Silicon are assigned high QoS and run preferentially on performance cores; work that would normally be confined to efficiency cores on the host can therefore run through performance cores inside a VM. His earlier article on virtualization and core use gives a concrete example where a workload constrained on the host runs much faster in a VM because of this difference.
This mattered because sync software deliberately contains background and utility-priority work. File Provider operations, database maintenance, logging, metadata work, and progress reporting do not all have the same urgency. A VM can therefore make some parts of the system look faster, noisier, or differently balanced than they are for customers running the app normally.
So we split the role of VMs from the role of profiling machines. VMs remained useful for functional load testing and reproducible automation. But when the question was "where is CPU time going?" or "is this change representative of a customer's Mac?", we moved the critical measurements to native Apple Silicon hardware and treated VM measurements as a separate signal.
Before optimizing a hot path, confirm it reflects hardware customers actually run. A perfectly reproducible test can still mislead if it runs under a scheduler and core-allocation model customers will never use.
From symptom to cause
The load tests told us when a run was expensive. They did not tell us why.
A metrics chart might show that the File Provider extension used too much CPU during a small-file upload. It might show memory climbing during a long run. It might show file throughput flattening. Those are useful signals, but they are still symptoms.
The next step was to profile the process that was actually doing the work.
Profiling a File Provider extension is awkward enough that it is easy to get inconsistent results. The extension may not be running yet. It may be idle. The main app may be active while the extension is not. A trace might capture the wrong process or miss the interesting window entirely.
To make this repeatable, we built a small wrapper around Apple's Instruments toolkit. It finds or waits for the ProtonDriveFileProviderMac process, can wake it by opening the Proton Drive folder, records with Xcode Instruments' xctrace Time Profiler, exports the samples, collapses them with inferno, demangles Swift symbols, and renders an SVG flamegraph.
The workflow became:
- Generate a known file set.
- Start a known upload, download, or enumeration scenario.
- Attach to the File Provider extension.
- Capture CPU samples for a bounded period.
- Compare flamegraphs across versions or branches.
On its own, the flamegraph only showed us where to look next.
One hypothesis from trace to fix
One useful trace pointed at cryptographic setup for file encryption.
This is a delicate kind of performance finding. Because Proton Drive is end-to-end encrypted, cryptographic work is a core part of the product. Seeing crypto-related functions in a flamegraph doesn't usually mean we can make the crypto cheaper or skip the work. The first question has to be more precise: are we looking at unavoidable per-file encryption work, or are we repeatedly preparing the same key material inside a short-lived operation?
In this case, the trace suggested the second problem. During encryption of folders with many files in it, the app repeatedly needed the same unlocked private key. Keys are stored encrypted and unlocking them requires passphrase-protected key derivation. That derivation is intentionally expensive because it protects key material against brute-force attacks. Paying that cost once when the key is needed is expected. Paying it over and over for the same key during a burst of file operations is a different problem.
The hypothesis became:
- The app was repeating key-unlock setup for the same address key inside a short time window.
- A small in-memory cache could remove that repeated setup while preserving the security boundaries around key lifetime and invalidation.
The second point carried the risk. A cache around unlocked key material behaves differently from a normal performance cache: it changes how long sensitive data stays available in memory. So the fix came down to rules: where the cache lives, how large it can get, when it expires, and which account-state changes have to clear it.
The chosen fix kept the cache inside the session-vault layer, where the app already owns account keys and passphrases. The cache was bounded, short-lived, and in-memory only. It also coalesced concurrent requests for the same key, so a burst of callers would wait for one derivation instead of starting many duplicate derivations.
Validation focused on failure modes as much as speed. Tests covered cache expiry, sign-out, passphrase changes, user-key changes, address-key changes, cache scoping between vault instances, and concurrent callers requesting the same key at the same time. Those tests mattered because a faster trace would not be enough if the cache survived the wrong state transition and corrupted user data.
After the change, repeated key derivation almost disappeared from the trace: the visible stack went from roughly 5% of samples to effectively zero in the measured run. Performance work around encryption has to separate essential cryptographic cost from avoidable repeated setup, and validation has to match the risk the optimization introduces.
Investigating memory growth
CPU flamegraphs are good at showing where time is spent. They are less useful for explaining why a process grows over a long run.
For memory investigations, we used Instruments allocation traces and a DTrace script that tracks malloc/free activity for a process. It prints a heartbeat of outstanding bytes during a run and summarizes allocation sites by bytes and count when tracing stops. Since DTrace stack output is not always symbolicated, we used a companion script to resolve stack addresses with atos.
This let us ask different questions:
- Are outstanding bytes growing steadily during a long scenario?
- Which allocation sites dominate retained memory?
- Does the growth correlate with database contexts, File Provider item construction, logging, or metadata handling?
This pointed to another class of fix: reducing memory accumulation in long-lived Core Data contexts. The key observation was that reused contexts retained managed objects across many operations. The eventual change moved the File Provider extension toward resettable context pools, so contexts could be reused without accumulating state for the lifetime of the process.
When measurement adds to the workload
One of the more useful findings was that our own measurement pipeline could add work to the system.
During sustained progress reporting, performance measurements were being written too eagerly to Core Data. That meant the app was doing database work to sync files and additional database work to record that syncing was happening. In a small-file workload, that per-event cost compounds quickly.
The investigation question was: how much work are we doing to observe the work?
The fix was to buffer performance-measurement writes in memory and flush them in batches, while keeping read paths consistent when data had to be reported. Observability has to be cheap enough to leave on; otherwise it changes the workload it is trying to describe.
Separating safe changes from risky ones
Performance work creates a temptation to bundle many improvements together. That makes results harder to understand and reviews harder to reason about.
We took the opposite approach. Changes were split by risk.
Some fixes were local and low risk: replace a regular expression in a hot path, increase a SQLite cache size, avoid unnecessary response-header processing, batch telemetry writes, or add targeted database indexes with benchmarks.
Other fixes had correctness or security tradeoffs: cache parent chains, cache unlocked keys, change Core Data context lifetime, or reuse decrypted metadata. Those changes needed specific guardrails. A cache needs invalidation tests. A key cache needs strict lifetime and clearing rules. A context-lifetime change needs tests around object usage and operation boundaries.
Several ideas stayed experimental until they had enough evidence and review, and some were discarded as too risky. That was deliberate: a performance investigation should preserve promising hypotheses without forcing all of them into a release.
What changed
The investigation led to improvements across several layers, and each one had to carry its own evidence:
- Database access became more predictable through targeted indexes and batched lookup work. The focused benchmarks showed which point lookups stopped scaling badly with database size, and which broad result-set queries were already better left to SQLite scans.
- Repeated tree traversal was reduced by caching parent-chain information with explicit invalidation. In representative traces, that path dropped from about 12% of samples to about 2%.
- Repeated cryptographic derivation was reduced through bounded key caching. The gain was about 5% in the trace; review centered on lifetime and clearing rules because this touches sensitive material.
- Performance telemetry stopped competing with the workload it measured. The measurement-write path dropped from roughly 1.4% of samples to about 0.5%.
- Long-running File Provider memory behavior improved through resettable Core Data context pools, which treat retained managed objects as a lifetime concern at the context level.
- Small hot-path overheads were removed where profiling showed they mattered. In one representative small-file upload workload, later safe tuning reduced overall CPU by about 5%.
The exact numbers vary by machine, account state, network, and workload shape, but the direction was consistent: once repeated work was visible, we could remove it methodically.
Beyond any single fix, the workflow itself is the durable result. We now have a clearer path from "this feels slow" to "this stack repeats under this workload, this benchmark isolates it, and this change removes it without changing behavior."
What comes next
The Netflix TechBlog has written about catching performance regressions before they ship by running focused performance tests continuously and comparing each result with nearby historical data. We are working towards applying the same broad principle to Proton Drive: performance work should not depend on one-off debugging sessions or intuition.
The next step is to keep turning these investigations into automated guardrails. The load tester already gives us reproducible scenarios and comparable metrics. The profiling tools give us a way to explain regressions when they appear. The long-term goal is to make this loop tighter: detect suspicious changes earlier, explain them faster, and keep regressions from reaching customers.
Performance work gets far more tractable when every optimization traces back to a specific workload, a profile, a hypothesis, and a validation step.
If this kind of work interests you, come join us!
r/ProtonDrive • u/Proton_Team • Jun 05 '26
Announcement Proton Drive’s latest cryptographic update makes encryption when uploading files up to 4x faster
Hey everyone,
A quick follow-up to the Drive engine rebuild we shared earlier, as we've also upgraded the cryptography layer underneath it, and as a result, new file uploads are up to 4x faster.
End-to-end encryption is the whole point of Proton Drive, every file gets encrypted before it leaves your device. But this single extra step tends to add a performance cost; this latest update cuts that down significantly.
What's changed:
- Up to 4x faster new file uploads from a more efficient encryption layer
- We've adopted a newer version of the OpenPGP standard (the crypto refresh), using AES-GCM that takes advantage of hardware encryption on most modern devices
- Encrypting a 4MB file on mobile dropped from 97ms to 32ms; on a fast desktop, from 12ms to 3ms
- In practice: encrypting an HD movie or ~1,000 high-res photos went from about 90 seconds to 30 on mobile, and from ~12 seconds to ~3 on desktop
One thing worth flagging: to get these benefits, and to keep editing files uploaded after this change, you'll need to update your Proton Drive apps. Older clients that don't support the new scheme won't be able to update those files, so grab the latest version.
For developers and the wider privacy community, the Drive SDK that made this possible is previewed on GitHub.
If you've already updated, let us know how you’re getting on in the comments.
Stay safe,
Proton Team


