Commit graph

36964 commits

Author SHA1 Message Date
Micke Nordin
a88fdcbed5
Merge pull request #57234 from enriquepablo/master
Implement token exchange from OCM
2026-06-18 11:33:24 +02:00
Peter Ringelmann
c3dcffda09 fix(settings): add loading feedback to account create/edit dialogs
Signed-off-by: Peter Ringelmann <peter.ringelmann@nextcloud.com>
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2026-06-18 10:00:28 +02:00
Nextcloud bot
dad4644546
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
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2026-06-18 00:22:59 +00:00
F. E Noel Nfebe
13adaf91ff
Merge pull request #60151 from nextcloud/fix/pending-shares-hide-incompatible-actions
fix(files_sharing): Hide incompatible actions in shares
2026-06-17 18:26:17 +01:00
Christoph Wurst
e9c95a0055
Merge pull request #61293 from nextcloud/fix/federation-settings-calendar
fix(caldav): respect federation settings
2026-06-17 14:43:10 +02:00
nfebe
0632913527 fix(files_sharing): Drop permissions on unmounted pending and deleted shares
Pending and deleted shares are not mounted into the user's filesystem, so
generic file operations like delete or download produced a misleading
"file is not available" error.

These shares now carry no permissions, so every permission-aware action
hides itself automatically, without the files app having to special-case
each view. Conversion additionally requires read permission, matching the
server-side readability check.

Signed-off-by: nfebe <fenn25.fn@gmail.com>
2026-06-17 12:37:26 +01:00
Micke Nordin
4d5841761f
fix(cloud_federation_api): accept multi-protocol share envelopes
Shares using the OCM multi-protocol envelope (name multi, with the secret carried in a sibling protocol entry such as webdav) were rejected with Missing sharedSecret in protocol. Scan every protocol entry for the shared secret during validation, resolve the secret from the matching entry, and let the files provider serve the webdav entry of a multi envelope. Covers the file and folder resource types.

Signed-off-by: Micke Nordin <kano@sunet.se>
2026-06-17 11:01:19 +02:00
Enrique Pérez Arnaud
3616212ba2
feat(files_sharing): store and refresh OCM access tokens for external shares
Co-authored-by: Micke Nordin <kano@sunet.se>
Signed-off-by: Micke Nordin <kano@sunet.se>
Signed-off-by: Enrique Pérez Arnaud <enrique@cazalla.net>
2026-06-17 11:01:16 +02:00
Enrique Pérez Arnaud
fc31f97018
feat(federatedfilesharing): create refresh tokens and sign token exchange
Co-authored-by: Micke Nordin <kano@sunet.se>
Signed-off-by: Micke Nordin <kano@sunet.se>
Signed-off-by: Enrique Pérez Arnaud <enrique@cazalla.net>
2026-06-17 11:01:15 +02:00
Enrique Pérez Arnaud
4d56c74ba7
feat(ocm): advertise exchange-token capability and token endpoint
Co-authored-by: Micke Nordin <kano@sunet.se>
Signed-off-by: Micke Nordin <kano@sunet.se>
Signed-off-by: Enrique Pérez Arnaud <enrique@cazalla.net>
2026-06-17 11:01:14 +02:00
Enrique Pérez Arnaud
3956c4e9be
feat(cloud_federation_api): accept new protocol envelope and delegate validation
Accept both the legacy options.sharedSecret envelope and the new
protocol[name].sharedSecret form. Preserve the original cloud ID so the
factory can discover capabilities, then reset shareWith to the local
username for user lookup.

Delegate per-protocol validation to providers via the new
IValidationAwareCloudFederationProvider interface, with split exception
handling: BadRequestException -> 400, ProviderCouldNotAddShareException
-> the exception's own HTTP status (501 fallback).

In the notification handler, fall back to looking up the refresh token
via OcmTokenMapMapper when the access token cannot identify the federation.

Co-authored-by: Micke Nordin <kano@sunet.se>
Signed-off-by: Micke Nordin <kano@sunet.se>
Signed-off-by: Enrique Pérez Arnaud <enrique@cazalla.net>
2026-06-17 11:01:13 +02:00
Enrique Pérez Arnaud
789ff6a8a3
feat(cloud_federation_api): add token exchange endpoint issuing JWT access tokens
Co-authored-by: Micke Nordin <kano@sunet.se>
Signed-off-by: Micke Nordin <kano@sunet.se>
Signed-off-by: Enrique Pérez Arnaud <enrique@cazalla.net>
2026-06-17 11:01:11 +02:00
Enrique Pérez Arnaud
2c54011789
feat(dav): accept bearer access tokens on webdav endpoints
Signed-off-by: Micke Nordin <kano@sunet.se>
Signed-off-by: Enrique Pérez Arnaud <enrique@cazalla.net>
2026-06-17 10:44:53 +02:00
Nextcloud bot
188006bc95
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2026-06-17 00:22:57 +00:00
Andy Scherzinger
51a7ee1d0f
Merge pull request #61310 from nextcloud/fix/noid/ocm-add-share-validation
fix(ocm-add-share): adjust domain validation
2026-06-16 20:34:03 +02:00
Hamza
6280efcf23 fix(caldav): respect federation settings
Signed-off-by: Hamza <hamzamahjoubi221@gmail.com>
2026-06-16 16:45:56 +02:00
Micke Nordin
d8a2e0719a
Merge pull request #61201 from nextcloud/kano-ocm-notification-event
Add OCM Notification Received Event
2026-06-16 13:23:30 +02:00
Micke Nordin
0f2003ebc8 test(OCM): Add test that tests the notificationReceived function
Signed-off-by: Micke Nordin <kano@sunet.se>
2026-06-16 11:30:00 +02:00
Micke Nordin
2beb626995 feat(OCM): Add event for received notifications
OCM is standardizing and expanding the use of notifications and having
an event for acting on in apps will be very useful.

Signed-off-by: Micke Nordin <kano@sunet.se>
2026-06-16 11:30:00 +02:00
Cristian Scheid
88df72a661 feat(ocm-add-share): add validation to detect idn homograph attacks
Signed-off-by: Cristian Scheid <cristianscheid@gmail.com>
2026-06-16 10:21:24 +02:00
Côme Chilliet
30ba835e90
fix(user_ldap): Escape filter part when searching for group members
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2026-06-16 10:07:17 +02:00
Stephan Orbaugh
ec03e87675
Merge pull request #61289 from nextcloud/carl/oauth2-commands
Some checks are pending
CodeQL Advanced / Analyze (actions) (push) Waiting to run
CodeQL Advanced / Analyze (javascript-typescript) (push) Waiting to run
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
feat(oauth2): Add commands for adding and deleting clients
2026-06-15 18:30:41 +02:00
Andy Scherzinger
71f966801d
Merge pull request #61253 from nextcloud/fix/theming-preserve-uploaded-favicon
fix(theming): preserve uploaded favicon and touch icon
2026-06-15 16:19:28 +02:00
Côme Chilliet
5a1c0844df
chore(tests): Adapt BackupCodeStorageTest to code changes
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2026-06-15 14:47:25 +02:00
Côme Chilliet
4c80a04dc4
fix(twofactor_backupcodes): Add a clean helper to set code as used
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2026-06-15 14:35:52 +02:00
Carl Schwan
734904e7f0
feat(oauth2): Add commands for adding and deleting clients
Refactor the code for doing that from the controller to a seperate
service.

Signed-off-by: Carl Schwan <carlschwan@kde.org>
2026-06-15 13:06:09 +02:00
Nextcloud bot
a7eb76d031
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
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2026-06-15 00:23:21 +00:00
Nextcloud bot
eaae45d7dc
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2026-06-14 00:22:44 +00:00
Simon L.
1d2b23eed7 fix(theming): preserve uploaded favicon and touch icon
PR #58224 dropped the `$iconFile === null` guard around the app-specific
icon generation in getFavicon()/getTouchIcon(), so an uploaded custom
favicon was always overwritten by the generated, context-colored icon
whenever Imagick could produce an ICO/PNG.

Restore the guard so the generation path only runs as a fallback when no
custom favicon was uploaded, while keeping the improved Imagick
capability detection from #58224.

Assisted-by: ClaudeCode:claude-opus-4-8
Signed-off-by: Simon L. <szaimen@e.mail.de>
2026-06-13 21:43:48 +02:00
Nextcloud bot
d02155784b
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
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2026-06-13 00:24:20 +00:00
Sebastian Krupinski
0ef2f4046d
Merge pull request #61017 from nextcloud/fix/use-card-interface
Some checks are pending
CodeQL Advanced / Analyze (actions) (push) Waiting to run
CodeQL Advanced / Analyze (javascript-typescript) (push) Waiting to run
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: use card interface instead of object
2026-06-12 10:08:59 -04:00
Kate
718dfd0656
Merge pull request #61142 from nextcloud/chore/php/drop-8.2
chore(PHP): Drop 8.2 for Nextcloud 35
2026-06-12 15:27:12 +02:00
Louis
045905b1a4
Merge pull request #60801 from nextcloud/fix/fix-encryption-recovery-key-enabling
fix(encryption): Fix endpoint /ajax/userSetRecovery to support boolean
2026-06-12 11:54:20 +02:00
provokateurin
a7da9cd596
chore(PHP): Drop 8.2 for Nextcloud 35
Signed-off-by: provokateurin <kate@provokateurin.de>
2026-06-12 11:11:50 +02:00
Nextcloud bot
b7b45a8118
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
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2026-06-12 00:45:50 +00:00
Andy Scherzinger
b49ea3596e
Merge pull request #60596 from nextcloud/fix/settings-clear-app-navigation-toggle-overhang
Some checks are pending
CodeQL Advanced / Analyze (actions) (push) Waiting to run
CodeQL Advanced / Analyze (javascript-typescript) (push) Waiting to run
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(settings): clear NcAppNavigation toggle overhang
2026-06-11 23:25:07 +02:00
Andy Scherzinger
e99befd96f
Merge pull request #58750 from nextcloud/jtr/migrate-AuditLogger-to-IAppConfig
refactor(admin_audit): migrate to IAppConfig
2026-06-11 20:18:29 +02:00
Thorsten Daners
30b30d09d5
fix(profile): add rel tag for ferdiverse link to make verification possible
Signed-off-by: Thorsten Daners <thorsten@daners.info>
2026-06-11 17:23:37 +02:00
Ferdinand Thiessen
4b5fb3a197
fix(appstore): bring back "update all" button
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-06-11 15:37:30 +02:00
Louis
e6b8de4d0d
Merge pull request #60483 from masskrdjn/fix-hiding-unselectable-groups-in-account-manager
Some checks are pending
CodeQL Advanced / Analyze (actions) (push) Waiting to run
CodeQL Advanced / Analyze (javascript-typescript) (push) Waiting to run
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
feat: implement isSelectableGroup function to filter out unselectable groups
2026-06-11 15:36:58 +02:00
John Molakvoæ
09a3ca924a
fix: remove unnecessary copyright header
Signed-off-by: John Molakvoæ <skjnldsv@users.noreply.github.com>
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2026-06-11 15:24:49 +02:00
Pawel Boguslawski
9d9d372551
feat(files): added parameter to disable web UI integration with local client
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2026-06-11 15:24:37 +02:00
Louis
da706223e4
Merge pull request #61140 from nextcloud/fix/fix-deprecations-in-tests
Fix deprecations in tests
2026-06-11 14:48:10 +02:00
Peter Ringelmann
ca950f7f5b fix(settings): clear NcAppNavigation toggle overhang
Signed-off-by: Peter Ringelmann <peter.ringelmann@nextcloud.com>
2026-06-11 14:35:49 +02:00
Josh
5d01ea8755
chore: migrate AuditLogger to IAppConfig
Signed-off-by: Josh <josh.t.richards@gmail.com>
Signed-off-by: Carl Schwan <carlschwan@kde.org>
2026-06-11 12:18:31 +02:00
Benjamin Gaussorgues
6470514906
Merge pull request #60285 from nextcloud/jtr/feat-settings-office-section
feat(settings): add shared Office admin section
2026-06-11 12:11:22 +02:00
Andy Scherzinger
d1921c9c13
Merge pull request #59413 from nextcloud/jtr/fix-setupcheck-maintenance-length
fix(SetupChecks): maintenance window length is 4h (not 6h)
2026-06-11 11:37:49 +02:00
Louis
035801fede
Merge pull request #60713 from nextcloud/fix/F3-scheduled-notifications-throwable
fix(files_reminders): keep batch alive on per-row failure
2026-06-11 11:06:15 +02:00
Louis
20bc4e715e
Merge pull request #60714 from nextcloud/fix/F4-federation-retainjob-reset
fix(federation): reset retainJob at start of run()
2026-06-11 11:04:47 +02:00
krazyhell
f8980dab61 feat: implement isSelectableGroup function to filter out unselectable groups
Signed-off-by: krazyhell <hellwarrior@riseup.net>
2026-06-11 11:00:58 +02:00