Commit graph

37015 commits

Author SHA1 Message Date
Stephan Orbaugh
4cad192bcd
Merge pull request #60102 from nextcloud/automated/noid/rector-changes 2026-05-28 12:31:17 +02:00
James Manuel
50ada1270d feat(appstore): default-select primary office suite when none is installed
Falls back to the isPrimary suite so the UI shows a pre-selection rather
than nothing, without triggering the watcher (watch() is lazy by default).

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Signed-off-by: James Manuel <moodyjmz@users.noreply.github.com>
2026-05-28 12:12:28 +02:00
James Manuel
a19c78a9d7 feat(appstore): replace OnlyOffice with Euro-Office in office suite switcher
- Replace onlyoffice/onlyoffice entry with collabora-office/richdocuments
- Change nextcloud-office appId from richdocuments to eurooffice
- Update features and learnMoreUrl for Euro-Office branding

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Signed-off-by: James Manuel <moodyjmz@users.noreply.github.com>
2026-05-28 12:12:28 +02:00
Ferdinand Thiessen
e763a7d661 fix(encryption): recovery keys should be shown when user keys are used
- fixes https://github.com/nextcloud/server/pull/57515/changes?diff=unified#r3305155382

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-05-28 10:09:04 +00:00
Julius Knorr
50ddee1070
Merge pull request #60776 from nextcloud/feat/office-app-shipped
Some checks failed
Integration sqlite / changes (push) Has been cancelled
Psalm static code analysis / changes (push) Has been cancelled
Integration sqlite / integration-sqlite (master, main, 8.4, main, --tags ~@large files_features) (push) Has been cancelled
Integration sqlite / integration-sqlite (master, main, 8.4, main, capabilities_features) (push) Has been cancelled
Integration sqlite / integration-sqlite (master, main, 8.4, main, collaboration_features) (push) Has been cancelled
Integration sqlite / integration-sqlite (master, main, 8.4, main, comments_features) (push) Has been cancelled
Integration sqlite / integration-sqlite (master, main, 8.4, main, dav_features) (push) Has been cancelled
Integration sqlite / integration-sqlite (master, main, 8.4, main, features) (push) Has been cancelled
Integration sqlite / integration-sqlite (master, main, 8.4, main, federation_features) (push) Has been cancelled
Integration sqlite / integration-sqlite (master, main, 8.4, main, file_conversions) (push) Has been cancelled
Integration sqlite / integration-sqlite (master, main, 8.4, main, files_reminders) (push) Has been cancelled
Integration sqlite / integration-sqlite (master, main, 8.4, main, filesdrop_features) (push) Has been cancelled
Integration sqlite / integration-sqlite (master, main, 8.4, main, guests_features) (push) Has been cancelled
Integration sqlite / integration-sqlite (master, main, 8.4, main, ldap_features) (push) Has been cancelled
Integration sqlite / integration-sqlite (master, main, 8.4, main, openldap_features) (push) Has been cancelled
Integration sqlite / integration-sqlite (master, main, 8.4, main, openldap_numerical_features) (push) Has been cancelled
Integration sqlite / integration-sqlite (master, main, 8.4, main, remoteapi_features) (push) Has been cancelled
Integration sqlite / integration-sqlite (master, main, 8.4, main, routing_features) (push) Has been cancelled
Integration sqlite / integration-sqlite (master, main, 8.4, main, setup_features) (push) Has been cancelled
Integration sqlite / integration-sqlite (master, main, 8.4, main, sharees_features) (push) Has been cancelled
Integration sqlite / integration-sqlite (master, main, 8.4, main, sharing_features) (push) Has been cancelled
Integration sqlite / integration-sqlite (master, main, 8.4, main, theming_features) (push) Has been cancelled
Integration sqlite / integration-sqlite (master, main, 8.4, main, videoverification_features) (push) Has been cancelled
Integration sqlite / integration-sqlite-summary (push) Has been cancelled
Psalm static code analysis / static-code-analysis (push) Has been cancelled
Psalm static code analysis / static-code-analysis-security (push) Has been cancelled
Psalm static code analysis / static-code-analysis-ocp (push) Has been cancelled
Psalm static code analysis / static-code-analysis-ncu (push) Has been cancelled
Psalm static code analysis / static-code-analysis-strict (push) Has been cancelled
Psalm static code analysis / static-code-analysis-summary (push) Has been cancelled
feat: Add office as shipped app
2026-05-28 09:43:54 +02:00
Nextcloud bot
3f7721b996
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2026-05-28 00:23:06 +00:00
Louis
da7c4ef3ce
Merge pull request #60316 from Justinzobel/work/justinzobel/spellingfixes
Spelling fixes
2026-05-27 18:47:51 +02:00
Anna Larch
20d8540f4f test(user_ldap): speed up AbstractMappingTestCase chunking test
Reduce mapped entries from 3332 to 14 (every 5000th instead of every
20th) so the test exercises the chunking path without inserting thousands
of rows. Move the explanatory comment above the loop where it belongs.

Note: the implementation chunks at its own 65000 total-parameter limit
(not Postgres's 65535 IN-list limit), so the comment uses 65000.

Signed-off-by: Anna Larch <anna@nextcloud.com>
AI-Assisted-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-27 16:07:21 +02:00
Julius Knorr
f535a1d268
feat: Add office as shipped app
Signed-off-by: Julius Knorr <jus@bitgrid.net>
2026-05-27 15:55:55 +02:00
Micke Nordin
c753aad9e3 refactor(ocm): expose confirmRequestOrigin as a function on ocmDiscoveryService
Apps implementing OCM endpoints via OCMEndpointRequestEvent (e.g.
SUNET/nextcloud-ocm_request_share for request-share, nextcloud/contacts
for invite-accepted) need to apply the same identity check that the
built-in addShare and receiveNotification handlers apply, so it makes
sense to make it publicly accessible.

It also allows us to refactor RequestHandlerController::confirmSignedOrigin
to use the new public method and drop the confirmNotificationIdentity helper.

Signed-off-by: Micke Nordin <kano@sunet.se>
2026-05-27 11:03:55 +02:00
Micke Nordin
1bad4fe238 fix: Make sodium optional
This commit switches the default signature algorithm to
ecdsa-p256-sha256 instead of Ed25519. This allows us to make sodium
optional again, and we only pull it in to use it for verifying incomming
signatures. If sodium is not installed, we throw on Ed25519 signatures
instead. At least it is easy for most people to make their Nextcloud
install fully RFC compliant by installing sodium.

I also renamed all the Ed25519 function names to be more precis, using
Jwks for the JSON Web Keys, and RFC9421 for the http-signature code,
where it is needed to distinguish from draft-cavage signatures.

Signed-off-by: Micke Nordin <kano@sunet.se>
2026-05-27 11:03:55 +02:00
Micke Nordin
ea9bbe64c1 chore: require ext-sodium
Promote ext-sodium from recommended to required so RFC 9421 Ed25519
signing/verifying can rely on libsodium unconditionally. Add the
matching openssl + sodium psalm stubs.

Signed-off-by: Micke Nordin <kano@sunet.se>
2026-05-27 11:03:55 +02:00
Ferdinand Thiessen
6ee67884a4
fix(files_version): dispatch CreateVersionEvent as typed event
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-05-27 10:46:40 +02:00
Ferdinand Thiessen
fe7bbd6bcd
feat(files_versions): allow to block version creation using WFE
This allows users to create workflows to block the versions creation
for some files, based on tags or other conditions using the workflow
engine.
The usecase would be compliance to allow configure some rules to prevent
versioning.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-05-27 10:46:40 +02:00
Nextcloud bot
c8b29c9dac
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-05-27 00:23:20 +00:00
Anna Larch
6220ae9175 fix(sharing): restore STATUS_ACCEPTED for OC-migrated group share subshares
When an ownCloud-migrated group share (which has no per-user USERGROUP
subshare) is renamed for the first time, DefaultShareProvider::move()
inserted a new USERGROUP row without setting `accepted`. The column
defaulted to 0 (STATUS_PENDING), causing MountProvider to skip the
share on the next login — the shared file disappeared for the recipient.

Fix: set accepted = STATUS_ACCEPTED explicitly on the INSERT in
DefaultShareProvider::move() for the TYPE_GROUP branch.

Secondary fix: SharedMount::moveMount() silently returned true when
updateFileTarget() threw (e.g. group no longer exists on an OC-migrated
instance). Set $result = false in the catch block so View::rename()
propagates the failure instead of silently corrupting VFS state.

An opt-in occ command (sharing:fix-owncloud-group-shares) with --dry-run
support is included to repair existing broken instances. It targets only
TYPE_USERGROUP subshares with accepted=STATUS_PENDING and permissions!=0
(shares that were accepted but broken by the missing column default),
leaving explicitly declined shares (permissions=0) untouched.

AI-Assisted-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Signed-off-by: Anna Larch <anna@nextcloud.com>
2026-05-26 17:28:39 +02:00
Peter Ringelmann
bbdb7d01b8 refactor(settings): switch wipe dialog to confirm
Signed-off-by: Peter Ringelmann <peter.ringelmann@nextcloud.com>
2026-05-26 16:41:02 +02:00
Peter Ringelmann
1d035b4cfc refactor(settings): tighten auth-token dialog components
Signed-off-by: Peter Ringelmann <peter.ringelmann@nextcloud.com>
2026-05-26 16:41:02 +02:00
Peter Ringelmann
4b1c3fbe3b fix(settings,oauth2): preserve wipe state across admin deletion paths
Signed-off-by: Peter Ringelmann <peter.ringelmann@nextcloud.com>
2026-05-26 16:41:02 +02:00
Peter Ringelmann
16ca990bdb fix(settings): confirm before revoking app tokens
Signed-off-by: Peter Ringelmann <peter.ringelmann@nextcloud.com>
2026-05-26 16:41:02 +02:00
Peter Ringelmann
05a188e3a8 fix(settings): confirm before revoking app tokens
Adds an NcDialog confirmation to the Revoke action; deletion was
previously instant on click. When the token is marked for remote
wipe, the dialog surfaces a warning and the destructive button
switches to "Cancel wipe and revoke" so cancelling an in-flight
wipe is an explicit opt-in.

Also migrates the existing Wipe confirm from the legacy
window.OC.dialogs.confirm helper to NcDialog, matching the new
delete dialog. The auth token store actions are now pure API
callers; the UI does the gating.

Signed-off-by: Peter Ringelmann <peter.ringelmann@nextcloud.com>
2026-05-26 16:41:02 +02:00
Christoph Wurst
29ebfa7db4
Merge pull request #60649 from nextcloud/worktree-fix-content-disposition
fix(http): avoid iconv for header ascii fallback
2026-05-26 09:22:40 +02:00
Nextcloud bot
5f73bf657b
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-05-26 00:23:14 +00:00
Nextcloud bot
627f0c33a5
fix(l10n): Update translations from Transifex
Some checks failed
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) Has been cancelled
Psalm static code analysis / static-code-analysis (push) Has been cancelled
Psalm static code analysis / static-code-analysis-security (push) Has been cancelled
Psalm static code analysis / static-code-analysis-ocp (push) Has been cancelled
Psalm static code analysis / static-code-analysis-ncu (push) Has been cancelled
Psalm static code analysis / static-code-analysis-strict (push) Has been cancelled
Psalm static code analysis / static-code-analysis-summary (push) Has been cancelled
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2026-05-25 00:22:37 +00:00
Git'Fellow
b4992b30e8 fix(federation): reset retainJob at start of run()
Signed-off-by: Git'Fellow <12234510+solracsf@users.noreply.github.com>
2026-05-24 17:42:15 +02:00
Git'Fellow
1d8f788230 fix(files_reminders): keep batch alive on per-row failure
Signed-off-by: Git'Fellow <12234510+solracsf@users.noreply.github.com>
2026-05-24 17:10:29 +02:00
nextcloud-command
fd14234a6a refactor: Apply rector changes
Signed-off-by: GitHub <noreply@github.com>
2026-05-24 14:56:18 +00:00
Nextcloud bot
8609cd45ba
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-05-24 00:22:59 +00:00
Nextcloud bot
7cced88ca3
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-05-23 00:23:21 +00:00
Christoph Wurst
d1d24e65a4 fix(http): avoid iconv for header ascii fallback
iconv transliteration is locale- and config-dependent and fails silently
on some setups. UnicodeString::ascii() from symfony/string uses a built-in
transliteration table backed by symfony/polyfill-intl-normalizer, so it
works on all setups without requiring optional PHP extensions.

Assisted-by: Claude:claude-sonnet-4-6
Signed-off-by: Christoph Wurst <1374172+ChristophWurst@users.noreply.github.com>
2026-05-22 14:58:14 +02:00
Nextcloud bot
46bc7ebd52
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-05-22 00:22:45 +00:00
Hamza
1c0fff7049 fix(caldav): grant sharee Acls to the delegate
Signed-off-by: Hamza <hamzamahjoubi221@gmail.com>
2026-05-21 12:30:16 +02:00
Idan
4b2c371ee7 Fix: missing early fail for basic auth without credentials
Make "validateUserPass" method of OCA\DAV\Connector\Sabre\Auth
class return false after checking if user is logged in if
empty username or password have been passed to it

Fixes #59849

Signed-off-by: Idan <cartaidan@gmail.com>
2026-05-21 13:51:04 +07:00
Kate
478d12c7d9
Merge pull request #60359 from nextcloud/fix-increase-limit-for-share-unshare-request
fix: Increase limit for share/unshare requests per hour
2026-05-21 07:47:27 +02:00
Nextcloud bot
ef9100c197
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-05-21 00:23:39 +00:00
Ferdinand Thiessen
c8ae6197ba
Merge pull request #60541 from nextcloud/fix/use-displayname
fix(files): use displayname rather than basename to use progress
2026-05-20 18:37:23 +02:00
Stephan Orbaugh
5508414647
Merge pull request #60543 from nextcloud/webhook-delegation-tokens
fix: only allow full admins to create 'token needed' webhooks
2026-05-20 16:37:21 +02:00
Stephan Orbaugh
988d8225be
Merge pull request #60544 from nextcloud/local-external-block-alias
fix: improve check if external storage backend is local
2026-05-20 16:03:29 +02:00
Ferdinand Thiessen
4f1055bd74
Merge pull request #56055 from nextcloud/fix/textarea-overlap
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
fix(Dav): make absenceform textarea not overlap
2026-05-20 15:10:14 +02:00
Joas Schilling
4841cad048
Merge pull request #60461 from nextcloud/bugfix/noid/skip-classified
fix(dav): Skip removal of classified activity when not generated anymore
2026-05-20 12:39:29 +02:00
Christoph Wurst
e48697f59f
Merge pull request #60211 from nextcloud/fix/trashbin-proxy-acls
fix: add proper ACLs for trashbin proxys
2026-05-20 12:34:24 +02:00
Ferdinand Thiessen
171ffb8a2c fix(files): use displayname rather than basename to use progress
- resolves https://github.com/nextcloud/end_to_end_encryption/issues/1733

The internal basename is often not known by users, e.g. groupfolders or
in this case e2ee can define displaynames other than the shown name.
Same for e.g. mount points of shares.

So we need to show the displayname instead.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-05-20 12:26:16 +02:00
Andy Scherzinger
d6a7065b07
Merge pull request #60542 from nextcloud/share-api-remove-hashed-pw
don't put hashed password in share api response
2026-05-20 10:36:32 +02:00
Ferdinand Thiessen
d24162ff9a
Merge pull request #60361 from nextcloud/fix/appstore-reasons
fix(appstore): show reason why limit app to groups is not possible
2026-05-20 10:33:28 +02:00
Daniel
9a00604b29
Merge pull request #60547 from nextcloud/fed-share-secret-lower-dont-tell
fix: don't tell the remote their token is lower
2026-05-20 09:47:59 +02:00
Joas Schilling
bd91d011f8
fix(dav): Skip removal of classified activity only once
Was fixed in Nextcloud 16, so future versions should not generate this anymore.
So the delete attempt can be skipped, after doing it once.
We are keeping this to ensure it also runs after migrating from ownCloud

Signed-off-by: Joas Schilling <coding@schilljs.com>
2026-05-20 08:58:01 +02:00
Justin Zobel
5619cc0439 fix: "than" vs "then" typos
Signed-off-by: Justin Zobel <justin.zobel@gmail.com>
2026-05-20 12:39:19 +09:30
Nextcloud bot
9a03d9aee8
fix(l10n): Update translations from Transifex
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
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2026-05-20 01:49:26 +00:00
Daniel
69d0b7e2e1
Merge pull request #59988 from nextcloud/feat/party-crasher
caldav party crasher
2026-05-19 23:39:46 +02:00
Ferdinand Thiessen
ee8a1e1097
chore(dav): use proper BEM
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-05-19 22:01:56 +02:00
Grigory Vodyanov
751638edaf
fix(Dav): make absenceform textarea not overlap
Signed-off-by: Grigory Vodyanov <scratchx@gmx.com>
2026-05-19 21:56:01 +02:00
Robin Appelman
e9fc60b722
test: adjust tests
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-05-19 19:39:05 +02:00
Robin Appelman
8e2ef53117
test: adjust tests for updated local backend check
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-05-19 19:16:23 +02:00
Robin Appelman
705abc2dce
fix: don't tell the remote their token is lower
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-05-19 17:08:22 +02:00
Robin Appelman
4166a20a6d
fix: improve check if external storage backend is local
Signed-off-by: Robin Appelman <robin@icewind.nl>

# Conflicts:
#	apps/files_external/lib/Controller/GlobalStoragesController.php
#	apps/files_external/lib/Controller/StoragesController.php
2026-05-19 16:57:41 +02:00
Robin Appelman
728ee257b3
fix: remove duplicate 'allow creating local storage' check
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-05-19 16:55:03 +02:00
Hamza
0d1349b0ad fix: add proper ACLs for trashbin proxys
Signed-off-by: Hamza <hamzamahjoubi221@gmail.com>
2026-05-19 16:10:32 +02:00
Robin Appelman
d84f64ac52
fix: only allow full admins to create 'token needed' webhooks
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-05-19 16:06:47 +02:00
Robin Appelman
b2494f224f
test: adjust tests redacted password field
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-05-19 16:04:42 +02:00
Robin Appelman
aa7e48e5e8
fix: don't put hashed password in share api response
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-05-19 16:04:39 +02:00
Andy Scherzinger
f1d2ab908d
Merge pull request #60511 from nextcloud/fix/remove-too-verbose-error-log
fix: remove too verbose error log line in AddExtraHeadersPlugin
2026-05-19 15:37:41 +02:00
F. E Noel Nfebe
8529621bd5
Merge pull request #60325 from nextcloud/fix/systemtags-search-invalid-tag-id
fix(systemtags): Include leading slash in unified search tag link
2026-05-19 14:36:27 +01:00
Stephan Orbaugh
0617a68135
Merge pull request #60493 from nextcloud/fix/files_sharing/unknown-activity
fix(files_sharing): Use UnknownActivityException
2026-05-19 14:38:56 +02:00
Daniel Calviño Sánchez
8c6b7f412d
Merge pull request #60134 from nextcloud/fix-rendering-custom-columns-in-file-lists
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 rendering custom columns in file lists
2026-05-19 13:18:35 +02:00
Côme Chilliet
dfec8dbfc1
Merge pull request #60318 from nextcloud/fix/remove-mountconfig-skiptest
fix(files_external): Move MountConfig to non-static services
2026-05-19 13:06:57 +02:00
Ferdinand Thiessen
cfb0903cfb
fix(appstore): show reason why limit app to groups is not possible
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-05-19 12:11:17 +02:00
nfebe
e346a660a8 fix(systemtags): Include leading slash in unified search tag link
Tag results from unified search opened the tags view with a directory
path missing its leading slash, which the view rejected with "Invalid
tag ID". Tag links now match the path convention used elsewhere so the
tag opens correctly and lists the files associated with it.

Signed-off-by: nfebe <fenn25.fn@gmail.com>
2026-05-19 10:28:06 +01:00
Andy Scherzinger
63680bdce5
Merge pull request #60187 from nextcloud/fix/template-picker
fix(files): only show template picker menu entries if possible
2026-05-19 08:33:05 +02:00
Nextcloud bot
6115c25097
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2026-05-19 00:23:11 +00:00
Ferdinand Thiessen
7e9ac38d40 fix(files): only show template picker menu entries if possible
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-05-18 17:02:44 +02:00
Salvatore Martire
f55b3fb542
Merge pull request #59966 from nextcloud/feature/workflow-app-rules
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
Add runtime operations in WFE
2026-05-18 16:52:50 +02:00
Salvatore Martire
943e46ef05 fix: remove too verbose error log line in AddExtraHeadersPlugin
Signed-off-by: Salvatore Martire <4652631+salmart-dev@users.noreply.github.com>
2026-05-18 16:40:51 +02:00
Josh
106f53e53c
chore(FileTest): fixup formatting
Signed-off-by: Josh <josh.t.richards@gmail.com>
2026-05-18 08:43:59 -04:00
Côme Chilliet
7439b3db64 fix(files_external): Migrate call to now-deprecated static methods
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2026-05-18 14:11:38 +02:00
Côme Chilliet
a775fcfa5b chore(files_external): Fix BackendServiceTest
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2026-05-18 14:11:38 +02:00
Côme Chilliet
a77969d1c0 chore(files_external): Remove broken SFTP_Key tests
They were always skipped and the tested class does not exist.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2026-05-18 14:11:38 +02:00
Côme Chilliet
7cfa95e48b fix(files_external): Move MountConfig to non-static services
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2026-05-18 14:11:38 +02:00
Daniel Kesselberg
abef0915b6
feat(caldav): Allow or disallow invitation forwarding
AI-assisted: OpenCode (gpt-5.4)

Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2026-05-18 12:48:14 +02:00
Daniel Calviño Sánchez
e1796a57e8 fix: Fix error when creating mail shares if custom tokens are enabled
When a new share is saved it is first created in the backend and then
updated with some additional attributes set in the frontend. If custom
tokens are enabled the attributes to update also include the token.
However, for new shares the token is set by the backend when it is
created, it is not defined by the frontend, so the token returned by the
backend needs to be copied to the share data in the frontend. Otherwise
the update would fail because an empty token is sent.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2026-05-18 11:36:13 +01:00
Salvatore Martire
2a9036a5b7 feat(wfe): add runtime operations
Signed-off-by: Salvatore Martire <4652631+salmart-dev@users.noreply.github.com>

# Conflicts:
#	apps/workflowengine/lib/Manager.php
2026-05-18 12:23:49 +02:00
Daniel Kesselberg
2ba1cbd938
fix: Increase limit for share/unshare requests per hour
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2026-05-18 12:17:38 +02:00
Andy Scherzinger
35484a9e39
Merge pull request #60457 from nextcloud/fix/publicnickname
fix(files_sharing): do not double escape special characters
2026-05-18 12:05:32 +02:00
Andy Scherzinger
f76278f8e3
Merge pull request #60355 from nextcloud/feat/groups-column-appstore
feat(appstore): show new column with groups the app is limited to
2026-05-18 12:05:12 +02:00
provokateurin
1063769a77
fix(files_sharing): Use UnknownActivityException
Signed-off-by: provokateurin <kate@provokateurin.de>
2026-05-18 07:26:58 +02:00
Nextcloud bot
2c47ef43a9
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-05-18 00:23:00 +00:00
Ferdinand Thiessen
04d83c7256 feat(appstore): show new column with groups the app is limited to
- resolves: https://github.com/nextcloud/server/issues/30503

If there is enough space we can directly show the groups this app is
limited to in the table.
This is especially helpful if you want to quickly check your enabled
apps.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-05-17 23:50:31 +00:00
Ferdinand Thiessen
9591ee2cba
Merge pull request #60347 from nextcloud/fix/workflow-engine-a11y
fix(workflowengine): use proper contrast colors for operations
2026-05-18 01:31:50 +02:00
Daniel Calviño Sánchez
7acdc00485 fix: Fix rendering custom columns in file lists
CustomElementRender is used to render both IFileActions and IColumns.
However, the API to render both of them is different, and currently
CustomElementRender passes the arguments expected by IFileAction.
Fortunately those arguments are a superset of those expected by IColumn,
so they can be adapted when a CustomElementRender is used to render an
IColumn.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2026-05-18 00:33:07 +02:00
Ferdinand Thiessen
268c1d6874 fix(workflowengine): use proper contrast colors for operations
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-05-17 23:27:54 +02:00
Ferdinand Thiessen
15e381f8cb fix(appstore): fix reference to non-existing forceEnableApp function
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-05-17 21:21:12 +00:00
Josh
b08338d124
test(dav): make sure FileInfo is constructed with checksum
At least where likely to be needed. Also fixed object type.

Signed-off-by: Josh <josh.t.richards@gmail.com>
2026-05-17 11:22:23 -04:00
Josh
2d524128c5
test(dav): add clarifying comments to testPutLocking test
Signed-off-by: Josh <josh.t.richards@gmail.com>
2026-05-17 10:49:00 -04:00
Josh
3ab1bd4549
fix(dav): preserves the old hook-accessibility contract while still improving consistency
Signed-off-by: Josh <josh.t.richards@gmail.com>
2026-05-17 10:44:58 -04:00
Nextcloud bot
5ad2e79a94
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-05-17 00:22:43 +00:00
Simon L.
f188efd918
Merge pull request #59359 from mykh-hailo/fix/folder-tree-view-selection
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
fix: folder tree selection after any action in main content
2026-05-16 10:10:53 +02:00
Ferdinand Thiessen
304f160008 fix(files_sharing): do not double escape special characters
- fixes https://github.com/nextcloud/server/issues/60163

The strings are already escaped by Vue so no need to escape in the
translation method, this will cause double escaping.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-05-16 10:02:35 +02:00
Nextcloud bot
7d0b0d8a83
fix(l10n): Update translations from Transifex
Some checks failed
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) Has been cancelled
Psalm static code analysis / static-code-analysis (push) Has been cancelled
Psalm static code analysis / static-code-analysis-security (push) Has been cancelled
Psalm static code analysis / static-code-analysis-ocp (push) Has been cancelled
Psalm static code analysis / static-code-analysis-ncu (push) Has been cancelled
Psalm static code analysis / static-code-analysis-strict (push) Has been cancelled
Psalm static code analysis / static-code-analysis-summary (push) Has been cancelled
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2026-05-16 00:24:00 +00:00
Joas Schilling
3f796a1dee
Merge pull request #60449 from nextcloud/bugfix/noid/fix-base-url-in-background-job
fix(windmill): Fix baseUrl in background job
2026-05-16 01:24:28 +02:00
Josh
4a9022ab64
test(carddav): tighten search assertions and clarify search cases
Signed-off-by: Josh <josh.t.richards@gmail.com>
2026-05-15 16:37:13 -04:00
Josh
92cd85a28b
test(CardDav): name all search data cases accurately
Signed-off-by: Josh <josh.t.richards@gmail.com>
2026-05-15 16:10:50 -04:00
Ferdinand Thiessen
b441a77a1c
fix(appstore): do not offer rating apps not on appstore
Shipped apps are no longer published to the appstore,
so it makes no sense to offer rating them.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-05-15 17:34:55 +02:00
Josh
b7a850c3b7
fix(dav): finalize upload metadata before downgrading lock
Signed-off-by: Josh <josh.t.richards@gmail.com>
2026-05-15 10:03:30 -04:00
Joas Schilling
3798f2cb3f
fix(windmill): Fix baseUrl in background job
Signed-off-by: Joas Schilling <coding@schilljs.com>
2026-05-15 13:44:06 +02:00
Joas Schilling
820f2145a1
chore: Bump app versions and requirements
Signed-off-by: Joas Schilling <coding@schilljs.com>
2026-05-15 09:31:33 +02:00
Joas Schilling
70410d2f6e
fix(security): Update Expires time
Signed-off-by: Joas Schilling <coding@schilljs.com>
2026-05-15 09:24:40 +02:00
mykh-hailo
5380fd6865 fix: folder tree selection after any action in main content
Signed-off-by: mykh-hailo <kristianderonta0205@gmail.com>
2026-05-15 09:13:33 +02:00
Nextcloud bot
4713a1c6f2
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-05-15 00:19:29 +00:00
Josh
aa43425c28
test(settings): make authorized group integration assertion resilient
Signed-off-by: Josh <josh.t.richards@gmail.com>
2026-05-14 20:03:18 -04:00
Ferdinand Thiessen
37d1ee6189
Merge pull request #60352 from nextcloud/chore/cleanup-appsot
refactor(appstore): cleanup page controller
2026-05-14 18:57:58 +02:00
Nextcloud bot
7f7d5fe277
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-05-14 00:19:47 +00:00
Ferdinand Thiessen
1d9605b5da
refactor(appstore): cleanup page controller
1. use IAppManager instead of AppManager
2. reduce functions to only filter whats needed (update count vs apps
   with updates).
3. do not use legacy OC_App

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-05-13 22:13:58 +02:00
Benjamin Gaussorgues
bde9cd6060
Merge pull request #60244 from nextcloud/share-mail-fed-remove-order
remove unneeded sort when listing mail/federated shares
2026-05-13 16:49:07 +02:00
Ferdinand Thiessen
91762eaff9
Merge pull request #60176 from nextcloud/chore/remove-legacy-fallbacks
chore(appstore): remove legacy warnings for now required attributes
2026-05-13 12:14:08 +02:00
Ferdinand Thiessen
e371c5d69a
Merge pull request #60066 from nextcloud/fix/type-app-info
fix(appinfo): properly type info parser and app manager for appinfo.xml types
2026-05-13 11:22:58 +02:00
Nextcloud bot
c35ef56966
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-05-13 00:20:17 +00:00
Ferdinand Thiessen
26a9c0960f chore(appstore): remove legacy warnings for now required attributes
`<nextcloud min-version max-version>` is now a required element of the
appinfo for quite a long time. So we can remove the legacy warning from
owncloud times. Its validated with the XSD anyways.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-05-13 00:10:37 +02:00
Ferdinand Thiessen
21426974b1
fix(app-info-shipped): add remote as its still available in code base
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-05-12 22:52:32 +02:00
Ferdinand Thiessen
e3783b88e6
fix(AppManager): properly type AppInfo type based on XSD
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-05-12 22:52:32 +02:00
Carl Schwan
38d8eb5410
Merge pull request #58806 from nextcloud/carl/utils-cleanup
Multiple cleanups in OCP/Utils and OC_Utils
2026-05-12 20:03:55 +02:00
Ferdinand Thiessen
4ffcb2a255
Merge pull request #60243 from nextcloud/fix/settings-icon
fix(settings): remove legacy handling of active navigation settings icon
2026-05-12 19:26:47 +02:00
Carl Schwan
279bface8e refactor: Delete deprecated code from OC_Util
Signed-off-by: Carl Schwan <carlschwan@kde.org>
2026-05-12 18:24:12 +02:00
Carl Schwan
4caa444f90 refactor(utils): Mark share related methods as deprecated
The underlying OC_Utils methods are already deprecated

Signed-off-by: Carl Schwan <carlschwan@kde.org>
2026-05-12 18:24:12 +02:00
Carl Schwan
ab424e20e2 refactor: Deprecate url generator utils
Add a new IUrlGenerator::linkToRemote and replace usage of the old API
with the new one.

Signed-off-by: Carl Schwan <carlschwan@kde.org>
2026-05-12 18:24:12 +02:00
Ferdinand Thiessen
56293454c8 fix(settings): apply consistent style by using proper components
Use the proper app navigation components for the account management
navigation.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-05-12 18:01:02 +02:00
Carl Schwan
4eb8bc8d50
Merge pull request #59928 from nextcloud/carl/ldap-search-one-by-attribute
feat(ldap): Allow to search one user by one of its LDAP attribute
2026-05-12 14:34:15 +02:00
Benjamin Gaussorgues
b438b345b5
Merge pull request #60317 from nextcloud/fix/snowflake_server_id_doc
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(snowflake): fix wrong documentation about serverId
2026-05-12 14:16:31 +02:00
nfebe
3eb717eb16 fix(settings): Limit active-icon inversion to legacy nav design
On the new tinted active background the inversion flips icons to
white on a light surface. Now scoped to the legacy design only.

Signed-off-by: nfebe <fenn25.fn@gmail.com>
2026-05-12 12:32:07 +02:00
Benjamin Gaussorgues
9e36754429
fix(snowflake): fix wrong documentation about serverId
Maximum value of a server ID is 511 (9 bits) and not 1023.
Also adjust SetupCheck

Signed-off-by: Benjamin Gaussorgues <benjamin.gaussorgues@nextcloud.com>
2026-05-12 10:47:44 +02:00
Peter Ringelmann
f96cf79348 fix(files_sharing): apply link share password on first save
Pre-declare newPassword on the share state so Vue 2's reactivity covers
it from the start. Without this, $set later relies on a
property-addition notification path that races with the toggle's async
setter and intermittently drops the password in certain build
environments.

Fixes: #57011
-e
Signed-off-by: Peter Ringelmann <peter.ringelmann@nextcloud.com>
2026-05-12 10:08:18 +02:00
Kate
ac15544703
Merge pull request #60299 from nextcloud/fix/remove-iservercontainer-from-core-apps
Chore: Remove references to deprecated interface IServerContainer
2026-05-12 07:48:58 +02:00
Nextcloud bot
88b79c6a1b
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-05-12 00:20:57 +00:00
Côme Chilliet
351b36738d
Merge pull request #59977 from nextcloud/fix/clean-app-namespace-handling
refactor: Cleanup application namespace handling
2026-05-11 17:27:07 +02:00
Côme Chilliet
028719b514
chore: Fix deprecation notice in dav application tests
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2026-05-11 16:22:22 +02:00
Côme Chilliet
3e4a1415c4
chore(provisioning_api): Remove unused file referencing obsolete interface
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2026-05-11 16:22:21 +02:00
Côme Chilliet
db49744e49
fix(files_version): Rely on DI for principalBackend
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2026-05-11 16:22:21 +02:00
Côme Chilliet
c853d8f96e
fix(files): Use proper DI for TagService class
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2026-05-11 16:22:21 +02:00
Côme Chilliet
865cf5f2a7
fix(files): Use proper DI for ApiController
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2026-05-11 16:11:13 +02:00
Josh
1f2c020c8b chore(files_reminders): make lint happy
Signed-off-by: Josh <josh.t.richards@gmail.com>
2026-05-11 15:30:29 +02:00
Josh
5a5cd8812c fix(files_reminders): switch from DB-side NOW() to PHP-side generation
Signed-off-by: Josh <josh.t.richards@gmail.com>
2026-05-11 15:30:29 +02:00
Kate
896b54b8ee
Merge pull request #59540 from nextcloud/jtr/fix-profile-404-template-output 2026-05-11 15:16:08 +02:00
Côme Chilliet
6664f62a6c fix: Fix debug mode and tests mocking IAppManager
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2026-05-11 14:53:29 +02:00
Ferdinand Thiessen
7c6672c1a3
Merge pull request #60236 from nextcloud/fix/nextcloud-vue
fix(settings): use proper component structure to make navigation work
2026-05-11 12:55:45 +02:00
Carl Schwan
acceeb6dff
feat(ldap): Allow to search one user by one of its LDAP attribute
Signed-off-by: Carl Schwan <carlschwan@kde.org>
2026-05-11 12:41:00 +02:00
Nextcloud bot
d8d6518598
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2026-05-11 00:19:07 +00:00
Ferdinand Thiessen
60f4b4c159
fix(settings): use proper component structure to make navigation work
`NcAppNavigation` is only allowed in `NcContent` but we were not using
it because the content was rendered by the server as templates.
This is now fixed by moving the content inside the `NcContent` once
mounted.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-05-10 22:18:29 +02:00
Nextcloud bot
f16c6c95c4
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2026-05-10 00:19:09 +00:00
Nextcloud bot
ef1bea0bfa
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2026-05-09 00:19:05 +00:00
Robin Appelman
39d2ca60d2
perf: remove unneeded sort when listing federated shares
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-05-08 18:12:13 +02:00
Robin Appelman
b49ef46e72
perf: remove unneeded sort when listing mail shares
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-05-08 18:11:08 +02:00
Christoph Wurst
6e3914f951
Merge pull request #59654 from nextcloud/carl/permission-upload
fix: Fix permission issue when uploading a chunked file
2026-05-08 14:20:38 +02:00
Anna
b00244391c
Merge pull request #60198 from nextcloud/fix/noid/theming-broken-images-32-0-9
fix(theming): fix broken custom images introduced by #58224
2026-05-08 12:40:00 +02:00
Carl Schwan
06f0765e19 fix: Fix permission issue when uploading a chunked file
Follow up from #59511

Signed-off-by: Carl Schwan <carlschwan@kde.org>
2026-05-08 11:47:16 +02:00
Nextcloud bot
548708d971
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2026-05-08 00:19:38 +00:00
Anna Larch
e54963cdf6 test(theming): update tests for ImageManager and ThemingController fixes
- ImageManagerTest: inject IAppConfig mock, switch cachebuster assertions
  from IConfig::getAppValue to IAppConfig::getAppValueInt, add
  testGetImageSvgToSvg and testGetImageSvgToPng, update mockGetImage to
  reflect the corrected getImage() logic
- ThemingControllerTest: update getImage and getManifest tests to use
  IAppConfig::getAppValueString for MIME type and cachebuster lookups,
  add testGetLogoOriginalFile for the extensionless-file MIME path

AI-Assisted-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Signed-off-by: Anna Larch <anna@nextcloud.com>
2026-05-07 19:40:49 +02:00
Anna Larch
8a0080cbbb fix(theming): fix broken custom images introduced in 32.0.9
PR #58224 introduced a raster→SVG conversion path in ImageManager::getImage()
that breaks display of custom theming images. The root cause is a three-part
bug chain:

1. getImage() attempted to convert raster images (PNG/JPEG) to SVG format,
   which Imagick cannot do meaningfully and produces broken output.
2. getMimeType() returns 'application/octet-stream' for extensionless stored
   files, so the Content-Type response header was wrong.
3. Stale .svg cache files persisted after image replacement, causing
   subsequent requests to serve the wrong format.

Fix by:
- Restricting the Imagick conversion to SVG→PNG only (not raster→SVG)
- Reading the stored MIME type from IAppConfig for extensionless files in
  ThemingController::getImage()
- Deleting .svg cache files in ImageManager::delete()
- Injecting IAppConfig into ImageManager and reading the cachebuster via
  IAppConfig::getAppValueInt() so the URL returned after upload always
  carries the freshly-incremented value (IConfig::getAppValue() can return
  a stale cached value within the same request)
- Updating the FileInputField Vue component to use a reactive cacheKey ref
  that increments on every upload, so the thumbnail refreshes even when the
  MIME type of the new image is the same as the old one

AI-Assisted-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Signed-off-by: Anna Larch <anna@nextcloud.com>
2026-05-07 19:40:49 +02:00
David Dreschner
230afb8f11
chore(AppStore): Add translations to REUSE.toml for app store
Signed-off-by: David Dreschner <david.dreschner@nextcloud.com>
2026-05-07 12:19:41 +02:00
John Molakvoæ
57a2630be7
Merge pull request #60192 from nextcloud/enh/ship-files_lock 2026-05-07 09:10:57 +02:00
Nextcloud bot
c1ea92a7de
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2026-05-07 00:19:37 +00:00
Arthur Schiwon
5c1eee588e
feat(updatenotification): handle files_lock
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2026-05-06 18:38:09 +02:00
Louis
0ac7d3cf99
Merge pull request #59671 from nextcloud/feat/add-check-all-seen-users
feat(user_ldap): Add option to check all seen users
2026-05-06 18:29:48 +02:00
Nextcloud bot
d56ad83c1c
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2026-05-06 00:20:38 +00:00
Ferdinand Thiessen
387b40bcfe
Merge pull request #57290 from nextcloud/refactor/split-appstore
refactor(appstore): migrate to Typescript and Vue 3
2026-05-06 00:28:15 +02:00
Daniel
e62290181d
Merge pull request #60150 from nextcloud/bugfix/noid/add-action-to-notification-to-mark-read
fix(comments): Add an action to comment notification that dismisses it
2026-05-05 23:47:12 +02:00
Ferdinand Thiessen
e03f48692e
chore: fix psalm issues
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-05-05 22:16:02 +02:00
Ferdinand Thiessen
b0d364388a
refactor(appstore): handle in-app-search of appstore
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-05-05 22:16:01 +02:00
Ferdinand Thiessen
9f8745fd78
refactor(appstore): migrate appstore views to Vue 3 and Typescript
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-05-05 22:16:01 +02:00
Ferdinand Thiessen
5e7f45ace6
refactor(appstore): migrate sidebar to Vue 3 and Typescript
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-05-05 22:16:01 +02:00
Ferdinand Thiessen
3b1ed578c5
refactor(appstore): migrate app level badge to css modules
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-05-05 22:16:01 +02:00
Ferdinand Thiessen
26ef27bfb1
refactor(appstore): migrate app bundles view to Vue 3
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-05-05 22:16:01 +02:00
Ferdinand Thiessen
a4d8b3be43
refactor(appstore): migrate app management views to Vue 3 and Typescript
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-05-05 22:15:18 +02:00
Ferdinand Thiessen
ff45fb8ae5
refactor(appstore): migrate app discover section to Vue 3
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-05-05 22:15:18 +02:00
Ferdinand Thiessen
a524610803
refactor(appstore): migrate daemon selection dialog to Typescript and Vue 3
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-05-05 22:15:18 +02:00
Ferdinand Thiessen
28d71327dd
refactor(appstore): migrate markdown component to Typescript
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-05-05 22:15:18 +02:00
Ferdinand Thiessen
c62eae54c5
refactor(appstore): prepare Vue 3 migration
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-05-05 22:15:17 +02:00
Ferdinand Thiessen
5abb879491
perf(appstore): only send what is needed in app listing
reduces transfered data from 6MiB to <1MiB

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-05-05 22:14:57 +02:00
Carl Schwan
ff07c99e0a
Merge pull request #60137 from nextcloud/carl/commnent-event
fix: Dispatch old comment events
2026-05-05 14:30:25 +02:00
Joas Schilling
2e41ee8b7e
fix(comments): Add an action to comment notification that dismisses it
Signed-off-by: Joas Schilling <coding@schilljs.com>
2026-05-05 14:10:35 +02:00
Carl Schwan
e6a3b689ae
fix(tests): Adapt tests for comments
And make sure these are now covered by psalm

Signed-off-by: Carl Schwan <carlschwan@kde.org>
2026-05-05 12:50:59 +02:00
Carl Schwan
a44deacd47
chore: Add comment about deprecation
Co-authored-by: Côme Chilliet <91878298+come-nc@users.noreply.github.com>
Signed-off-by: Carl Schwan <carl@carlschwan.eu>
2026-05-05 12:30:17 +02:00
Carl Schwan
da5c8b74eb
fix: Dispatch old comment events
Signed-off-by: Carl Schwan <carlschwan@kde.org>
2026-05-05 12:30:16 +02:00
Ferdinand Thiessen
2e0b001a41 refactor(appstore): adjust frontend for new API location
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-05-05 10:41:04 +02:00
Ferdinand Thiessen
3f8710500c chore: apply strict rector rules on appstore
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-05-05 10:41:04 +02:00
Ferdinand Thiessen
f6a37dc608 refactor(appstore): split controllers and use proper root
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-05-05 10:41:04 +02:00
Ferdinand Thiessen
5b756ad8bc refactor: split appstore from settings
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-05-05 10:41:04 +02:00
Nextcloud bot
a99f70ed71
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2026-05-05 00:19:23 +00:00
Joas Schilling
0ff0136973
Merge pull request #59909 from nextcloud/fix/comments-event-listener-registration
fix(comments): register event listener for typed comment events
2026-05-04 21:54:37 +02:00
Andy Scherzinger
05ac3cc3f5
chore(version): Hub 26 Winter -> Hub 26 Spring
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2026-05-04 12:09:11 +02:00
Benjamin Gaussorgues
aa797a36f1
Merge pull request #59995 from nextcloud/quota-writestream-fopen 2026-05-04 10:06:18 +02:00
Benjamin Gaussorgues
f3ae8ab9b0
Merge pull request #59902 from nextcloud/preload-storage-chukn
fix: chunk storage ids when preload storage info
2026-05-04 09:20:00 +02:00
Nextcloud bot
8b299fb6cc
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2026-05-04 00:19:03 +00:00
Nextcloud bot
0be34ba9bf
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2026-05-03 00:19:56 +00:00
Robin Appelman
7c4b601793 fix: translate NotEnoughSpaceException to dav exception
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-05-02 14:04:09 +02:00
Robin Appelman
5c1a72a969 chore: psalm fixes
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-05-02 14:04:01 +02:00
Nextcloud bot
e41eb6d6b3
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2026-05-02 00:18:55 +00:00
rakekniven
329279a954
chore(l10n): Plural needed to support multiplural languages
Reported at Transifex

Signed-off-by: rakekniven <2069590+rakekniven@users.noreply.github.com>
2026-05-01 20:34:25 +02:00
Andy Scherzinger
414a95a1ad
Merge pull request #59899 from nextcloud/feat/font-weight-variables
feat(theming): Introduce font weight variables
2026-05-01 17:19:50 +02:00
Nextcloud bot
98973fd681
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2026-05-01 00:19:17 +00:00
Sebastian Krupinski
585ca98367
Merge pull request #59517 from nextcloud/feat/part-full-day-default-alarm
feat: default full / part day alarm
2026-04-30 12:42:58 -04:00
Peter R.
4d0cba89ab
Merge pull request #59406 from nextcloud/feat/40903/edit-user-dialog
feat(users and groups): re-use add account dialog when editing accounts
2026-04-30 17:54:42 +02:00
Carl Schwan
c26de181ed
Merge pull request #60018 from nextcloud/chore/dont-use-legacy
refactor(provisioning): do not use legacy `OC_App` class
2026-04-30 16:02:33 +02:00
Ferdinand Thiessen
9a5ff61820
Merge pull request #60016 from nextcloud/fix/app-types
refactor(Fetcher): properly type AppStore fetcher
2026-04-30 15:52:01 +02:00
Peter R.
ec6ba2357d
Merge branch 'master' into feat/40903/edit-user-dialog 2026-04-30 15:25:52 +02:00
Côme Chilliet
7bd0050564
feat(user_ldap): Add a limit and offset options for check-user --all-seen-users
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2026-04-30 14:44:20 +02:00
Ferdinand Thiessen
1dbc2c4c10
refactor(provisioning): do not use legacy OC_App class
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-04-30 14:40:32 +02:00
Côme Chilliet
0bcf760ac1
feat(user_ldap): Add option to check all seen users
This can be useful in some situations to sync all seen users with --update

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2026-04-30 14:37:13 +02:00
Ferdinand Thiessen
e7a2f660c7
refactor(Fetcher): properly type AppStore fetcher
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-04-30 14:01:56 +02:00
Ferdinand Thiessen
75273a67f0
chore: adjust for now fixed strict rector changes
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-04-30 12:35:37 +02:00
Peter Ringelmann
e5d8c3bad4 Merge remote-tracking branch 'origin/master' into feat/40903/edit-user-dialog
# Conflicts:
#	dist/files-main.js
#	dist/files-main.js.map
2026-04-30 09:09:23 +02:00
Kent Delante
6f9b4c47f1 fix(files): escape html entities in dav search requests
Signed-off-by: Kent Delante <kent@delante.me>

This fixes a 'xmlParseEntityRef: no name' error returned when
searching in files navigation while in folders with special characters
in the name.
2026-04-30 11:09:18 +08:00
Nextcloud bot
f9ff92746e
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2026-04-30 00:19:21 +00:00
nextcloud-command
e11e7f1c70
refactor: Apply rector changes
Signed-off-by: GitHub <noreply@github.com>
2026-04-29 23:54:19 +02:00
Ferdinand Thiessen
be2ac0bd86
Merge pull request #59932 from nextcloud/carl/copySkeleton
refactor: Move copy skeleton step to a file listener
2026-04-29 23:15:38 +02:00
Peter Ringelmann
b9ac421649 chore: fix linting
-e
Signed-off-by: Peter Ringelmann <peter.ringelmann@nextcloud.com>
2026-04-29 16:54:14 +02:00
Peter Ringelmann
15279b44d8 fix(settings): debounce manager search and drop startup-time preload
-e
Signed-off-by: Peter Ringelmann <peter.ringelmann@nextcloud.com>
2026-04-29 16:26:39 +02:00
Peter R.
48727aa942 fix(provisioning_api): use isAdmin() in delegated admin edit guard
Co-authored-by: Côme Chilliet <91878298+come-nc@users.noreply.github.com>
Signed-off-by: Peter Ringelmann <peter.ringelmann@nextcloud.com>
2026-04-29 16:26:38 +02:00
Peter Ringelmann
2f927e0d94 fix(provisioning_api): tighten editUserMultiField permission checks
-e
Signed-off-by: Peter Ringelmann <peter.ringelmann@nextcloud.com>
2026-04-29 16:26:38 +02:00
Peter Ringelmann
25ce2a17e5 refactor(provisioning_api): share validators between editUser and editUserMultiField
-e
Signed-off-by: Peter Ringelmann <peter.ringelmann@nextcloud.com>
2026-04-29 16:26:38 +02:00
Peter Ringelmann
9e82d25f22 refactor(settings): inline UserRowMixin into UserRow
-e
Signed-off-by: Peter Ringelmann <peter.ringelmann@nextcloud.com>
2026-04-29 16:26:38 +02:00
Peter Ringelmann
24c29f4606 fix(settings): restore initForm language assignment comment
-e
Signed-off-by: Peter Ringelmann <peter.ringelmann@nextcloud.com>
2026-04-29 16:26:38 +02:00
Peter Ringelmann
cf2d31597f fix(settings): update group counts after editUserMultiField
-e
Signed-off-by: Peter Ringelmann <peter.ringelmann@nextcloud.com>
2026-04-29 16:26:29 +02:00
Peter Ringelmann
c05904fa04 fix(provisioning_api): add missing @return annotation for editUserMultiField
-e
Signed-off-by: Peter Ringelmann <peter.ringelmann@nextcloud.com>
2026-04-29 16:26:29 +02:00
Peter Ringelmann
cf67d29c91 style(provisioning_api): apply php-cs-fixer
-e
Signed-off-by: Peter Ringelmann <peter.ringelmann@nextcloud.com>
2026-04-29 16:26:29 +02:00
Peter Ringelmann
9fe75f3502 fix: align static value with inputs
-e
Signed-off-by: Peter Ringelmann <peter.ringelmann@nextcloud.com>
2026-04-29 16:26:29 +02:00
Peter Ringelmann
f1b916ce3e fix(settings): reset new user form after creation
-e
Signed-off-by: Peter Ringelmann <peter.ringelmann@nextcloud.com>
2026-04-29 16:26:29 +02:00
Peter Ringelmann
72f41f399d fix(settings): replace disabled username input with static display, use design tokens
-e
Signed-off-by: Peter Ringelmann <peter.ringelmann@nextcloud.com>
2026-04-29 16:26:29 +02:00
Peter Ringelmann
c8f3c0423e fix(provisioning_api): allow clearing display name via editUserMultiField
Map empty string to userId since User::setDisplayName() rejects ""
-e
Signed-off-by: Peter Ringelmann <peter.ringelmann@nextcloud.com>
2026-04-29 16:26:29 +02:00
Peter Ringelmann
2bfdd86561 fix(settings): auth guards, NcSelectUsers migration, form cleanup
Mirror editUser permission checks in editUserMultiField. Swap NcSelect
:user-select for NcSelectUsers. Extract helpers into userFormUtils.ts.
Simplify UserList form init, drop unused Vue import. Update E2E tests.
-e
Signed-off-by: Peter Ringelmann <peter.ringelmann@nextcloud.com>
2026-04-29 16:26:29 +02:00
Peter Ringelmann
48f4b0b956 fix: improve UI layout of modal
-e
Signed-off-by: Peter Ringelmann <peter.ringelmann@nextcloud.com>
2026-04-29 16:26:29 +02:00
Peter Ringelmann
5eb8ef6f18 feat(settings): replace inline user editing with edit dialog
Replace inline row editing in user management with a modal dialog.
Extract shared form fields into UserFormFields with sub-components
(Groups, Quota, Language, Manager) using a single formData prop.
Normalize newUser shape to API-aligned field names.

Refs: #40903
-e
Signed-off-by: Peter Ringelmann <peter.ringelmann@nextcloud.com>
2026-04-29 16:26:29 +02:00
Peter Ringelmann
f96730587f feat(provisioning_api): implement editUserMultiField PATCH endpoint
Add atomic multi-field user update with collected validation errors,
IAppConfig migration, and corresponding Vuex store action/mutation.

Signed-off-by: Peter Ringelmann <peter.ringelmann@nextcloud.com>
2026-04-29 16:26:29 +02:00
Peter Ringelmann
01ab485c95 test(provisioning_api): add failing tests for editUserMultiField endpoint
Signed-off-by: Peter Ringelmann <peter.ringelmann@nextcloud.com>
2026-04-29 16:26:29 +02:00
Peter Ringelmann
74f0bd6b48 feat(provisioning_api): add PATCH editUserMultiField route
Signed-off-by: Peter Ringelmann <peter.ringelmann@nextcloud.com>
2026-04-29 16:26:28 +02:00
Ferdinand Thiessen
4cd65b080a
Merge pull request #59848 from nextcloud/jtr/fix-settings-sort-list
fix(settings): sort app list by app name instead of app objects
2026-04-29 15:25:08 +02:00
Josh
b7ecd901aa fix(settings): sort app list by status bucket and app name
Signed-off-by: Josh <josh.t.richards@gmail.com>
2026-04-29 12:24:52 +00:00
Josh
ce50c8734c chore(files_external/s3): use example reserved domain
Co-authored-by: Kate <26026535+provokateurin@users.noreply.github.com>
Signed-off-by: Josh <josh.t.richards@gmail.com>
2026-04-29 14:06:30 +02:00
Josh
3a3736d97c feat(files_external): clearer label for FTP + FTPS backend
Signed-off-by: Josh <josh.t.richards@gmail.com>
2026-04-29 14:06:30 +02:00
Josh
119e40812a feat(files_external): clearer label for Nextcloud / ownCloud backend
Signed-off-by: Josh <josh.t.richards@gmail.com>
2026-04-29 14:06:30 +02:00
Josh
be182bf1d7 feat(files_external): clearer label for SMB backend
Signed-off-by: Josh <josh.t.richards@gmail.com>
2026-04-29 14:06:30 +02:00
Josh
e790cbff93 feat(files_external): clearer label for SMB_OC backend
Signed-off-by: Josh <josh.t.richards@gmail.com>
2026-04-29 14:06:30 +02:00
Josh
b91dba44d5 feat(files_external): clearer labeling for SFTP backend
Signed-off-by: Josh <josh.t.richards@gmail.com>
2026-04-29 14:06:30 +02:00
Josh
607062dcbb feat(files_external): clearer label for SFTP_Key backend
Signed-off-by: Josh <josh.t.richards@gmail.com>
2026-04-29 14:06:30 +02:00
Josh
328f48352d feat(files_external): clearer label for Local storage
Signed-off-by: Josh <josh.t.richards@gmail.com>
2026-04-29 14:06:30 +02:00
Josh
561fceb631 feat(files_external/swift): modernize label
Signed-off-by: Josh <josh.t.richards@gmail.com>
2026-04-29 14:06:30 +02:00
Josh
79e3ae091f feat(files_external/s3): modernize parameter labels/descriptions
Signed-off-by: Josh <josh.t.richards@gmail.com>
2026-04-29 14:06:30 +02:00
Josh
85cbd5b1d1 feat(files_external): alphabetical sort backends
The front-end will display them in the order returned.

Signed-off-by: Josh <josh.t.richards@gmail.com>
2026-04-29 14:06:30 +02:00
Marcel Klehr
b2ffaaf147
Merge pull request #59958 from nextcloud/feat/setupcheck-taskprocessing-worker
Feat: Better reporting if something is wrong with taskprocessing
2026-04-29 12:07:20 +02:00
Marcel Klehr
1adf75499a fix: Fix psalm issues
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2026-04-29 10:59:32 +02:00
Marcel Klehr
cbaf5fa99f fix(TaskProcessingWorker): Adjust config key name
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2026-04-29 10:11:25 +02:00
Joas Schilling
a0fedf1c7f
Merge pull request #59985 from nextcloud/chore/psalm-v6
chore: update psalm to v6
2026-04-29 07:20:29 +02:00
Nextcloud bot
82c0bc670b
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2026-04-29 00:20:17 +00:00