Commit graph

388 commits

Author SHA1 Message Date
Louis
5e4abd734d
Merge pull request #59984 from nextcloud/jtr/docs-lock-ILockManager-API
docs(lock): clarify ILockManager API documentation
2026-06-11 10:26:49 +02:00
Cristian Scheid
3592f83218
Merge pull request #60844 from nextcloud/fix/noid/files-join-ext-cache-select-fields
feat(file-search): add property to SearchQuery and check select fields to decide wheter to join extended cache
2026-06-10 16:26:55 +02:00
Côme Chilliet
1ab09ec753
chore: Apply new coding standard to all files
The diff can be checked using: git diff --ignore-all-space --ignore-blank-lines
To see only the changes not related to blank lines.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2026-06-01 13:46:39 +02:00
Cristian Scheid
476a6f0774 feat(file-search): add property to SearchQuery and check select fields to decide wheter to join extended cache
Signed-off-by: Cristian Scheid <cristianscheid@gmail.com>
2026-05-29 15:37:03 -03:00
provokateurin
b1724dbad0
chore(Cache): Remove deprecated insert and update events
Signed-off-by: provokateurin <kate@provokateurin.de>
2026-05-28 14:02:08 +02:00
Joas Schilling
c1ab99e9fc
Merge pull request #59940 from nextcloud/bug/noid/fix-since-checker
Fix since checker
2026-05-07 11:25:42 +02:00
Josh
82bb73b507
docs(lock): clarify LockContext API documentation
Signed-off-by: Josh <josh.t.richards@gmail.com>
2026-05-03 12:00:53 +02:00
Ferdinand Thiessen
3a9733a878
chore(ocp): adjust code to match function signature
json_encode should throw if `string` return is expected

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-04-28 21:29:28 +02:00
Ferdinand Thiessen
81752fc9ed
chore(ocp): add Override attribute to all OCP classes
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-04-28 21:29:27 +02:00
Josh
cb39b95b82
docs(lock): clarify lazy-loading behavior of isLockProviderAvailable
Signed-off-by: Josh <josh.t.richards@gmail.com>
2026-04-28 13:03:33 -04:00
Josh
131e28f8df
docs(lock): clarify ILockManager API documentation
Signed-off-by: Josh <josh.t.richards@gmail.com>
2026-04-28 12:52:27 -04:00
Daniel Kesselberg
25ca85e329
docs(ocp): Add since tag
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2026-04-28 11:17:27 +02:00
Joas Schilling
aa904b255f
Merge pull request #59378 from nextcloud/carl/non-internal-api
chore: Replace MoveableMount usage with IMovableMount
2026-04-27 12:37:56 +02:00
Robin Appelman
41e6124dcc
perf: only load a single mount at a time when checking for share conflicts
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-04-24 18:17:43 +02:00
Robin Appelman
aedc57afe7
fix: add optional user param to IUserMountCache::removeMount
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-04-24 18:17:41 +02:00
Robin Appelman
68448a4a42
feat: export getData for public FileInfo interface
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-04-24 14:39:51 +02:00
Robin Appelman
4e6975cc11
feat: add event for user home mount having being setup
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-04-24 14:39:48 +02:00
Carl Schwan
fbf84e6473
chore: Replace MoveableMount usage with IMovableMount
The former is private API while the IMovableMount is public.

Signed-off-by: Carl Schwan <carlschwan@kde.org>
2026-04-24 10:14:37 +02:00
Robin Appelman
c08592de28
fix: properly expose rename permissions over dav
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-03-26 18:18:55 +01:00
Cristian Scheid
282e6b707a feat(file-info): encapsulate logic to get last activity in getLastActivity function
Signed-off-by: Cristian Scheid <cristianscheid@gmail.com>
2026-03-24 15:15:34 -03:00
provokateurin
7ceddb3ffb
fix(IStorage): Use correct return type for stat
Signed-off-by: provokateurin <kate@provokateurin.de>
2026-02-17 06:43:16 +01:00
Carl Schwan
edd37d349b
perf(file-cache): Add mimetype filter on getFolderContents
Signed-off-by: Carl Schwan <carlschwan@kde.org>
2026-02-12 00:36:18 +01:00
Carl Schwan
9741f5f17d
perf: Allow filtering the directory content by mimetype
Signed-off-by: Carl Schwan <carlschwan@kde.org>
2026-02-12 00:35:48 +01:00
Ferdinand Thiessen
762ae4520a
fix(InMemoryFile): allow to stream read the contents
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-02-06 17:29:26 +01:00
Carl Schwan
c96ece0bcb
refactor: Add more typing
- repairs job
- database
- redis

And remove Helpertest which was unused outside of some tests.

Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2026-02-06 13:55:39 +01:00
Carl Schwan
3979c493f9
refactor: Apply second batch of comments
Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2026-02-06 13:52:51 +01:00
Andy Scherzinger
08e1d9b83e
Merge pull request #58025 from nextcloud/carl/refactor-share-mountprovider
refactor(mount-provider): Refactor share mount provider
2026-02-05 11:50:40 +01:00
Julius Knorr
b933156a3a
Merge pull request #57914 from nextcloud/feat/extendable-propfind
feat(dav): allow extending propfind properties via event
2026-02-05 10:49:59 +01:00
Carl Schwan
8f81b91733
refactor(mount-provider): Refactor share mount provider
- Add more precise types
- Remove dead code

Signed-off-by: Carl Schwan <carlschwan@kde.org>
2026-02-04 12:46:14 +01:00
Benjamin Frueh
9d4b11587e feat(dav): allow extending propfind properties via event
Signed-off-by: Benjamin Frueh <benjamin.frueh@gmail.com>

Update lib/public/Files/Events/BeforePropfindEvent.php

Co-authored-by: Julius Knorr <jus@bitgrid.net>
Signed-off-by: Benjamin Früh <134610227+benjaminfrueh@users.noreply.github.com>

Update lib/public/Files/Events/BeforePropfindEvent.php

Co-authored-by: Julius Knorr <jus@bitgrid.net>
Signed-off-by: Benjamin Früh <134610227+benjaminfrueh@users.noreply.github.com>

refactor: rename BeforePropfindEvent to BeforeRemotePropfindEvent

Signed-off-by: Benjamin Frueh <benjamin.frueh@gmail.com>

chore: update composer autoloader for new event class

Signed-off-by: Benjamin Frueh <benjamin.frueh@gmail.com>

Update lib/public/Files/Events/BeforeRemotePropfindEvent.php

Co-authored-by: Côme Chilliet <91878298+come-nc@users.noreply.github.com>
Signed-off-by: Benjamin Früh <134610227+benjaminfrueh@users.noreply.github.com>
2026-02-02 11:45:10 +01:00
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
7100c71166
perf(metadata): Add optimized sharding for metadata deletion
Signed-off-by: Carl Schwan <carlschwan@kde.org>
2026-01-28 17:18:33 +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
0fe01de26c
feat(OCP): Expose setup manager to OCP
It's used by a lot of apps so expose just the two methods that are most
of the time used, to prevent the apps to relly on private APIs.

Signed-off-by: Carl Schwan <carlschwan@kde.org>
2026-01-26 17:12:02 +01:00
Côme Chilliet
a467589328
Merge pull request #57573 from nextcloud/fix/fix-beforezipcreatedlistener
fix(files_sharing): Fix BeforeZipCreatedListener path handling
2026-01-20 16:08:05 +01:00
Côme Chilliet
0720e2644f
chore: fix or suppress psalm errors for BeforeZipCreatedEvent
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2026-01-20 14:32:58 +01:00
Côme Chilliet
460d63772b
fix(files_sharing): Switch back event path to be relative to user folder
This is clearly the original intent, the parameter name in ViewOnly is
 $userFolder, and the similar event for single file download uses
 paths relative to user folder as well.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2026-01-19 11:22:17 +01:00
Robin Appelman
83ac1c6030 fix: clearify meaning of getMountsForPath arguments
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-01-15 11:31:54 +01:00
Andy Scherzinger
abe5499e14
Merge pull request #57498 from nextcloud/carl/rename-imountproviderargs
refactor(files): Rename IMountProviderArgs
2026-01-14 17:50:43 +01:00
Carl Schwan
7b05c8f797
refactor(files): Rename IMountProviderArgs
It's not an interface so the I-prefix is inadequate.

Signed-off-by: Carl Schwan <carlschwan@kde.org>
2026-01-12 17:33:52 +01:00
Robin Appelman
e3551e576c
feat: add api for authoritative mount providers to update the user mounts
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-01-09 17:53:48 +01:00
Robin Appelman
198d500ac6
feat: add interface to mark mount providers as authoritative
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-01-09 17:53:42 +01:00
Robin Appelman
5c625b7a07 feat: add an option to filter what paths get checked for updates
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-12-31 12:23:04 +01:00
Salvatore Martire
6e9ba894a2 fix: add $forChildren parameter to IPartialMountProvider
Signed-off-by: Salvatore Martire <4652631+salmart-dev@users.noreply.github.com>
2025-12-29 18:06:12 +01:00
Carl Schwan
6945a030f5
refactor(OC_Helper): remove buildNotExistingFileNameForView
Move the functionality in the last place it is used OC\Files\Node\Folder

Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-12-16 10:38:29 +01:00
Salvatore Martire
fcdb28e4a3 feat: add IPartialMountProvider to support authoritative mounts
IMountProviders implementing this interface will be able to take
advantage of authoritative mounts.

The function `getMountsFromMountPoints` will receive the path that
the provider is asked to set-up and an array of IMountProviderArgs
providing information regarding the stored mount points and the
file cache data for the related root. The mount provider should verify
the validity of the mounts and return IMountPoints related to them.

Signed-off-by: Salvatore Martire <4652631+salmart-dev@users.noreply.github.com>
2025-12-10 16:05:27 +01:00
Carl Schwan
b6313f68d3
perf(s3): Expose pre-signed urls for S3
This is faster than going back to nextcloud to download the files.

This is an opt-in setting that can be enabled by setting
use_presigned_url in the object store config.

Additionally add support for the proxy config which is needed in a
docker setup. See https://github.com/juliusknorr/nextcloud-docker-dev/pull/431

Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-12-09 11:21:35 +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
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