Commit graph

16163 commits

Author SHA1 Message Date
Ferdinand Thiessen
a31e520019
fix(Filesystem): use FilenameValidator for Filesystem::isFileBlacklisted
This fixes the issue that some methods will not allow uploading files
because they still require the deprecated config option to be used.
So instead we need to use the validator introduced in v30.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-09-02 19:02:25 +02:00
Carl Schwan
d73537dd60
Merge pull request #54664 from nextcloud/carl/port-away-execute-lib
Port away from IQueryBuilder::execute in lib/ and tests/ and fix invalid usage of UniqueConstraintViolationException
2025-09-02 14:38:11 +02:00
max-nextcloud
4927a283bd
Merge pull request #54798 from nextcloud/enh/different-color-for-guest-with-same-name
enh(avatars): use different colors for guests for the same name
2025-09-02 14:04:21 +02:00
Maxence Lange
46ced9df22 fix(lexicon): send single notice/warning when using unknown config key
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
2025-09-02 10:51:44 -01:00
Christoph Wurst
9a0892ca30
Merge pull request #53831 from nextcloud/feat/meeting-proposals
feat: Meeting Proposals
2025-09-02 13:16:33 +02:00
Andy Scherzinger
88ba65bcd4
Merge pull request #54800 from nextcloud/artonge/fix/remove_intro_from_presets
fix: Remove intro from presets
2025-09-02 12:36:04 +02:00
Carl Schwan
996be0f441 fix(comments): Don's catch invalid DriverException
These are nowadays also OCP\DB\Exception and if the id is not a numeric
deleting by id is also non working.

Signed-off-by: Carl Schwan <carl.schwan@nextclound.com>
2025-09-02 11:55:58 +02:00
Carl Schwan
c4e6fbdae7 fix(query-builder): Don't catch UniqueConstraintViolationException
UniqueConstraintViolationException is no longer throw directly but
instead is now wrapped inside a \OCP\DB\Exception. So check the
exception reason.

Signed-off-by: Carl Schwan <carl.schwan@nextclound.com>
2025-09-02 11:55:58 +02:00
Carl Schwan
c21b8169ff refactor(querybuilder): Port away from qb::execute() in lib/
Replace by either executeStatement or executeQuery

Signed-off-by: Carl Schwan <carl.schwan@nextclound.com>
2025-09-02 11:55:56 +02:00
Louis Chemineau
a9d450285f
fix: Remove intro from presets
Signed-off-by: Louis Chemineau <louis@chmn.me>
2025-09-02 11:37:37 +02:00
Max
78022f5447
feat(avatars): use different colors for guests for the same name
Make it harder to impersonate users who have not set their avatar.

Signed-off-by: Max <max@nextcloud.com>
2025-09-02 11:31:14 +02:00
Christoph Wurst
ffd2b3bde0
fix(dav): Mark removal of dav object properties as expensive
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2025-09-02 10:49:13 +02:00
SebastianKrupinski
ff4fdf1af8
feat: meeting proposals
Signed-off-by: SebastianKrupinski <krupinskis05@gmail.com>
Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
2025-09-02 10:34:19 +02:00
Marcel Klehr
a38cb61d4d fix(RepairMimeTypes): Fix psalm issue
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2025-09-02 10:21:39 +02:00
Kate
1d50cf3b51
Merge pull request #54742 from nextcloud/carl/ParamNameMismatch 2025-09-01 21:00:06 +02:00
Marcel Klehr
8c93c00fd7 feat: Add text/plain MIME type mapping for 'text' extension
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2025-09-01 13:13:56 +02:00
Carl Schwan
76dc41ea18 fix(psalm): Fix ParamNameMismatch with IRepairStep::run
Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-08-29 14:31:46 +02:00
Carl Schwan
ef5edb6801 fix(psalm): Fix ParamNameMismatch with Job::run
Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-08-29 14:31:39 +02:00
SebastianKrupinski
7e92b157e3 fix: aliases and capitalization of emails
Signed-off-by: SebastianKrupinski <krupinskis05@gmail.com>
2025-08-28 17:40:04 -04:00
Andy Scherzinger
f2de5c79cd
Merge pull request #54721 from nextcloud/bucket-mapper-fixes
fix: make bucket mapper work with new multi-object-store config
2025-08-28 19:33:47 +02:00
Robin Appelman
02f4a82088
fix: make bucket mapper work with new multi-object-store config
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-08-28 17:51:25 +02:00
Joas Schilling
3df6d90a4c
Revert "perf(base): Stop setting up the FS for every basic auth request" 2025-08-28 17:11:31 +02:00
John Molakvoæ
d785bcdc6e
Merge pull request #53920 from nextcloud/revert-53918-revert-53141-perf/files/setup-fs-basic-auth-request 2025-08-28 14:12:57 +02:00
Kate
f383db26eb
Merge pull request #54703 from nextcloud/fix/accounts/v2-scope-migration 2025-08-28 14:07:53 +02:00
Kate
a1709f576e
Merge pull request #54627 from nextcloud/fix/ocs/accept-header 2025-08-28 14:03:23 +02:00
provokateurin
bede81391b
fix(Accounts): Add back v2 scope migration
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-08-28 13:30:04 +02:00
provokateurin
e38dfef0dc chore: Remove unused \OC\Cache\CappedMemoryCache
Signed-off-by: provokateurin <kate@provokateurin.de>
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2025-08-28 09:32:51 +00:00
provokateurin
eba11750eb chore: Remove unused \OC\Cache\File
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-08-28 09:28:11 +00:00
provokateurin
26ab3a6b74 refactor(Server): Deprecate \OCP\ICache service and replace it with a local cache
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-08-28 09:28:11 +00:00
provokateurin
4b2a93cf0a
chore(Preview): Remove avconv support
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-08-27 20:51:08 +02:00
Thomas Citharel
4515974bbd
fix(profiler): set default values for fputcsv arguments to avoid depreciation warning
Co-authored-by: Joas Schilling <213943+nickvergessen@users.noreply.github.com>
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2025-08-27 19:46:30 +02:00
Carl Schwan
d0f819ba99
Merge pull request #54409 from nextcloud/comments-db-multiple
perf(comments): Add a way to get comments for multiple objects at the same time
2025-08-27 11:57:24 +02:00
Andy Scherzinger
da5c912f3c
Merge pull request #54655 from nextcloud/fix/fix-owncloud-dav-properties-migration
feat(repair): Migrate oc_properties.propertyvalue to the correct type if needed
2025-08-26 21:58:04 +02:00
Robin Appelman
ff65b61d9c
Merge pull request #54580 from nextcloud/sharded-cache-move-jail
fix moving cache items from cache jail with sharding
2025-08-26 20:20:35 +02:00
Marcel Klehr
2f4a8bb89c
Merge pull request #54620 from nextcloud/fix/set-typed-value
fix(AppConfig#setTypedValue): Catch AppConfigUnknownKeyException
2025-08-26 16:59:26 +02:00
Joas Schilling
c9712b4953
Merge pull request #54605 from nextcloud/bugfix/noid/fix-2fa-setup-during-ephemeral-session
fix(2fa): Fix 2FA session setup when ephemeral session is used
2025-08-26 15:45:15 +02:00
Côme Chilliet
78d69d5581
feat(repair): Migrate oc_properties.propertyvalue to the correct type if needed
This is sometimes needed when migration from owncloud

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-08-26 15:11:26 +02:00
Kate
3c1dc006c6
Merge pull request #54558 from nextcloud/feat/noid/set-preset-controller 2025-08-26 14:06:59 +02:00
Maxence Lange
a81d58970c feat(lexicon): set/get current preset from controller
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>

feat(lexicon): set/get current preset from controller
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
2025-08-26 09:00:04 -01:00
provokateurin
aab11d35d3
fix(OCS): Add IRequest::getFormat to determine the response Content-Type the same way everywhere
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-08-26 09:50:03 +02:00
Benjamin Gaussorgues
39e2e70084
feat(mounts): optimize load of mounts by filtering on database side
Signed-off-by: Benjamin Gaussorgues <benjamin.gaussorgues@nextcloud.com>
2025-08-26 08:55:24 +02:00
Maxence Lange
18351be65c
Merge pull request #54520 from nextcloud/fix/noid/preset-for-userconfig
feat(preset): compare userconfig lexicon entries
2025-08-25 18:19:44 -01:00
Côme Chilliet
3c14f9f933
Merge pull request #53578 from nextcloud/jtr-chore-mbstring-func-overload
chore: remove all `mbstring.func_overload` references
2025-08-25 17:00:28 +02:00
Marcel Klehr
dbb5705152 fix(AppConfig#setTypedValue): Catch AppConfigUnknownKeyException
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2025-08-25 14:06:29 +02:00
Maxence Lange
b7cdfddeda feat(preset): compare userconfig lexicon entries
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
2025-08-25 11:05:56 -01:00
Josh
130cb05ea4 chore: remove mbstring.func_overload check from checkserver()
Signed-off-by: Josh <josh.t.richards@gmail.com>
2025-08-25 13:19:36 +02:00
Côme Chilliet
8c21f2b19c fix(encryption): Fix TypeError when trying to decrypt unencrypted file
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-08-25 13:18:50 +02:00
Joas Schilling
11aa997da3
fix(2fa): Fix 2FA session setup when ephemeral session is used
Signed-off-by: Joas Schilling <coding@schilljs.com>
2025-08-25 10:39:17 +02:00
Andy Scherzinger
bd6c16ea88
Merge pull request #53503 from nextcloud/fix-json-decoding-groups-excluded-from-share
fix(sharing): fix json decoding the list of groups excluded from sharing
2025-08-24 21:38:31 +02:00
Robin Appelman
1a716578fd
fix: fix moving cache items from cache jail with sharding
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-08-22 19:21:31 +02:00
Julien Veyssier
3d36834284
feat(auth): include the token entity in TokenInvalidatedEvent
Signed-off-by: Julien Veyssier <julien-nc@posteo.net>
2025-08-21 12:42:44 +02:00
Julien Veyssier
4a35837741
feat(auth): adjust PublicKeyTokenProviderTest
Signed-off-by: Julien Veyssier <julien-nc@posteo.net>
2025-08-21 12:42:44 +02:00
Julien Veyssier
3da919c783
feat(auth): dispatch new TokenInvalidatedEvent when PublicKeyTokenProvider::invalidateToken is called
Signed-off-by: Julien Veyssier <julien-nc@posteo.net>
2025-08-21 12:42:44 +02:00
Julien Veyssier
8ffd30bbf9
feat(auth): dispatch new TokenInvalidatedEvent when PublicKeyTokenProvider::invalidateTokenById is called
Signed-off-by: Julien Veyssier <julien-nc@posteo.net>
2025-08-21 12:42:43 +02:00
Carl Schwan
94e2af0302 perf(comments): Also cache the comments count
Since we now have an easy way to fetch the comments count.

Signed-off-by: Carl Schwan <carl.schwan@nextclound.com>
2025-08-21 11:30:56 +02:00
Carl Schwan
fa5548a1f3 perf(comments): Add a way to get comments for multiple objects at the same time
Signed-off-by: Carl Schwan <carl.schwan@nextclound.com>
2025-08-21 11:18:57 +02:00
Git'Fellow
4d65b91b06
Merge pull request #54541 from nextcloud/fixAppManagerNullObjs
fix(AppManager): Argument must be of type array|object
2025-08-20 20:12:48 +02:00
Git'Fellow
b36e4e3824 fix(AppManager): Argument must be of type array|object
Signed-off-by: Git'Fellow <12234510+solracsf@users.noreply.github.com>
2025-08-20 17:16:33 +02:00
Kate
f7cdb228c9
Merge pull request #54530 from nextcloud/fix/lowercase-profile-page-route-name 2025-08-20 17:07:02 +02:00
Maxence Lange
fa60488ee7 feat(ocm): split ocm discovery and capacities
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
2025-08-20 11:57:01 -01:00
zak39
a98ba27a0f fix(route): Change "core.ProfilePage.index" to lowercase
Signed-off-by: zak39 <fotia.baptiste@hotmail.com>
2025-08-20 11:52:36 +02:00
Kate
4edfef4dd5
Merge pull request #53895 from nextcloud/fix/cleanup-updater-class 2025-08-19 17:40:15 +02:00
Maxence Lange
e1c7f6020c feat(preset): adding /settings/preset endpoint
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
2025-08-19 10:55:48 -01:00
Maxence Lange
6eda5583db feat(preset): compare default for all preset
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
2025-08-19 10:50:24 -01:00
Maxence Lange
66cc7b731a
Merge pull request #54408 from nextcloud/feat/noid/preset-on-share-link-expire-date
feat(preset): share link expiration date
2025-08-19 10:24:43 -01:00
Kate
74d9649e6e
Merge pull request #54058 from nextcloud/feat/preset/load-apps-on-preset 2025-08-19 11:43:54 +02:00
Daniel
09607f40eb
Merge pull request #53834 from nextcloud/feat/imailaddressvalidator
feat(ocp): add email address validator
2025-08-19 09:38:51 +02:00
Daniel
b9da14be0c
Merge pull request #54494 from nextcloud/fix/typos
fix: typos in cache and app config
2025-08-19 09:34:24 +02:00
Andy Scherzinger
c026c7c933
Merge pull request #54419 from nextcloud/share-event-catch
fix: catch and log exception from share events
2025-08-19 07:21:52 +02:00
Ferdinand Thiessen
6c003eda5c
Merge pull request #54483 from nextcloud/feat/fetch-user-timezone
feat(IDateTimeZone): allow to fetch timezone of specified user
2025-08-18 20:36:46 +02:00
Ferdinand Thiessen
112178d3a0
fix: typos in cache and app config
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-08-18 18:35:54 +02:00
Côme Chilliet
a25797330b
fix: Log that using an appinfo/install.php file is deprecated
appinfo/install.php is not part of the official documentation for
 application development but some apps are still using such a file.
 Log a message to deprecate this behavior, to be able to remove support
 for this later.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-08-18 17:25:07 +02:00
Côme Chilliet
12edd2b23a
fix: Deduplicate code by using DependencyAnalyzer in the AppManager
Was a bit more complicated than expected because of a dependency loop,
the L10N factory uses the app manager, thus the AppManager cannot depend
on I10N directly or indirectly in its constructor.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-08-18 17:09:40 +02:00
Côme Chilliet
b7c15949ce
chore: Get rid of AppLocator helper
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-08-18 17:09:40 +02:00
Côme Chilliet
0e01bc09a9
chore: Inline OC_App::setupBackgroundJobs
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-08-18 17:09:39 +02:00
Côme Chilliet
e5606d7fe3
chore: Move getAppPath and getAppWebPath implementations into AppManager
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-08-18 17:09:39 +02:00
Côme Chilliet
3e01a429e7
chore: Replace last calls to OC_App::enable by IAppManager
Also added a few missing deprecations

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-08-18 17:09:39 +02:00
Côme Chilliet
61a87bc384
chore: Deduplicate common code between installApp and installShippedApp
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-08-18 17:09:39 +02:00
Côme Chilliet
4abfd4871f
chore: Move isAppCompatible and shouldUpgrade to the app manager
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-08-18 16:18:38 +02:00
Côme Chilliet
25c2279966
chore: Set installShippedApps as non-static in Installer
Make code closer to the one of installApp, to be able to compare them
 and later merge them (in the shadows).

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-08-18 16:18:27 +02:00
Côme Chilliet
cb8d960766
chore: Remove check for appinfo/database.xml
It has been unsupported since Nextcloud 22.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-08-18 16:15:27 +02:00
Côme Chilliet
410389867c
chore: Inline private method OC_App::setupLiveMigrations
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-08-18 16:15:27 +02:00
Côme Chilliet
f5fac6476f
chore: Remove references to obsolete field ocsid in apps info.xml
It’s not even allowed by our xsd schema.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-08-18 16:15:25 +02:00
Côme Chilliet
42c980e093
chore: Add IAppManager property in Installer
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-08-18 16:14:48 +02:00
Côme Chilliet
fd17555333
chore: Move OC_App::updateApp to IAppManager::upgradeApp
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-08-18 16:14:45 +02:00
Côme Chilliet
6aa675c6bb
fix: Cleanup OC_App uses in Updater class
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-08-18 16:13:14 +02:00
Richard Steinmetz
f95ce30994
feat: indicate reason for preloading notifications
Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
2025-08-18 15:28:46 +02:00
Ferdinand Thiessen
6d5dd4b389
Merge pull request #54383 from nextcloud/feat/cache-app-config
feat(AppConfig): cache the config if local cache is available
2025-08-18 15:12:09 +02:00
Ferdinand Thiessen
cd550d57ef
Merge pull request #54402 from nextcloud/fix/streamer-mtime-zip
fix(Streamer): use localtime for ZIP files
2025-08-18 14:39:37 +02:00
Ferdinand Thiessen
f7e0f3f241
feat(IDateTimeZone): allow to fetch timezone of specified user
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-08-18 14:26:52 +02:00
Ferdinand Thiessen
0ef58c96ab
refactor(Memcache\Factory): move prefix generation to the factory class
This removes a circular dependency between AppConfig and cache factory.
When a cache in the app config is used.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-08-18 13:24:18 +02:00
Ferdinand Thiessen
d5e2432bcd
fix: resolve invalid usage of AppConfig::getValue
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-08-18 13:24:18 +02:00
Ferdinand Thiessen
1c85548f86
feat(AppConfig): cache app config in local cache if available
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-08-18 13:24:18 +02:00
Ferdinand Thiessen
ac545cc478
fix(SetUserTimezoneCommand): only write user login timezone if not yet set
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-08-18 12:40:42 +02:00
Daniel
64c52006dd
Merge pull request #54272 from nextcloud/enh/noid/taskprocessing-task-add-cleanup-flag
feat(taskprocessing): add cleanup flag to tasks
2025-08-15 09:48:47 +02:00
Daniel
92e282af0b
Merge pull request #53996 from nextcloud/feat/unified_search/online_providers
feat(UnifiedSearch): Online search providers support, toggle option
2025-08-14 21:08:21 +02:00
Maxence Lange
6076b67696 feat(preset): share link expiration date
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
2025-08-14 16:07:32 -01:00
Maxence Lange
61fe4c1aba
Merge pull request #54336 from nextcloud/feat/noid/preset-on-share-password
feat(preset): share password protection
2025-08-14 16:07:13 -01:00
Daniel Kesselberg
336c6d2957
feat(ocp): add email address validator
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2025-08-14 18:34:36 +02:00
Robin Appelman
e0a21e5927
Merge pull request #54384 from nextcloud/getpath-node
perf: use more optimized node-by-id logic in View::getPath
2025-08-14 18:21:23 +02:00
Ferdinand Thiessen
ba00416040 refactor(Streamer): inject IDateTimeZone as constructor arg
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-08-14 17:19:28 +02:00
Ferdinand Thiessen
bb72eed4a2 fix(Streamer): use localtime for ZIP files
ZIP does not use a proper timestamp but uses something called "DOS time".
This is a weird old format with some limitations like accuracy of only
2 seconds, but also no timezone information.
Also unline UNIX time it is not relative to some specific point in time
with timezone information, but is always considered to be the local
time. Meaning we need to convert it first to the users local time.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-08-14 17:19:28 +02:00
Maxence Lange
9c7ed07571 feat(preset): load apps on new preset
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
2025-08-14 13:27:33 -01:00
Anna
1a2d0d5c1d
Merge pull request #54117 from nextcloud/feat/noid/add-bulk-activity
feat(activity): add bulk activity option
2025-08-14 15:53:33 +02:00
Robin Appelman
b69109395b
Merge pull request #52786 from nextcloud/multi-object-store
allow configuring multiple object store backends
2025-08-14 15:49:00 +02:00
Andrey Borysenko
5c4e84f128
feat(UnifiedSearch): External search providers support
Signed-off-by: Andrey Borysenko <andrey18106x@gmail.com>
2025-08-14 16:37:39 +03:00
Stephan Orbaugh
7fe5c8fdda
Merge pull request #54120 from IONOS-Productivity/fix/unified_search.providers_allowed
fix(search): Fix SearchComposer.php filtering logic
2025-08-14 15:02:42 +02:00
Robin Appelman
b3c53c7436 feat: allow object store configuration aliases for easier migrations
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-08-14 13:06:51 +02:00
Robin Appelman
2d4bba7b0c feat: add command to get user objectstore config mappings
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-08-14 13:06:51 +02:00
Robin Appelman
385dd36ff8 feat: allow configuring multiple objectstore configurations
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-08-14 13:06:51 +02:00
Robin Appelman
dcc6c1956a fix: catch and log exception from share events
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-08-14 11:37:11 +02:00
Anna Larch
6a3a244807 feat(activity): add bulk activity option
Signed-off-by: Anna Larch <anna@nextcloud.com>
2025-08-14 11:31:47 +02:00
Robin Appelman
5987584b90 perf: use more optimized node-by-id logic in View::getPath
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-08-13 19:42:42 +02:00
Ferdinand Thiessen
32703d0500
fix(ZipFolderPlugin): set mtime of directories in archive
Directories should also have the correct mtime set and not the current
time. For this the `Streamer` class needs to support passing a time
attribute for creating folders, the underlying library already supports
this.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-08-13 10:23:47 +02:00
Maxence Lange
cb84ccc57d feat(preset): share password protection
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
2025-08-12 14:37:32 -01:00
Robin Appelman
8350fea770 fix: increase how long we cache display names
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-08-11 11:20:05 +02:00
Misha M.-Kupriyanov
69c51bb163 fix(search): Fix SearchComposer.php filtering logic
keep the $this->providers types

Test via ./occ config:app:set --value '["files","settings"]' --type array core unified_search.providers_allowed

should be part of 8e570041

Signed-off-by: Misha M.-Kupriyanov <kupriyanov@strato.de>
2025-08-11 09:42:56 +02:00
Joas Schilling
57f09b642e
fix(container): Reduce general deprecation spam on all requests
Signed-off-by: Joas Schilling <coding@schilljs.com>
2025-08-09 11:53:30 +02:00
Maxence Lange
bbc9ed138c fix(config): fix tests+psalm
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
2025-08-08 11:00:49 -01:00
Maxence Lange
a4b9edc8eb feat(preset): Profile Visibility
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
2025-08-08 10:58:59 -01:00
Maxence Lange
f32d865716 fix(lexicon): only filter out null default
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
2025-08-08 10:58:58 -01:00
Maxence Lange
33c4fe504d feat(preset): new PresetManager
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
2025-08-08 10:58:58 -01:00
Benjamin Gaussorgues
8783679a49
Merge pull request #54303 from nextcloud/jtr-oc-appframework-app-cleanup 2025-08-08 10:41:51 +02:00
yemkareems
aa227f1c55 feat: add bluesky to accounts, show the same in profile edit and visibility option, in view profile and also in sharing tab
Signed-off-by: yemkareems <yemkareems@gmail.com>
2025-08-08 08:06:45 +00:00
John Molakvoæ
3dac5b33ee
Merge pull request #54282 from nextcloud/techdebt/noid/reduce-deprecation-spam 2025-08-08 10:04:22 +02:00
Joas Schilling
2f18996347
fix(container): Don't use deprecated things to set up controllers for apps
Signed-off-by: Joas Schilling <coding@schilljs.com>
2025-08-08 08:42:56 +02:00
Joas Schilling
17c40b9474
fix(container): Log the deprecation to the app when possible
Signed-off-by: Joas Schilling <coding@schilljs.com>
2025-08-08 08:42:55 +02:00
Varun Patil
5ecd3c4b49
feat(database): Add option to test for mariadb
There are some behavioral differences that apps may need to check for.
See discussion on #51175 for more info.

This preserves the existing behavior of getDatabaseProvider()

Signed-off-by: Varun Patil <varunpatil@ucla.edu>
2025-08-08 07:50:51 +02:00
Julien Veyssier
aa2ca86fb3
feat(taskprocessing): avoid generator cascade
Signed-off-by: Julien Veyssier <julien-nc@posteo.net>
2025-08-07 15:12:22 +02:00
Julien Veyssier
e2c65b2493
feat(taskprocessing): fix mistake
Signed-off-by: Julien Veyssier <julien-nc@posteo.net>
2025-08-07 15:12:22 +02:00
Julien Veyssier
222b19b805
feat(taskprocessing): rename cleanup column to allow_cleanup
Signed-off-by: Julien Veyssier <julien-nc@posteo.net>
2025-08-07 15:12:22 +02:00
Julien Veyssier
cc295f2452
feat(taskprocessing): use Generator::getReturn to get the list of deleted tasks in the cleanup command
Signed-off-by: Julien Veyssier <julien-nc@posteo.net>
2025-08-07 15:12:21 +02:00
Julien Veyssier
19801f7ec4
feat(taskprocessing): move cleanup method to private taskprocessing manager, use it in the cleanup bg job and implement a cleanup command
Signed-off-by: Julien Veyssier <julien-nc@posteo.net>
2025-08-07 15:12:21 +02:00
Julien Veyssier
8c52b6c0fe
feat(taskprocessing): add cleanup flag to tasks to decide if they should be cleaned up automatically
Signed-off-by: Julien Veyssier <julien-nc@posteo.net>
2025-08-07 15:12:21 +02:00
Robin Appelman
5660a73a3d
Merge pull request #54238 from nextcloud/extra_sensitive_values
feat: allow admins to configure additional sensitive config values
2025-08-07 15:08:56 +02:00
Josh
67c14b0f11
refactor(App): \OC\AppFramework\App clean-up
Signed-off-by: Josh <josh.t.richards@gmail.com>
2025-08-06 17:10:45 -04:00
Daniel Calviño Sánchez
8b7aad82c7 fix: Fix button alignment for email templates in Outlook
The button group generated in email templates is expected to show the
two buttons side by side in a single row, but in Outlook both buttons
took the full width of the wrapper row and each button was shown in
its own row. To solve that the buttons are wrapped in an additional
table that shows each button in its own cell, limiting their width and
showing them in a single row; this is done conditionally and only
applied in Outlook, so it should not affect other clients.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2025-08-06 15:18:01 +02:00
Ferdinand Thiessen
7e76c91677
fix: resolve psalm errors
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-08-06 12:52:50 +02:00
Phreeman33
655ef1031b
fix: display chinese character avatar
Signed-off-by: Phreeman33 <12772373+Phreeman33@users.noreply.github.com>
2025-08-06 12:24:09 +02:00
Ferdinand Thiessen
1fdda4b202
Merge pull request #54043 from nextcloud/fix/mysql-removed-auth
fix(db): use `caching_sha2_password` for MySQL
2025-08-06 11:26:30 +02:00
Richard Steinmetz
ee6596782f
Merge pull request #54232 from nextcloud/feat/notifications/preload-many
feat(notifications): provide method to preload many notifications at once
2025-08-06 09:57:53 +02:00
Richard Steinmetz
ad39dab6ca
feat(notifications): provide method to preload many notifications at once
Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
2025-08-06 09:22:56 +02:00
skjnldsv
9aac182109 fix(core): ensure unique vcategory
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2025-08-05 22:11:21 +02:00
Ferdinand Thiessen
b814f3bba6
fix(db): use caching_sha2_password for MySQL
`caching_sha2_password` was added in 8.0.4 as the default
authentication plugin. `mysql_native_password` is deprecated since then.
In MySQL 8.4 it was disabled by default so a user need to manually
reenable it to make it work.
In MySQL 9.0 it is removed and causes the following error:

> SQLSTATE[HY000] [1524] Plugin 'mysql_native_password' is not loaded

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-08-05 20:40:38 +02:00
Robin Appelman
97efc95efc fix: better object store write error propagation
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-08-05 19:17:58 +02:00
Robin Appelman
83b8a390cd fix: always do stream counting for object store upload
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-08-05 19:17:58 +02:00
Robin Appelman
398b106f0c fix: validate written size for s3 multipart uploads
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-08-05 19:17:58 +02:00
Robin Appelman
064e1133f5 feat: allow admins to configure additional sensitive config values
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-08-05 19:16:14 +02:00
Joas Schilling
db8dd9f7f6
Merge pull request #54207 from nextcloud/feat/noid/cache-user-keys
Cache IdentityProof keys
2025-08-05 18:43:56 +02:00
Ferdinand Thiessen
ad85d65064
Merge pull request #54077 from nextcloud/jtr-files-detection-refactor-finfo
refactor(IMimeTypeDetector): streamline + minor tidying
2025-08-05 18:10:46 +02:00