Commit graph

805 commits

Author SHA1 Message Date
Carl Schwan
ef226e9ec6
Merge pull request #57826 from nextcloud/carl/setupmanager
feat(OCP): Expose setup manager to OCP
2026-01-28 21:39:15 +01:00
Carl Schwan
fd3878448b
feat(filecache): Scale DB query created when deleting file from filecache
Instead of creating a CacheEntryRemovedEvent for each deleted files,
create a single CacheEntriesRemovedEvent which wrap multiple
CacheEntryRemovedEvent.

This allow listener to optimize the query they do when multiple files
are deleted at the same time (e.g. when deleting a folder).

Signed-off-by: Carl Schwan <carl.schwan@nextclound.com>
2026-01-28 16:07:57 +01:00
Carl Schwan
ae73f7aaf5
refactor(setup-manager): Use ISetupManager instead of SetupManager
Keep using the OC API in the mount manager and OC_Utils, but the rest is
now using the public API.

Signed-off-by: Carl Schwan <carlschwan@kde.org>
2026-01-27 15:19:19 +01:00
Carl Schwan
9a8d45d81f
refactor(QueryException): Remove most usage of QueryException
This is preparation to move QueryException from OCP to OC as part of
Nextcloud 34.

Signed-off-by: Carl Schwan <carlschwan@kde.org>
2026-01-16 11:55:06 +01:00
Maxence Lange
eb0369705a
Merge pull request #56240 from nextcloud/fix/noid/set-adr-book-local-but-not-system
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, files_reminders) (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
fix(contacts): allow address book to be local but not system
2026-01-05 09:55:42 -01:00
Andy Scherzinger
32327c6285
Merge pull request #56773 from nextcloud/carl/remove-sciencemesh
refactor(share): Remove code related to science mesh integration
2025-12-30 14:18:53 +01:00
Maxence Lange
b28176458d fix(contacts): not contact, not local
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
2025-12-22 12:36:33 -01:00
Louis
189e1fcf22
Merge pull request #56834 from nextcloud/artonge/feat/repair_tree_path_and_storage
feat(files): Add support for `storage-id` and `path` in RepairTree command
2025-12-04 18:06:07 +01:00
Andy Scherzinger
1ef465f804
Merge pull request #56251 from nextcloud/carl/template-manager-cleanup
refactor(template-manager): Modernize template manager API
2025-12-04 17:26:53 +01:00
Louis Chmn
55756e626f feat(files): Add support for storage-id and path in RepairTree command
This allows to run the command on specific part of the filecache. When the filecache is big, it prevents overloading the DB.

Signed-off-by: Louis Chmn <louis@chmn.me>
2025-12-04 11:43:12 +01:00
Carl Schwan
cc7655136c
refactor(share): Remove code related to science mesh integration
The app was not updated for the past 2 years.

Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-12-03 14:11:58 +01:00
Cristian Scheid
9272a13e9d
refactor(files): use strict string comparison instead of empty()
Co-authored-by: Kate <26026535+provokateurin@users.noreply.github.com>
Signed-off-by: Cristian Scheid <74515775+cristianscheid@users.noreply.github.com>
2025-12-01 09:52:59 -03:00
Cristian Scheid
fa2a7b9b2d refactor(files): use explicit empty check instead of elvis operator
Signed-off-by: Cristian Scheid <cristianscheid@gmail.com>
2025-12-01 07:36:18 -03:00
Cristian Scheid
40d3118751 feat(files): add --use-user-id option to transfer-ownership command
Signed-off-by: Cristian Scheid <cristianscheid@gmail.com>
2025-11-25 11:45:40 -03:00
Carl Schwan
38fd84aa6a
refactor(template-manager): Modernize template manager API
And correct openapi types for the size.

Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-11-24 10:00:47 +01:00
Tobias Kaminsky
6f0537b4e9
Merge pull request #56494 from nextcloud/carl/result-improv
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, files_reminders) (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
Improve IResult
2025-11-20 15:38:17 +01:00
Carl Schwan
4d47fdaa85 chore: Run rector with new rules for fetch
Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-11-18 17:45:57 +01:00
Robin Appelman
ef5e014d3a feat: add command to list mounts for user
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-11-17 19:18:27 +01:00
Robin Appelman
cfb7f8c069 feat: add command to refresh registered mounts for a user
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-11-17 19:18:27 +01:00
Benjamin Gaussorgues
3aa0c23e40
Merge pull request #54543 from nextcloud/preview-db-rework 2025-10-08 16:39:23 +02:00
Marcel Klehr
e237ac54cc fix(RepairTree): Update files:repair-tree description
to note that running the command multiple times may be necessary

Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2025-10-06 16:25:45 +02:00
Carl Schwan
bfc7d5dd9f feat(preview): Implement scanning for previews
This work similarly to the move preview job to migrate the previews to
the new DB table and also reuse some code.

So when we are finding files in appdata/preview, try adding them to the
oc_previews table and delete them from the oc_filecache table.

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
Louis
f8bed8f186
Merge pull request #51145 from nextcloud/home-folder-readonly 2025-10-01 10:09:19 +02:00
Ferdinand Thiessen
660f3f6fd1
refactor: use logical && || instead of weak and or operators
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-09-27 23:02:18 +02:00
Louis Chemineau
bd8a0ec3cf
feat(files): Add appconfig value to disable fixed userfolder permissions optimization
Signed-off-by: Robin Appelman <robin@icewind.nl>
Signed-off-by: Louis Chemineau <louis@chmn.me>
2025-09-26 17:43:22 +02:00
Andy Scherzinger
80b602896c
Merge pull request #55128 from nextcloud/rakekniven-patch-1
chore(i18n): Fixed grammar
2025-09-23 14:34:52 +02:00
Carl Schwan
7e1c49ad9d refactor: Port away from IQueryBuilder::execute in apps/
Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-09-16 11:35:01 +02:00
rakekniven
da98ae878e
chore(i18n): Fixed grammar
Reported at Transifex

Signed-off-by: rakekniven <2069590+rakekniven@users.noreply.github.com>
2025-09-15 16:57:56 +02:00
Louis Chemineau
634e8d2587
fix: Dispatch favorite event with an actual path
The `$path` argument was added in https://github.com/nextcloud/server/pull/48612, but was never actually used by the callers. The path was therefore missing in the favorite/unfavorite events, which lead to a broken activity information.

I also added a fallback to handle `addToFavorites` and `removeFromFavorites`, which are part of a public API, and are calling `tagAs` and `untag` without `$path`.

Fix https://github.com/nextcloud/activity/issues/2134

Signed-off-by: Louis Chemineau <louis@chmn.me>
2025-09-15 15:04:00 +02:00
Joas Schilling
3638633a0b
fix(dashboard): Fix favorite dashboard icon
Signed-off-by: Joas Schilling <coding@schilljs.com>
2025-09-03 15:28:10 +02:00
Ferdinand Thiessen
805fe3e15b
feat(files): provide UI to sanitize filenames after enabling WCF
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-09-02 10:53:01 +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
Robin Appelman
4990d75007 feat: multi object store rename command
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
06154dd116 fix: don't use view->getPath in ownership transfer
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-08-13 19:42:42 +02:00
Carl Schwan
9fef97c9ec fix(trash): Fix order of metadata deletion
First query metadata for live photo and then delete the metadata, by
making the SyncLivePhotosListener priority higher than the default.

Partially fix #54274

Signed-off-by: Carl Schwan <carl.schwan@nextclound.com>
2025-08-07 11:19:30 +02:00
skjnldsv
c7dd6dd645 feat(files): allow hidding files extensions
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2025-07-28 18:05:15 +02:00
JEEEEEEEEEEEEEEEEEEEEEED
cb29b306ee
feat(files): hide note about app passwords when 2FA not enabled
Signed-off-by: JEEEEEEEEEEEEEEEEEEEEEED <118366366+jadjoud@users.noreply.github.com>
Co-authored-by: Daniel Kesselberg <mail@danielkesselberg.de>
2025-07-24 22:20:16 +02:00
skjnldsv
f89660e709 feat(files): add delete confirmation option
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2025-07-14 10:20:44 +02:00
Ferdinand Thiessen
275c4404d4
feat(files): allow to configure default view
This allows to configure which view should be the default ("start view")
in the files app, currently either "all files" or "personal files".
But it might be extended to the new home view in the future.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-07-04 18:03:10 +02:00
Ferdinand Thiessen
5981b7eb51
chore: apply new CSFixer rules
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>

# Conflicts:
#	apps/settings/lib/SetupChecks/PhpOpcacheSetup.php
2025-07-01 16:26:50 +02:00
John Molakvoæ
bd00b75b29
Merge pull request #53671 from nextcloud/fix/read-only-share-download 2025-07-01 15:11:06 +02:00
provokateurin
2e5ccc7123
fix(files): Always transfer incoming shares when doing ownership transfer to prevent broken reshares
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-07-01 08:23:53 +02:00
provokateurin
edf5493ae8
fix(files): Limit transferring incoming shares to the selected path
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-07-01 08:23:52 +02:00
skjnldsv
9806a9830c feat(files_sharing): allow viewing files with download disabled
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2025-06-26 11:47:53 +02:00
Ferdinand Thiessen
bed94cc31e
Merge pull request #53657 from nextcloud/chore/debug-output
fix(files): add more debug output to the filename sanitizing command
2025-06-25 15:30:52 +02:00
Robin Appelman
a338f56fd5 fix: don't scan the same storage multiple times
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-06-24 16:27:03 +02:00
Ferdinand Thiessen
dffc741201
fix(files): add more debug output to the filename sanitizing command
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-06-24 11:07:45 +02:00
Jonas
e5b4ae4ebe
fix(SyncLivePhotosListener): Don't handle copy event emitted from us
Running $peerFile->copy() causes a second BeforeNodeCopiedEvent now,
which we don't want to handle.

Signed-off-by: Jonas <jonas@freesources.org>
2025-05-27 12:14:14 +02:00