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 +07: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 +07: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 +07: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 +07: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 +07:00
Kate
f7cdb228c9
Merge pull request #54530 from nextcloud/fix/lowercase-profile-page-route-name
2025-08-20 17:07:02 +07: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 +07: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 +07:00
Nextcloud bot
4733369764
fix(l10n): Update translations from Transifex
...
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-08-20 00:12:26 +07:00
Kate
4edfef4dd5
Merge pull request #53895 from nextcloud/fix/cleanup-updater-class
2025-08-19 17:40:15 +07: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 +07: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 +07: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 +07:00
Kate
74d9649e6e
Merge pull request #54058 from nextcloud/feat/preset/load-apps-on-preset
2025-08-19 11:43:54 +07:00
Daniel
09607f40eb
Merge pull request #53834 from nextcloud/feat/imailaddressvalidator
...
feat(ocp): add email address validator
2025-08-19 09:38:51 +07:00
Daniel
b9da14be0c
Merge pull request #54494 from nextcloud/fix/typos
...
fix: typos in cache and app config
2025-08-19 09:34:24 +07: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 +07:00
Nextcloud bot
18da10fd01
fix(l10n): Update translations from Transifex
...
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-08-19 00:12:37 +07: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 +07: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 +07: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 +07: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 +07:00
Côme Chilliet
7978b6153d
chore: Update autoloader
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-08-18 17:09:40 +07: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 +07: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 +07: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 +07: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 +07: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 +07: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 +07: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 +07: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 +07: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 +07: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 +07: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 +07: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 +07: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 +07:00
Richard Steinmetz
f95ce30994
feat: indicate reason for preloading notifications
...
Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
2025-08-18 15:28:46 +07: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 +07: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 +07: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 +07:00
Ferdinand Thiessen
2fb1cfeb10
Merge pull request #54470 from nextcloud/feat/central-timezone-setting
...
feat: allow to set your local timezone in settings and provide it to clients
2025-08-18 14:20:13 +07:00
Ferdinand Thiessen
866ccae542
docs(IConfig): fix wrong doc block type for `$key` on `setAppValue`
...
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-08-18 13:24:18 +07: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 +07: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 +07: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 +07: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 +07:00
Ferdinand Thiessen
c40350d2e4
feat(core): provide capabilities of the current user
...
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-08-18 12:35:31 +07:00
Nextcloud bot
0bc2b34793
fix(l10n): Update translations from Transifex
...
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-08-18 00:12:13 +07:00
Nextcloud bot
23573c4947
fix(l10n): Update translations from Transifex
...
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-08-17 00:12:00 +07: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 +07:00
Nextcloud bot
2fc58bf45d
fix(l10n): Update translations from Transifex
...
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-08-15 00:12:18 +07: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 +07: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 +07: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 +07:00
Daniel Kesselberg
336c6d2957
feat(ocp): add email address validator
...
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2025-08-14 18:34:36 +07: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 +07: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 +07: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 +07: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 +07: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 +07: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 +07:00
Andrey Borysenko
5c4e84f128
feat(UnifiedSearch): External search providers support
...
Signed-off-by: Andrey Borysenko <andrey18106x@gmail.com>
2025-08-14 16:37:39 +07: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 +07: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 +07: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 +07:00
Robin Appelman
385dd36ff8
feat: allow configuring multiple objectstore configurations
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-08-14 13:06:51 +07: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 +07:00
Anna Larch
6a3a244807
feat(activity): add bulk activity option
...
Signed-off-by: Anna Larch <anna@nextcloud.com>
2025-08-14 11:31:47 +07: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 +07:00
Andy Scherzinger
7d45e9b2a3
Merge pull request #54401 from nextcloud/fix/streamer-directory-mtime
...
fix(ZipFolderPlugin): set mtime of directories in archive
2025-08-13 17:58:45 +07: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 +07:00
Nextcloud bot
2979a2bab0
fix(l10n): Update translations from Transifex
...
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-08-13 00:12:03 +07:00
Maxence Lange
cb84ccc57d
feat(preset): share password protection
...
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
2025-08-12 14:37:32 +07:00
Nextcloud bot
2427b864ec
fix(l10n): Update translations from Transifex
...
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-08-12 00:12:12 +07:00
Robin Appelman
106ac1b123
Merge pull request #54357 from nextcloud/displayname-cache-duration
...
fix: increase how long we cache display names
2025-08-11 14:21:31 +07:00
Robin Appelman
21c7ae62e0
Merge pull request #53528 from nextcloud/jtr-maint-refresh-part-1
...
fix(maintenance): refresh page when turned off (sometimes)
2025-08-11 11:44:35 +07: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 +07: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 +07:00
Nextcloud bot
de4a35b202
fix(l10n): Update translations from Transifex
...
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-08-11 00:12:44 +07:00
Nextcloud bot
b60a8ddc24
fix(l10n): Update translations from Transifex
...
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-08-10 00:12:02 +07: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 +07:00
Nextcloud bot
b8c6eb82ca
fix(l10n): Update translations from Transifex
...
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-08-09 00:12:21 +07:00
Maxence Lange
bbc9ed138c
fix(config): fix tests+psalm
...
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
2025-08-08 11:00:49 +07:00
Maxence Lange
a4b9edc8eb
feat(preset): Profile Visibility
...
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
2025-08-08 10:58:59 +07: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 +07:00
Maxence Lange
33c4fe504d
feat(preset): new PresetManager
...
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
2025-08-08 10:58:58 +07:00
Benjamin Gaussorgues
8783679a49
Merge pull request #54303 from nextcloud/jtr-oc-appframework-app-cleanup
2025-08-08 10:41:51 +07:00
yemkareems
4c887ec12b
fix: eslint errors fixed in vue file, IAccountManager since added, bluesky svg added to REUSE.toml file
...
Signed-off-by: yemkareems <yemkareems@gmail.com>
2025-08-08 08:06:46 +07:00
Ferdinand Thiessen
d36602acd5
chore: update openapi and autoloaders
...
Co-authored-by: Ferdinand Thiessen <opensource@fthiessen.de>
Signed-off-by: yemkareems <yemkareems@gmail.com>
2025-08-08 08:06:45 +07: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 +07:00
John Molakvoæ
3dac5b33ee
Merge pull request #54282 from nextcloud/techdebt/noid/reduce-deprecation-spam
2025-08-08 10:04:22 +07: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 +07: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 +07: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 +07:00
Nextcloud bot
1518ded8b1
fix(l10n): Update translations from Transifex
...
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-08-08 00:12:32 +07:00
Julien Veyssier
aa2ca86fb3
feat(taskprocessing): avoid generator cascade
...
Signed-off-by: Julien Veyssier <julien-nc@posteo.net>
2025-08-07 15:12:22 +07:00
Julien Veyssier
e2c65b2493
feat(taskprocessing): fix mistake
...
Signed-off-by: Julien Veyssier <julien-nc@posteo.net>
2025-08-07 15:12:22 +07: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 +07:00
Julien Veyssier
10921c05b7
feat(taskprocessing): fix some CI
...
Signed-off-by: Julien Veyssier <julien-nc@posteo.net>
2025-08-07 15:12:21 +07: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 +07:00