Commit graph

34460 commits

Author SHA1 Message Date
Ferdinand Thiessen
b2d0b4adeb
feat(files): add search view
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-07-01 19:47:25 +02:00
Ferdinand Thiessen
2521622709
refactor(files): adjust filename filter to use events
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-07-01 19:47:25 +02:00
Ferdinand Thiessen
c9997f1e0b
feat(files): add search store to handle all search related state
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-07-01 19:47:25 +02:00
Ferdinand Thiessen
d5a4eb8139
fix(files): also use open-in-files for the search view
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-07-01 19:47:25 +02:00
Ferdinand Thiessen
2c3774892e
feat(files): add getDirectoryByPath to files store
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-07-01 19:47:25 +02:00
Ferdinand Thiessen
28b2710ef0
fix(files): log aborted navigation as debug level
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-07-01 19:47:25 +02:00
Ferdinand Thiessen
af2cae740c
fix(files_sharing): scope file action id to prevent conflicts
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-07-01 19:47:25 +02:00
Nextcloud bot
eabbde31c7
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-07-01 15:17:12 +00:00
Ferdinand Thiessen
5981b7eb51
chore: apply new CSFixer rules
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>

# Conflicts:
#	apps/settings/lib/SetupChecks/PhpOpcacheSetup.php
2025-07-01 16:26:50 +02:00
John Molakvoæ
bd00b75b29
Merge pull request #53671 from nextcloud/fix/read-only-share-download 2025-07-01 15:11:06 +02:00
Ferdinand Thiessen
54f55a1a0e
Merge pull request #53429 from nextcloud/enh/opcache-checks
feat(settings): simplify OPcache checks
2025-07-01 14:26:04 +02:00
Kate
768e99eb36
Merge pull request #52976 from nextcloud/perf/realpath-custom-prop 2025-07-01 13:54:51 +02:00
provokateurin
8e580f8548
fix(files_sharing): Hide own reshares
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-07-01 08:23:53 +02:00
provokateurin
2e5ccc7123
fix(files): Always transfer incoming shares when doing ownership transfer to prevent broken reshares
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-07-01 08:23:53 +02:00
provokateurin
edf5493ae8
fix(files): Limit transferring incoming shares to the selected path
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-07-01 08:23:52 +02:00
Nextcloud bot
1fd2d4d435
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-07-01 00:12:14 +00:00
Joas Schilling
60b8384e48
Merge branch 'master' into remove-x-xss-protection 2025-06-30 21:32:22 +02:00
Arthur Schiwon
ac70e12d10
Merge pull request #52981 from nextcloud/perf/dav-preload-search-tags
perf(dav): Preload dav search with tags/favorites
2025-06-30 18:03:10 +02:00
Nextcloud bot
26c5166790
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-06-30 13:15:32 +00:00
Nextcloud bot
0abd96d1a5
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-06-30 12:54:03 +00:00
provokateurin
d55b1eeb33
fix(files_sharing): Stop hiding delete share button in advanced settings menu
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-06-30 13:01:05 +02:00
Julius Knorr
82e299401e perf(dav): Preload dav search with tags/favorites
Signed-off-by: Julius Knorr <jus@bitgrid.net>
2025-06-27 20:42:07 +02:00
Ferdinand Thiessen
7473c232c1 fix(settings): translate pronounce account property
Template string is not working.
Additionally migrate to Typescript and directly import `t` method.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-06-27 13:28:27 +02:00
Joas Schilling
57a375ce97
Merge pull request #53421 from nextcloud/fix/convert-schedulednotifications-to-timedjob
fix: make ScheduledNotifications a TimedJob and run every minute
2025-06-27 11:04:11 +02:00
Nextcloud bot
8b8006546e
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-06-27 00:23:17 +00:00
Daniel
0efd05a31c
Merge pull request #53695 from nextcloud/fix/settings-l10n
fix(settings): use correct scope for translations
2025-06-26 20:09:29 +02:00
Ferdinand Thiessen
b1282f75fa
fix(settings): use correct scope for translations
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-06-26 18:26:02 +02:00
Salvatore Martire
3cb28d5034 build: update autoloader
Signed-off-by: Salvatore Martire <4652631+salmart-dev@users.noreply.github.com>
2025-06-26 15:08:11 +02:00
Salvatore Martire
8167b07118 feat(files): automatically create directories on upload
Signed-off-by: Salvatore Martire <4652631+salmart-dev@users.noreply.github.com>
2025-06-26 15:08:11 +02:00
skjnldsv
9806a9830c feat(files_sharing): allow viewing files with download disabled
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2025-06-26 11:47:53 +02:00
Nextcloud bot
894f963804
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-06-26 00:22:42 +00:00
Kate
faf16fbfb8
Merge pull request #53677 from nextcloud/fix/noid/ignore-missing-owner 2025-06-25 15:36:00 +02:00
Ferdinand Thiessen
bed94cc31e
Merge pull request #53657 from nextcloud/chore/debug-output
fix(files): add more debug output to the filename sanitizing command
2025-06-25 15:30:52 +02:00
MichaIng
0d10c4fb33
feat(settings): simplify OPcache checks
For the overall OPcache size check, we currently compare used memory with free memory. However, `opcache.memory_consumption` is split into `used_memory`, `free_memory` and `wasted_memory`. When cached files change on disk, old entries are not replaced or removed, but remain as wasted memory, until the cache is actually full, and if their percentage is above `opcache.max_wasted_percentage`, which is 5% by default. When this happens, the engine is restarted, resetting the cache completely, like a `opcache_reset()` call.

As long as we do not consider wasted cache, recommendations based on free memory can be false. To solve this, we could count wasted memory as free memory, if it is above `opcache.max_wasted_percentage`, as the engine will be restarted as soon as needed, freeing up this wasted space. On the other hand, wasted memory below the threshold permanently blocks the OPcache, which supports counting it as used memory. Depending on the situation, instead of raising OPcache size, it could be also advised to reduce `opcache.max_wasted_percentage`. But too frequent cache resets break its purpose as well.

In my opinion, the matter is too complex to consider wasted cache correctly, and do precise recommendations, but we should focus on reducing false positives instead. What we know for sure is: if the cache is full (`$status['cache_full'] === true`), and the limit for cached keys has not been reached, the OPcache was too small to maintain free space, with wasted memory below the configured threshold, where it consumes memory permanently. Recommending to raise the OPcache size in this case, is hence as accurate as it gets. Even if 5% wasted cache could be freed, 95% used memory is still above the previous threshold for the setup check warning. And if `opcache.max_wasted_percentage` is above 5%, then the admin must have decided to change the default, deciding that system memory consumption has lower priority than preventing OPcache engine restarts.

`cache_full` can be true as well if the limit for cached keys has been reached, hence we need to merge both checks. In this case `num_cached_keys` equals `max_cached_keys` exactly, hence it is easy to differentiale whether `opcache.max_accelerated_files` or `opcache.memory_consumption` needs to be raised to address the `cache_full` state.

In practice, this change relaxes the checks: the respective limit needs to be reached 100% instead of 90%, to trigger a warning, eliminating also false alarms if a large share of the cache is consumed by wasted memory, which would be automatically freed once cache is 100% full.

Additionally, the recommendation for raising `opcache.max_accelerated_files` now says "a value higher than `max_cached_keys`", instead of "higher than `opcache.max_accelerated_files`". The actual limit, reflected by `max_cached_keys` from `opcache_get_status()`, [is a next higher value from a set of prime numbers](https://www.php.net/manual/en/opcache.configuration.php#ini.opcache.max-accelerated-files). E.g. if `opcache.max_accelerated_files` is set to 10,000 (PHP default), the effective limit is 16,229 OPcache keys. Recommending "higher than 10000" could hence lead to a settings change without effect. For an effective change, the new value needs to be "higher than 16229" instead, which is what the setup check will show in this situation, with this change applied.

Signed-off-by: MichaIng <micha@dietpi.com>
2025-06-25 15:12:40 +02:00
Maxence Lange
58c089e6f4 fix(dav): catch exception on non local account
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
2025-06-25 14:35:02 +02:00
Daniel Kesselberg
2a0cb8d37d
refactor(federation): omit app argument for error messages
As federation is an app, the LoggerInterface instance is ScopedPsrLogger and will set it.

Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2025-06-25 14:10:04 +02:00
Nextcloud bot
c93919b922
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-06-25 00:23:22 +00:00
Robin Appelman
a338f56fd5 fix: don't scan the same storage multiple times
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-06-24 16:27:03 +02:00
Ferdinand Thiessen
dffc741201
fix(files): add more debug output to the filename sanitizing command
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-06-24 11:07:45 +02:00
Kate
6bdde907ff
Merge pull request #53650 from nextcloud/version-test-new-file 2025-06-24 09:14:38 +02:00
Nextcloud bot
606951afb7
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-06-24 00:23:02 +00:00
Robin Appelman
981a65f080
fix: create new file with content when creating test files for versioning tests
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-06-23 19:07:36 +02:00
Daniel Kesselberg
0c978a1528
fix(reminders): use tablename without prefix
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2025-06-23 15:19:12 +02:00
Côme Chilliet
f980d94fad
Merge pull request #53548 from nextcloud/fixFilesRemindersJoins
fix(files_reminders): Join the reminders with the file system metadata
2025-06-23 12:24:56 +02:00
Nextcloud bot
f2ee6e2826
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-06-23 00:22:07 +00:00
Nextcloud bot
1806405dda
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-06-22 00:22:38 +00:00
Nextcloud bot
ec73f4a925
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-06-21 00:22:50 +00:00
Salvatore Martire
dc041c530c fix: make ScheduledNotifications a TimedJob and...
run every 1s.

Signed-off-by: Salvatore Martire <4652631+salmart-dev@users.noreply.github.com>
2025-06-20 18:35:48 +02:00
Joas Schilling
5f784d8695
fix(caldav): Use parameter for query to neutralize it in query diffs
Signed-off-by: Joas Schilling <coding@schilljs.com>
2025-06-20 16:24:24 +02:00
Nextcloud bot
2606f7b7dd
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-06-20 00:22:31 +00:00