Commit graph

87001 commits

Author SHA1 Message Date
Robin Appelman
f3830d071c
fix: skip owner when updating for added or removed share
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-04-24 18:17:45 +02:00
Robin Appelman
f42bfebcc0
fix: don't trigger recursive SharesUpdatedListener when share is moved on validate
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-04-24 18:17:44 +02:00
Robin Appelman
a05a3b9005
fix: only update share for the user who moved the share
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-04-24 18:17:44 +02:00
Robin Appelman
cf06ebf999
test: more tests for UserMountCache
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-04-24 18:17:43 +02:00
Robin Appelman
ac9da6eaa0
perf: only load possible results in UserMountCache::getMountForPath
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-04-24 18:17:43 +02:00
Robin Appelman
41e6124dcc
perf: only load a single mount at a time when checking for share conflicts
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-04-24 18:17:43 +02:00
Robin Appelman
16a422e58d
fix: fix UserHomeSetupListener disabling with nested events
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-04-24 18:17:42 +02:00
Robin Appelman
cb8fb349d2
fix: don't trigger on-setup share update from inside the share listener
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-04-24 18:17:42 +02:00
Robin Appelman
1aa347dc76
fix: check share target parent in userfolders mount
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-04-24 18:17:41 +02:00
Robin Appelman
aedc57afe7
fix: add optional user param to IUserMountCache::removeMount
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-04-24 18:17:41 +02:00
Robin Appelman
a1b4a6b6b7
fix: log when user is marked as needing share mount refresh
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-04-24 18:17:40 +02:00
Robin Appelman
940a68649a
test: add test for UserHomeSetupListener
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-04-24 18:17:40 +02:00
Robin Appelman
f7803905fe
fix: default user_needs_share_refresh to true
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-04-24 18:17:40 +02:00
Robin Appelman
3385cd4342
fix: move mountpoint when transfering share
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-04-24 18:17:39 +02:00
Robin Appelman
e5f77f004e
fix: fix moving mountpoints
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-04-24 18:17:39 +02:00
Robin Appelman
e7fcb6c7f5
fix: handle share moves
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-04-24 18:17:38 +02:00
Robin Appelman
adb8ed914f
test: add more integration tests for share mount handling
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-04-24 18:17:38 +02:00
Robin Appelman
7b3457003c
fix: update shares on group delete
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-04-24 18:17:37 +02:00
Robin Appelman
1a3da80932
feat: add output options and '--cached-only' to list mounts command
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-04-24 18:16:44 +02:00
Robin Appelman
9853bc880d
fix: improve performance of handling delete shares
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-04-24 18:16:43 +02:00
Robin Appelman
9c399ba4ac
feat: use time-based cutoff for share updating instead of count
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-04-24 18:16:42 +02:00
Robin Appelman
b57959d5d2
test: add some tests for ShareRecipientUpdaterTest
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-04-24 14:39:54 +02:00
Robin Appelman
8680d4446b
test: add some tests for SharesUpdatedListenerTest
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-04-24 14:39:53 +02:00
Robin Appelman
1b84a85558
test: add reusable mock implementation for IUserConfig
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-04-24 14:39:53 +02:00
Robin Appelman
3a50ee887b
test: add reusable mock implementation for IAppConfig
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-04-24 14:39:52 +02:00
Robin Appelman
0da86facc5
fix: clear in-memory cached mounts for user when adding/removing mounts
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-04-24 14:39:52 +02:00
Robin Appelman
68448a4a42
feat: export getData for public FileInfo interface
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-04-24 14:39:51 +02:00
Robin Appelman
8de080580b
fix: disable share resolve postpone in tests
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-04-24 14:39:51 +02:00
Robin Appelman
9422634185
test: add test for delayed share validate
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-04-24 14:39:50 +02:00
Robin Appelman
6f253302ae
feat: postpone receiving share validation after processing a certain number of users
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-04-24 14:39:49 +02:00
Robin Appelman
c1a56cfb99
chore: move share recipient validation logic to a separate class
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-04-24 14:39:48 +02:00
Robin Appelman
4e6975cc11
feat: add event for user home mount having being setup
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-04-24 14:39:48 +02:00
Robin Appelman
491fb8d483
fix: only validate mounts for new share
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-04-24 14:39:46 +02:00
Nextcloud bot
dfa407ca55
fix(l10n): Update translations from Transifex
Some checks are pending
CodeQL Advanced / Analyze (actions) (push) Waiting to run
CodeQL Advanced / Analyze (javascript-typescript) (push) Waiting to run
Integration sqlite / changes (push) Waiting to run
Integration sqlite / integration-sqlite (master, main, 8.4, main, --tags ~@large files_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, capabilities_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, collaboration_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, comments_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, dav_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, federation_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, file_conversions) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, files_reminders) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, filesdrop_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, guests_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, ldap_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, openldap_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, openldap_numerical_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, remoteapi_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, routing_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, setup_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, sharees_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, sharing_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, theming_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, videoverification_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite-summary (push) Blocked by required conditions
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2026-04-24 07:07:23 +00:00
Josh
8b4bd70327
Merge pull request #59617 from nextcloud/fix/store-readonly-appfolder
Some checks are pending
Integration sqlite / changes (push) Waiting to run
Integration sqlite / integration-sqlite (master, main, 8.4, main, --tags ~@large files_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, capabilities_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, collaboration_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, comments_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, dav_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, federation_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, file_conversions) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, files_reminders) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, filesdrop_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, guests_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, ldap_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, openldap_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, openldap_numerical_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, remoteapi_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, routing_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, setup_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, sharees_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, sharing_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, theming_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, videoverification_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite-summary (push) Blocked by required conditions
Psalm static code analysis / changes (push) Waiting to run
Psalm static code analysis / static-code-analysis (push) Blocked by required conditions
Psalm static code analysis / static-code-analysis-security (push) Blocked by required conditions
Psalm static code analysis / static-code-analysis-ocp (push) Blocked by required conditions
Psalm static code analysis / static-code-analysis-ncu (push) Blocked by required conditions
Psalm static code analysis / static-code-analysis-strict (push) Blocked by required conditions
Psalm static code analysis / static-code-analysis-summary (push) Blocked by required conditions
fix(installer): throw an exception only if app store is also enabled
2026-04-23 20:01:17 -04:00
Josh
874f192472
Merge pull request #59650 from nextcloud/usermountcache-delete-hash
fix: use proper index when deleting mounts
2026-04-23 19:57:48 -04:00
Josh
66f0d0a8de
Merge pull request #59679 from nextcloud/jtr/fix-loadApps-autoloader-type-inconsistency
fix(apps): filter autoloading registration by app type in loadApps
2026-04-23 19:56:37 -04:00
Robin Appelman
14a067e739
Merge pull request #59652 from nextcloud/mounts-index-swap-path_root
Some checks are pending
Integration sqlite / changes (push) Waiting to run
Integration sqlite / integration-sqlite (master, main, 8.4, main, --tags ~@large files_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, capabilities_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, collaboration_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, comments_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, dav_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, federation_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, file_conversions) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, files_reminders) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, filesdrop_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, guests_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, ldap_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, openldap_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, openldap_numerical_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, remoteapi_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, routing_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, setup_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, sharees_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, sharing_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, theming_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, videoverification_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite-summary (push) Blocked by required conditions
Psalm static code analysis / changes (push) Waiting to run
Psalm static code analysis / static-code-analysis (push) Blocked by required conditions
Psalm static code analysis / static-code-analysis-security (push) Blocked by required conditions
Psalm static code analysis / static-code-analysis-ocp (push) Blocked by required conditions
Psalm static code analysis / static-code-analysis-ncu (push) Blocked by required conditions
Psalm static code analysis / static-code-analysis-strict (push) Blocked by required conditions
Psalm static code analysis / static-code-analysis-summary (push) Blocked by required conditions
perf: swap around root_id and mount_path_hash in index
2026-04-23 20:43:12 +02:00
Robin Appelman
379fa54e2e
Merge pull request #59312 from nextcloud/calender-sync-delete
Fix removed address book items not being synced between federated instances
2026-04-23 20:17:48 +02:00
F. E Noel Nfebe
c4cdb9b7f1
Merge pull request #59873 from nfebe/fix/save-twice-password-guard-public-shares
fix(files_sharing): Restore password guard return for new public shares
2026-04-23 18:43:54 +01:00
nfebe
47b7975ffe chore: Compile assets
Signed-off-by: nfebe <fenn25.fn@gmail.com>
2026-04-23 18:16:24 +01:00
Robin Appelman
df76c9f882
fix: fix initial addressbook sync skipping items due to ordering
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-04-23 17:03:48 +02:00
Ferdinand Thiessen
96206dd183
Merge pull request #59842 from nextcloud/fix/swallow-redirected-navigation
fix(files,files_sharing): swallow redirected navigation errors
2026-04-23 16:22:18 +02:00
Ferdinand Thiessen
07616938a8
Merge pull request #59867 from nextcloud/fix/public-share-download-redirect-trailing-question-mark
fix(files_sharing): Drop trailing '?' from public download redirect URL
2026-04-23 16:21:56 +02:00
Christoph Wurst
1a2712132a
Merge pull request #59767 from nextcloud/enh/noid/safer-oauth2-gettoken
Wrap oauth2 token rotation in a transaction
2026-04-23 14:33:11 +02:00
Robin Appelman
a545c93d36
perf: swap around root_id and mount_path_hash in index
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-04-23 14:13:58 +02:00
Andy Scherzinger
31083ca489
Merge pull request #59875 from nextcloud/fix/minute-to-hour
fix(webhook-listeners): hour lifetime of tokens
2026-04-23 13:57:57 +02:00
nextcloud-command
ed7223bfa0 chore(assets): Recompile assets
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2026-04-23 13:47:06 +02:00
Git'Fellow
bc105e9c4a fix(files,files_sharing): swallow redirected navigation errors
Signed-off-by: Git'Fellow <12234510+solracsf@users.noreply.github.com>
2026-04-23 13:47:06 +02:00
Jana Peper
aded96fff7
fix(webhook-listeners): hour lifetime of tokens
Signed-off-by: Jana Peper <jana.peper@nextcloud.com>
2026-04-23 13:39:23 +02:00