Commit graph

754 commits

Author SHA1 Message Date
Côme Chilliet
b256928385
fix: Remove use of static vars in dav application
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2026-03-23 16:48:30 +01:00
Jonas
f34513d8ad
fix(ICalendar): allow to search for event URI
Signed-off-by: Jonas <jonas@freesources.org>
2026-03-23 10:22:03 +01:00
David Dreschner
9e65c597fe
Merge pull request #58897 from nextcloud/feat/add-shared-calendar-api
feat(CalDAV): Add function to get the token of a publicly shared calendar
2026-03-19 14:25:27 +01:00
David Dreschner
7c61e06b74
feat(CalDAV): Add function to get the token of a publicly shared calendar
Signed-off-by: David Dreschner <david.dreschner@nextcloud.com>
2026-03-19 13:55:39 +01:00
SebastianKrupinski
f4feec424c feat: improve calendar migrator
Signed-off-by: SebastianKrupinski <krupinskis05@gmail.com>
2026-03-12 12:43:15 -04:00
Grigory Vodyanov
e3c2920c18 feat: add default reminder setting caldav
Signed-off-by: Grigory Vodyanov <scratchx@gmx.com>
2026-03-11 12:45:04 -04:00
nextcloud-command
663018455e refactor: Apply rector changes
Signed-off-by: GitHub <noreply@github.com>
2026-03-01 14:43:11 +00:00
SebastianKrupinski
64f319ab4e feat: calendar federation write
Signed-off-by: SebastianKrupinski <krupinskis05@gmail.com>
2026-02-25 10:35:27 -05:00
SebastianKrupinski
b91dfee54a fix: obey x-nc-scheduling flag on delete
Signed-off-by: SebastianKrupinski <krupinskis05@gmail.com>
2026-02-13 09:58:26 -05:00
SebastianKrupinski
70d051f602 fix: iTipBroker message generation and testing
Signed-off-by: SebastianKrupinski <krupinskis05@gmail.com>
2026-02-12 15:20:36 -05:00
Sebastian Krupinski
c373b8e614
Merge pull request #58197 from nextcloud/fix/calendar-federation-additional-properties
fix: federated calendar additional properties
2026-02-09 10:19:57 -05:00
SebastianKrupinski
566e598a4e fix: federated calendar additional properties
Signed-off-by: SebastianKrupinski <krupinskis05@gmail.com>
2026-02-09 09:26:33 -05:00
provokateurin
f12cecb684
feat(rector): Enable SafeDeclareStrictTypesRector
Signed-off-by: provokateurin <kate@provokateurin.de>
2026-02-09 10:59:31 +01:00
Carl Schwan
5d0d0c17e5
chore(rector): Run rector on apps, core and tests directory
Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2026-02-06 13:23:23 +01:00
Git'Fellow
59bb049de0 fix(caldav): Enhance UID check for base component
Signed-off-by: Git'Fellow <12234510+solracsf@users.noreply.github.com>
2026-01-23 17:24:42 +01:00
Carl Schwan
9a8d45d81f
refactor(QueryException): Remove most usage of QueryException
This is preparation to move QueryException from OCP to OC as part of
Nextcloud 34.

Signed-off-by: Carl Schwan <carlschwan@kde.org>
2026-01-16 11:55:06 +01:00
SebastianKrupinski
acfec22652 feat: restrict calendar invitation participants
Signed-off-by: SebastianKrupinski <krupinskis05@gmail.com>
2026-01-09 12:07:18 -05:00
Ferdinand Thiessen
0c6565ea44
fix(birthday-service): Fix on 32 bits system
Signed-off-by: Carl Schwan <carlschwan@kde.org>
2026-01-06 10:44:47 +01:00
Stephan Orbaugh
582bb11eae
Merge pull request #55631 from nextcloud/carl/deprecate-config-user-correctly
refactor: Deprecated user config from IConfig correctly
2025-12-15 17:30:52 +01:00
SebastianKrupinski
7c266d9f23 fix: do not truncate birth year to 1970
Signed-off-by: SebastianKrupinski <krupinskis05@gmail.com>
2025-12-11 13:59:28 -05:00
Carl Schwan
2ae9626fec
refactor(user_ldap): Port most of the remaining deprecated IConfig usage
Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-12-11 13:27:48 +01:00
Christoph Wurst
dac8818102
fix(dav): handle HTML in CalDAV invitations
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2025-12-10 12:51:18 +01:00
SebastianKrupinski
1a0535aa75 fix: calendar subscription memory exhaustion
Signed-off-by: SebastianKrupinski <krupinskis05@gmail.com>
2025-12-09 12:36:16 -05:00
SebastianKrupinski
345140ac88 fix: imip set language per user
Signed-off-by: SebastianKrupinski <krupinskis05@gmail.com>
2025-11-25 08:47:07 -05:00
Tobias Kaminsky
6f0537b4e9
Merge pull request #56494 from nextcloud/carl/result-improv
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, 8.4, main, --tags ~@large files_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, 8.4, main, capabilities_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, 8.4, main, collaboration_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, 8.4, main, comments_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, 8.4, main, dav_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, 8.4, main, features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, 8.4, main, federation_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, 8.4, main, file_conversions) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, 8.4, main, files_reminders) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, 8.4, main, filesdrop_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, 8.4, main, ldap_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, 8.4, main, openldap_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, 8.4, main, openldap_numerical_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, 8.4, main, remoteapi_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, 8.4, main, routing_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, 8.4, main, setup_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, 8.4, main, sharees_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, 8.4, main, sharing_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, 8.4, main, theming_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, 8.4, main, videoverification_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite-summary (push) Blocked by required conditions
Psalm static code analysis / static-code-analysis (push) Waiting to run
Psalm static code analysis / static-code-analysis-security (push) Waiting to run
Psalm static code analysis / static-code-analysis-ocp (push) Waiting to run
Psalm static code analysis / static-code-analysis-ncu (push) Waiting to run
Improve IResult
2025-11-20 15:38:17 +01:00
rakekniven
6fd911581f fix(i18n): Corrected plural for multi plural languages
Reported at Transifex.

Signed-off-by: rakekniven <2069590+rakekniven@users.noreply.github.com>
2025-11-19 12:27:37 -05:00
Carl Schwan
4d47fdaa85 chore: Run rector with new rules for fetch
Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-11-18 17:45:57 +01:00
Sebastian Krupinski
59c9aada8d
Merge pull request #52882 from nextcloud/fix/issue-6838-use-old-event-information-when-new-is-missing
fix(CalDav): use old event information if new is missing
2025-10-28 08:38:08 -04:00
Daniel Kesselberg
83a691709c
refactor: use IEmailValidator.isValid instead of IMailer.validateEmailAddress
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2025-10-04 21:54:22 +02:00
provokateurin
6a12fbc4f3
refactor: Run rector
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-09-27 18:52:58 +02:00
Côme Chilliet
88fc8c94ce
fix(dav): Fix PHP warnings triggered by tests in dav application
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-09-27 13:05:33 +02:00
Carl Schwan
7e1c49ad9d refactor: Port away from IQueryBuilder::execute in apps/
Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-09-16 11:35:01 +02:00
SebastianKrupinski
7e92b157e3 fix: aliases and capitalization of emails
Signed-off-by: SebastianKrupinski <krupinskis05@gmail.com>
2025-08-28 17:40:04 -04:00
Richard Steinmetz
40117dced3
Merge pull request #54426 from nextcloud/perf/prevent-fetching-account
perf: prevent fetching a principal's user account if the data is not needed
2025-08-28 16:59:38 +02:00
Richard Steinmetz
5b254ea39a
perf: prevent fetching a principal's user account if the data is not needed
Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
2025-08-28 14:13:29 +02:00
Richard Steinmetz
e8986db7a4
perf(caldav): preload publish statuses for a whole calendar home at once
Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
2025-08-28 14:00:18 +02:00
Richard Steinmetz
b7dc720848
feat: calendar federation
Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
2025-08-27 17:14:15 +02:00
Kate
45f5daa45a
Merge pull request #54666 from nextcloud/carl/apply-rector 2025-08-27 16:29:58 +02:00
SebastianKrupinski
46e624a089 feat: Calendar Import
Signed-off-by: SebastianKrupinski <krupinskis05@gmail.com>
2025-08-27 08:30:33 -04:00
Andy Scherzinger
a9635044e3
Merge pull request #54533 from nextcloud/cal-edit-private-event
fix(caldav): show confidential event if writable
2025-08-27 09:41:57 +02:00
Carl Schwan
5835599fa1 chore(rector): Apply current rector config
Signed-off-by: Carl Schwan <carl.schwan@nextclound.com>
2025-08-26 16:27:26 +02:00
Matt Evans
4d770f1c3c fix: use appropriate user agent string when syncing Outlook calendar subscriptions
Signed-off-by: Matt Evans <matt@mattevans.org>
Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
2025-08-22 22:19:31 +02:00
Richard Steinmetz
1a781d5afa
fix(caldav): public calendars are always read-only
Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
2025-08-20 13:37:47 +02:00
Arusekk
b3c5707a0c
fix(caldav): show confidential event if writable
If a party can edit the calendar/event, just display it instead of
hiding the details and risking overwrites.
This might be considered a change impacting privacy,
but it actually improves semantics.

Relevant test updates included, improving assertion correctness.

I think all the relevant use cases are solved by this.

Closes https://github.com/nextcloud/server/issues/5551
Closes https://github.com/nextcloud/calendar/issues/4044
Closes https://github.com/nextcloud/server/issues/11214

Signed-off-by: Arusekk <floss@arusekk.pl>
Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
2025-08-20 13:34:38 +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
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
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
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
Anna Larch
b694d2659b fix(caldav): get UID value
Signed-off-by: Anna Larch <anna@nextcloud.com>
2025-08-04 16:43:50 +02:00