Admin option to disable creation of ZIP archives
Nobody has claimed this yet.
- Dominant language
- PHP
- Stars
- 36.9k
- Forks
- 5.2k
- Avg merge
- 2d 3h
- Merged PRs (30d)
- 713
Description
How to use GitHub
- Please use the 👍 reaction to show that you are interested into the same feature.
- Please don't comment if you have no relevant information to add. It's just extra noise for everyone subscribed to this issue.
- Subscribe to receive notifications on status change and new comments.
Is your feature request related to a problem? Please describe.
If a user of my instance requests the download of a folder or multiple files, the server will attempt to create a ZIP file. If the folder or summed up file size is large, creating the ZIP file can create a significant computational burden on the server, in the worst case making the instance unusable for everyone. Since there is no visual indication of what is happening, the user doesn't even know that the server is actively zipping and will refresh and/or try to download again, which will create even more strain on the server. (The latter is a different problem, but it certainly makes this one worse).
Describe the solution you'd like
Add a check box for the admin:
- Disable creation of ZIP files from file selections and folders that are larger than ___ MB (0 prevents any ZIP files from being created).
Whenever a user clicks Download on a folder for which ZIP file creation is disabled, they should be shown a dialogue that suggests using a WebDAV client instead. This can conveniently link to:
https://docs.nextcloud.com/server/latest/user_manual/en/files/access_webdav.html
Whenever a user clicks Download for a selection of files whose combined size is larger than the threshold, multiple individual downloads should be triggered; each after the last one is complete.
Text in italics was added later
Bounty
I am willing to pay a 50€ bounty to whoever develops the proposed solution and gets it merged until 2024-07-19. Payable via SEPA/Paypal/Paydirekt.
Describe alternatives you've considered
none
Additional context
Here is a help thread on the matter:
https://help.nextcloud.com/t/disable-zipping/59279/26
Here is an outdated older issue (it could not be re-opened although there is activity on it) :
https://github.com/nextcloud/server/issues/16971
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
No files, tests, or entry points are named in the issue. Start by tracing the folder and multi-file download flows and the admin settings and dialog UI; done means enforcing the configured size threshold, avoiding oversized ZIP creation, offering the WebDAV guidance, and sequencing individual downloads.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- php
- Domain
- backend, frontend
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100