Commit graph

4407 commits

Author SHA1 Message Date
Nextcloud bot
18da10fd01
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-08-19 00:12:37 +00:00
Richard Steinmetz
8dc30e4f65
Merge pull request #54485 from nextcloud/fix/caldav-acl
fix: exclude \Sabre\DAVACL\Plugin from prop find monitoring
2025-08-18 18:05:02 +02:00
Ferdinand Thiessen
cd550d57ef
Merge pull request #54402 from nextcloud/fix/streamer-mtime-zip
fix(Streamer): use localtime for ZIP files
2025-08-18 14:39:37 +02:00
Richard Steinmetz
51f0aa5be2
fix: exclude \Sabre\DAVACL\Plugin from prop find monitoring
Fixes creating events with attendees on the same server.

Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
2025-08-18 13:27:56 +02:00
Ferdinand Thiessen
20777e4a9d
refactor(dav): remove timezone from AvailabilitiyForm
It is handled in personal settings now.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-08-18 12:40:42 +02:00
Richard Steinmetz
7bb0e0de7a
Merge pull request #54405 from nextcloud/perf/custom-properties-default-value
perf: delete commonly used custom properties instead of setting the default value
2025-08-15 13:34:29 +02:00
Salvatore Martire
75d9aaa3b5
Merge pull request #54318 from nextcloud/feat/54115/emitPreloadCollectionEvent
Emits a `preloadCollection` event in the DAV server, so that plugins can listen to it and preload DAV properties for files inside a collection, to avoid the N+1 issue that would follow if loading properties on a per-file basis.
2025-08-15 11:06:48 +02:00
Robin Appelman
89fa14fd77
Merge pull request #54386 from nextcloud/fix-n+1-caldav
fix(performance): Fix n+1 issue when fetching calendar properties
2025-08-15 10:56:11 +02:00
Salvatore Martire
4a0a00a5a2 perf(shares): avoid array_merge in loops
Signed-off-by: Salvatore Martire <4652631+salmart-dev@users.noreply.github.com>
2025-08-15 10:46:43 +02:00
Salvatore Martire
bdcd583045 feat: make use of preloadCollection in core apps
Signed-off-by: Salvatore Martire <4652631+salmart-dev@users.noreply.github.com>
2025-08-15 10:46:43 +02:00
Salvatore Martire
9bbebd6034 feat: emit preloadCollection event in DAV
This allows plugins to preload the content of a Collection to speed-up
subsequent per-node PROPFINDs and reduce database load.

Signed-off-by: Salvatore Martire <4652631+salmart-dev@users.noreply.github.com>
2025-08-15 10:46:43 +02:00
Carl Schwan
9df79bae10 perf(caldav): Only prefetch published properties
Signed-off-by: Carl Schwan <carl.schwan@nextclound.com>
2025-08-15 09:57:58 +02:00
Carl Schwan
46f0c6ebb5 perf(caldav): Cache calendars in CustomPropertiesBackend
We already do that for files, we are now also doing for calendars.
With relatively small amount of calendars, I managed to reduce the
number of DB requests by 35% and from 23 DB requests touching the
oc_properties table to only 3.

Signed-off-by: Carl Schwan <carl.schwan@nextclound.com>
2025-08-15 09:57:58 +02:00
Carl Schwan
977541cedf perf(caldav): Add multi users support in findPropertiesByPaths
Signed-off-by: Carl Schwan <carl.schwan@nextclound.com>
2025-08-15 09:57:56 +02:00
Nextcloud bot
2fc58bf45d
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-08-15 00:12:18 +00:00
Carl Schwan
806fe6619f perf(caldav): Fetch additional properties for multiple calendars in one query
Instead of doing it for each calendar individually.

Signed-off-by: Carl Schwan <carl.schwan@nextclound.com>
2025-08-14 18:25:40 +02:00
Ferdinand Thiessen
ba00416040 refactor(Streamer): inject IDateTimeZone as constructor arg
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-08-14 17:19:28 +02:00
Robin Appelman
06aa7035db
Merge pull request #54420 from nextcloud/disable-custom-props-events
perf(calendar): Disable custom properties for individual calendar events
2025-08-14 15:55:36 +02:00
Salvatore Martire
50c9c7e332
Merge pull request #54153 from nextcloud/feat/54114/reportSlowPropfinds
This PR adds an error log when a DAV Plugin fetches data for nodes in a directory on a per-node basis instead of using an eager loading mechanism, which is more efficient.

This is only enabled when `config.php` has `'debug'` set to enabled.
2025-08-14 13:40:31 +02:00
Carl Schwan
90cc0454a7 perf(calendar): Disable custom properties for individual calendar events
Save a query per event stored in the calendar and at least on the
production instance, there is no entries in the table for the events.

Signed-off-by: Carl Schwan <carl.schwan@nextclound.com>
2025-08-14 11:27:44 +02:00
Richard Steinmetz
7c0ffc0759
perf: delete commonly used custom properties instead of setting the default value
Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
2025-08-13 20:07:43 +02:00
Salvatore Martire
ec176a933a feat(dav): report inefficient DAV plugins in logs
Signed-off-by: Salvatore Martire <4652631+salmart-dev@users.noreply.github.com>
2025-08-13 19:46:18 +02:00
Robin Appelman
46b5ff7467 perf: ignore any customer property in the nc/oc namespace that isn't explicitly allowed
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-08-13 19:32:45 +02:00
Ferdinand Thiessen
32703d0500
fix(ZipFolderPlugin): set mtime of directories in archive
Directories should also have the correct mtime set and not the current
time. For this the `Streamer` class needs to support passing a time
attribute for creating folders, the underlying library already supports
this.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-08-13 10:23:47 +02:00
nextcloud-command
f5a5b005b6 chore: Update minimum supported desktop version
Signed-off-by: GitHub <noreply@github.com>
2025-08-11 00:34:04 +00:00
Christoph Wurst
0c4bb5e8c5
fix(dav): calculate permissions based on addressbook principal
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2025-08-06 18:15:43 +02:00
Daniel Kesselberg
13f25c9316 fix(carddav): return correct sync token for non-truncated requests
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2025-08-06 14:32:25 +02:00
Daniel Kesselberg
b54c5392b6 feat(carddav): handle truncated non-initial requests
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2025-08-06 14:04:55 +02:00
Hamza Mahjoubi
36d9fcbb4d feat(cardav): support result truncation for addressbook federation
Signed-off-by: Hamza Mahjoubi <hamzamahjoubi221@gmail.com>
2025-08-06 14:04:55 +02:00
Robin Appelman
398b106f0c fix: validate written size for s3 multipart uploads
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-08-05 19:17:58 +02:00
Joas Schilling
1750708509
Merge pull request #54240 from nextcloud/fix/noid/oracle-test-failure
fix(caldav): get UID value
2025-08-05 12:18:07 +02:00
Nextcloud bot
ccda64fc66
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-08-05 00:12:37 +00:00
Anna Larch
b694d2659b fix(caldav): get UID value
Signed-off-by: Anna Larch <anna@nextcloud.com>
2025-08-04 16:43:50 +02:00
Nextcloud bot
2211390ca5
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-08-04 00:13:25 +00:00
Nextcloud bot
4ce1980eff
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-08-02 00:12:22 +00:00
SebastianKrupinski
49d8e29a18 fix: do not ignore move command object target uri
Signed-off-by: SebastianKrupinski <krupinskis05@gmail.com>
2025-08-01 09:36:07 -04:00
Anna Larch
56174f749f
feat: add Busy status and new preset BRB status
Signed-off-by: Anna Larch <anna@nextcloud.com>
2025-08-01 08:35:37 +02:00
Nextcloud bot
086ef597c0
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-08-01 00:12:14 +00:00
SebastianKrupinski
adcb782b45 fix: spelling mistake
Signed-off-by: SebastianKrupinski <krupinskis05@gmail.com>
2025-07-31 10:22:50 -04:00
Daniel
bcfb010e07
Merge pull request #54167 from nextcloud/bug/noid/principal-guest_app-not-found-pt2
fix: hide guests group from overall principals
2025-07-31 14:38:24 +02:00
Christoph Wurst
6033c25630
Merge pull request #54084 from nextcloud/feat/dav/absence-get-set-commands
feat(dav): add occ commands to get and set absences
2025-07-31 12:43:36 +02:00
Jyrki Gadinger
45c8664b00 fix: hide guests group from overall principals
Follow-up for #52914 and #53369

Signed-off-by: Jyrki Gadinger <nilsding@nilsding.org>
2025-07-31 11:24:23 +02:00
Richard Steinmetz
46cf819e2f
Merge pull request #54160 from nextcloud/feat/event-builder-invitation-emails
feat: send invitation emails through ICreateFromString
2025-07-31 09:10:20 +02:00
Nextcloud bot
7fbe33322b
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-07-31 00:12:09 +00:00
Christoph Wurst
ee00d166cd feat(dav): add occ commands to get and set absences
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2025-07-30 22:22:22 +02:00
Richard Steinmetz
d6d94c4e63
feat: send invitation emails through ICreateFromString
Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
2025-07-30 18:54:12 +02:00
Nextcloud bot
8bc5edf15f
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-07-29 00:12:07 +00:00
Anna Larch
7e3082cb46 fix(caldav): don't return cancelled events for upcoming events API
Signed-off-by: Anna Larch <anna@nextcloud.com>
2025-07-28 11:20:11 +02:00
Kate
aca5361e86
Merge pull request #53944 from nextcloud/chore/too-many-arguments 2025-07-28 10:49:52 +02:00
Nextcloud bot
993355af9f
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-07-28 00:12:17 +00:00