Commit graph

1204 commits

Author SHA1 Message Date
Kent Delante
96672e1c4d feat: emit an event when an S3 bucket is created
Signed-off-by: Kent Delante <kent.delante@proton.me>
2025-11-24 19:37:18 +08:00
Julien Veyssier
8b3e59fa36
fix(sharing): fix potentially broken shares from the past, change 'null' download permission to 'true'
Signed-off-by: Julien Veyssier <julien-nc@posteo.net>
2025-11-17 10:07:44 +01:00
Daniel Calviño Sánchez
c40fcba5a4 fix: Fix user collaborators returned when searching for mail collaborators
The MailPlugin collaborator returned results for both user and mail
collaborators, but it was registered only for mail collaborators. While
it might make sense to move the user results to the UserPlugin instead
that change would be more complex and riskier, so for now the MailPlugin
is now registered for both user and mail collaborators and the results
are limited only to the registered type.

As the plugins are registered only with their class and then resolved
when needed using dependency injection it is not possible (as far as I
know) to provide an explicit parameter in the constructor to
differentiate whether the MailPlugin should return user or mail
collaborators. To overcome this two subclasses are introduced,
MailByMailPlugin and UserByMailPlugin, which just hardcode in their
constructor the collaborator type that their parent MailPlugin must use,
and those subclasses are the ones registered instead of the MailPlugin
(which still contains all the logic).

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2025-11-11 01:20:17 +01:00
Joas Schilling
34f1ae62a1
fix(jobs): Limit command jobs to known cases
Signed-off-by: Joas Schilling <coding@schilljs.com>
2025-11-04 11:10:40 +01:00
Benjamin Gaussorgues
83dd9d313a
feat(snowflakeids): add File Sequence Generator
Signed-off-by: Benjamin Gaussorgues <benjamin.gaussorgues@nextcloud.com>
2025-11-03 11:45:13 +01:00
Marcel Klehr
1c33239e06 fix: autoloaderchecker
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2025-10-30 10:29:17 +01:00
Marcel Klehr
d04d575ed3
Merge branch 'master' into feat/taskprocessing/user-facing-error-message
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2025-10-30 10:13:39 +01:00
Carl Schwan
336cc3fa35 feat(Db): Use SnowflakeId for previews
Allow to get an id for the storing the preview on disk before inserting
the preview on the DB.

Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-10-28 17:50:03 +01:00
Benjamin Gaussorgues
c9b055a0d0 feat(database): introduce Snowflake IDs generator
Signed-off-by: Benjamin Gaussorgues <benjamin.gaussorgues@nextcloud.com>
2025-10-28 17:50:03 +01:00
Maxence Lange
edfc339bf5 fix(lexicon): switch bool value to non-lazy
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
2025-10-21 09:27:40 -01:00
Marcel Klehr
044e92bf4e feat(TaskProcessing): Introduce ITriggerableProvider
Signed-off-by: Marcel Klehr <mklehr@gmx.net>

# Conflicts:
#	lib/private/TaskProcessing/Db/TaskMapper.php
2025-10-20 15:59:25 +02:00
Marcel Klehr
86316f7c45 fix(TaskProcessing): Update autoloaders
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2025-10-14 16:58:38 +02:00
Marcel Klehr
ea8ab8e192
Merge pull request #55646 from nextcloud/feat/taskprocessing/is-internal
enh(TaskProcessing): Introduce internal task types
2025-10-14 08:25:00 +02:00
Marcel Klehr
13eb2d1cbd feat(TaskProcessing): Introduce internal task types
which are not shown in the assistant UI

Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2025-10-13 11:07:40 +02:00
Carl Schwan
cb82a9ef04 refactor(preview): Cleanup a bit the public interface
* Remove old IProvider interface, it's been deprecated since 17.0.0 (8
  years)
* Add type hinting to the IPreview interface and mark it as consumeable
  only
* Remove unused arguments from GeneratorHelper

Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-10-09 17:41:13 +02:00
Côme Chilliet
48c2dd6279
Merge pull request #55517 from nextcloud/carl/cron-service
Some checks are pending
CodeQL Advanced / Analyze (actions) (push) Waiting to run
CodeQL Advanced / Analyze (javascript-typescript) (push) Waiting to run
Integration sqlite / changes (push) Waiting to run
Integration sqlite / integration-sqlite (master, 8.4, main, --tags ~@large files_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, 8.4, main, capabilities_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, 8.4, main, collaboration_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, 8.4, main, comments_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, 8.4, main, dav_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, 8.4, main, features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, 8.4, main, federation_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, 8.4, main, file_conversions) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, 8.4, main, filesdrop_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, 8.4, main, ldap_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, 8.4, main, openldap_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, 8.4, main, openldap_numerical_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, 8.4, main, remoteapi_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, 8.4, main, routing_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, 8.4, main, setup_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, 8.4, main, sharees_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, 8.4, main, sharing_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, 8.4, main, theming_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, 8.4, main, videoverification_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite-summary (push) Blocked by required conditions
Psalm static code analysis / static-code-analysis (push) Waiting to run
Psalm static code analysis / static-code-analysis-security (push) Waiting to run
Psalm static code analysis / static-code-analysis-ocp (push) Waiting to run
Psalm static code analysis / static-code-analysis-ncu (push) Waiting to run
refactor: Move cron setup to a service
2025-10-09 09:52:34 +02:00
Benjamin Gaussorgues
3aa0c23e40
Merge pull request #54543 from nextcloud/preview-db-rework 2025-10-08 16:39:23 +02:00
Carl Schwan
9d7fbb1b86 refactor: Move cron setup to a service
This will allow in the future the following things:

- Create unit tests for it
- Make cron.php a occ command
- Make webcron a proper controller

Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-10-06 15:28:43 +02:00
Carl Schwan
324b54b863 refactor(preview): Cleanup the implementation of the new preview backend
Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-10-06 13:37:15 +02:00
Carl Schwan
b0357663b9 perf(preview): Optimize migration and simplify DB layout
* Simplify migration by not moving the actual files and just updating
  the DB
* Don't store the storageid in the preview table as it is not needed
* Start adding tests

Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-10-06 13:37:15 +02:00
Carl Schwan
13c35c0f17 perf(preview): Migrate previews to the new optimized table
Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-10-06 13:37:15 +02:00
Carl Schwan
18fbacdd8d perf(preview): Split preview data to new table
The new oc_previews table is optimized for storing previews and should
decrease significantly the space taken by previews in the filecache
table.

This attend to reuse the IObjectStore abstraction over S3/Swift/Azure
but currently only support one single bucket configuration.

Signed-off-by: Carl Schwan <carl.schwan@nextclound.com>
2025-10-06 13:37:15 +02:00
Carl Schwan
aa1f5312a5 refactor: Remove legacy search provider
Last usage was in the comment app

Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-10-01 13:36:25 +02:00
Côme Chilliet
eb54143c2d
fix: Delete legacy OC_Response
Moved the last used method in base.php where it’s called. Ideally we
 would remove it but it’s not clear whether that would be possible any
 time soon or even at all.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-09-29 09:35:32 +02:00
Carl Schwan
4ae4b0a0e7 refactor: Remove old TemplateManager
Not used anymore

Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-09-28 12:48:41 +02:00
Akhil
fe30ca872b feat(config): Add UserConfigChangedEvent whenever user config is updated
Signed-off-by: Akhil <akhil@e.email>
2025-09-26 14:29:58 +05:30
provokateurin
b1a398afb0
chore: Remove unused \OC\Cache\CappedMemoryCache
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-09-16 10:08:19 +02:00
Marcel Klehr
7bd0b5704d
Merge pull request #54810 from nextcloud/feat/typed-tag-events
feat(SystemTag): Add typed events for tag mapper events
2025-09-04 11:19:28 +02:00
Maxence Lange
c86f2e948a feat(migration-attributes): add DataCleansing
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
2025-09-03 13:32:40 -01:00
Marcel Klehr
2bb2fa50ee feat(SystemTag): Add typed events for tag mapper events
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2025-09-03 09:36:50 +02:00
Carl Schwan
6ee28229d5
Merge pull request #54775 from nextcloud/carl/delete-lostpassword-token
fix(lostpassord): Delete lost password token on password change
2025-09-01 12:05:24 +02:00
Carl Schwan
1d3c3cfb80 fix(lostpassword): Delete lost password token on password change
Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-09-01 11:36:15 +02:00
Richard Steinmetz
16ad73cd15
feat(ocp): create contacts from string
Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
2025-08-29 15:04:57 +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
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
SebastianKrupinski
46e624a089 feat: Calendar Import
Signed-off-by: SebastianKrupinski <krupinskis05@gmail.com>
2025-08-27 08:30:33 -04: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
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
Kate
4edfef4dd5
Merge pull request #53895 from nextcloud/fix/cleanup-updater-class 2025-08-19 17:40:15 +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
Côme Chilliet
7978b6153d
chore: Update autoloader
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-08-18 17:09:40 +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
c40350d2e4
feat(core): provide capabilities of the current user
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-08-18 12:35:31 +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
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
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
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
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