Ferdinand Thiessen
9c3321c524
Merge pull request #41565 from nextcloud/fix/object-storage-inconsitent-behavior
...
fix(ObjectStore): Make copying behavior consistent with local storage
2023-11-22 13:54:01 +01:00
Christoph Wurst
ea8f9a7e84
refactor: Repalce array_search with in_array in lib/
...
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2023-11-22 11:42:53 +01:00
Maxence Lange
ff823cf926
accept boolean value
...
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
2023-11-22 01:20:42 -01:00
Ferdinand Thiessen
5172baaf8b
fix(ObjectStore): Make copying behavior consistent with local storage
...
Drop file permissions on copy like we do on local storage.
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2023-11-17 12:54:37 +01:00
Robin Appelman
b942850af9
optimize UserMountCache::registerStorage
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
Signed-off-by: Benjamin Gaussorgues <benjamin.gaussorgues@nextcloud.com>
2023-11-16 16:21:59 +01:00
Benjamin Gaussorgues
cb4e367a22
Merge pull request #40935 from nextcloud/local-case-insensitive
...
add some support for rename on case insensitive local filesystems
2023-11-15 13:58:44 +01:00
Julius Härtl
830d85bcf1
Merge pull request #41366 from ir0nhide/fix/multipart-copy-ssec
2023-11-15 08:24:06 +01:00
Git'Fellow
e0cafc8fe8
Merge pull request #38622 from nextcloud/ifElseReturnMatch
...
Replace if/else with return match
2023-11-15 00:05:52 +01:00
Tobias Zimmerer
cdf96fab92
fix(s3): support SSE-C headers for the MultipartCopy call
...
Signed-off-by: Tobias Zimmerer <3228193+ir0nhide@users.noreply.github.com>
2023-11-14 21:19:59 +01:00
Maxence Lange
761a688ec9
fix psalm
...
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
2023-11-14 10:11:24 -01:00
Maxence Lange
3af12b2a50
ignore metadata if table is empty
...
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
2023-11-14 09:28:58 -01:00
Maxence Lange
380b81315a
moving metadataquery
...
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
2023-11-13 22:25:37 -01:00
Benjamin Gaussorgues
a75a93af8e
feat(files): Allow advanced search for files
...
Signed-off-by: Benjamin Gaussorgues <benjamin.gaussorgues@nextcloud.com>
2023-11-10 09:21:16 +01:00
Joas Schilling
67958915da
fix(events): Make sure all \OCP\Files::… events are emitted with the same data
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2023-11-09 15:57:22 +01:00
Robin Appelman
b29bc59e8b
Merge pull request #41119 from nextcloud/optmize-storage-wrappers
...
optimize builtin storage wrappers
2023-11-08 22:14:19 +01:00
Louis
77c9550353
Merge pull request #40964 from nextcloud/artonge/feat/metadata/port_providers
...
Support dynamic metadata request on PROPFIND requests
2023-11-08 17:58:20 +01:00
Robin Appelman
f4fa2fb93c
optimize isShared and isMounted
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2023-11-08 17:34:58 +01:00
Louis Chemineau
d3a313f192
Support getting and setting metadata in DAV requests
...
Signed-off-by: Louis Chemineau <louis@chmn.me>
2023-11-08 16:23:53 +01:00
Robin Appelman
79088ea15f
Merge pull request #40996 from nextcloud/view-share-disable-reuse
...
reuse sharing disabled state when listing folder content
2023-11-08 15:52:35 +01:00
Robin Appelman
dec880b285
optimize builtin storage wrappers
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2023-11-08 15:26:10 +01:00
Maxence Lange
f497d8b6e5
IFilesMetadata
...
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
2023-11-07 12:43:08 -01:00
Maxence Lange
e62e9e3dbf
IFilesMetadata
...
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
2023-11-07 00:21:38 -01:00
Git'Fellow
b4a3773115
fix: reduce memory consumption of scans
...
Signed-off-by: Git'Fellow <12234510+solracsf@users.noreply.github.com>
Fix lint
Signed-off-by: Git'Fellow <12234510+solracsf@users.noreply.github.com>
2023-11-03 18:07:42 +01:00
Arthur Schiwon
333ab4de68
Merge pull request #40995 from nextcloud/cache-jail-optimizations
...
optimize cache jail creation
2023-11-03 17:03:09 +01:00
Git'Fellow
3bedfdf6ff
Replace if/else with return match
...
Signed-off-by: Git'Fellow <12234510+solracsf@users.noreply.github.com>
2023-11-01 10:33:42 +01:00
Joas Schilling
2b7f78fc2e
Merge pull request #40326 from nextcloud/enh/text-to-image-api
...
Implement TextToImage OCP API
2023-10-26 15:53:30 +02:00
Robin Appelman
efe68d012c
Merge pull request #39044 from nextcloud/more-empty-mount-checking
...
Fix root mounts not being setup in some cases
2023-10-24 16:54:05 +02:00
Jonas
7441ce2b11
enh(IMountManager): Add method to get MountPoint from CachedMountInfo
...
Signed-off-by: Jonas <jonas@freesources.org>
2023-10-23 20:50:24 +02:00
Marcel Klehr
71a06b6bf8
fix(Folder): Allow filename to be '0'
...
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2023-10-22 12:22:30 +02:00
Robin Appelman
a8e6d89d3b
continue background scanning different storages if one fails
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2023-10-20 16:31:48 +02:00
Robin Appelman
8418fcfedf
add some support for rename on case insensitive local filesystems
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2023-10-20 15:03:11 +02:00
Robin Appelman
9bc44de95d
reuse sharing disabled state when listing folder content
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2023-10-19 19:40:52 +02:00
Robin Appelman
460344336e
optimize cache jail creation
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2023-10-19 19:27:00 +02:00
John Molakvoæ
80893480c1
Merge pull request #40478 from nextcloud/node-from-entry
2023-10-18 10:44:21 +02:00
John Molakvoæ
4b55594f55
feat(files): migrate template picker
...
Signed-off-by: John Molakvoæ <skjnldsv@protonmail.com>
2023-10-17 11:17:35 +02:00
Hamid Dehnavi
ea06cf2f39
Convert isset ternary to null coalescing operator
...
Signed-off-by: Hamid Dehnavi <hamid.dev.pro@gmail.com>
2023-09-28 17:44:19 +03:30
Côme Chilliet
dc347b39c1
Merge pull request #40501 from nextcloud/fix/fix-int-size-in-files-scanner
...
Store size in int|float for 32bit support
2023-09-25 16:32:32 +02:00
Robin Appelman
b11ca34bbd
Merge pull request #40499 from nextcloud/known-mtime-wrapper
...
add wrapper for external storage to ensure we don't get an mtime that is lower than we know it is
2023-09-21 18:33:15 +02:00
Robin Appelman
ef87ff1848
Merge pull request #39216 from shdehnavi/replace_substr_calls_in_lib_private
...
Refactor "substr" calls in lib/private to improve code readability
2023-09-21 16:34:27 +02:00
Robin Appelman
eab8dd3ca0
use multipart copy for s3
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2023-09-20 17:28:48 +02:00
Robin Appelman
5bf34979fe
add wrapper to ensure we don't get an mtime that is lower than we know it is
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2023-09-19 13:58:15 +02:00
Côme Chilliet
5090848b25
Store size in int|float for 32bit support
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-09-19 13:43:01 +02:00
Robin Appelman
5e347553bc
add method to create a node from cache entry + mountpoint
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2023-09-19 11:43:29 +02:00
Simon L
7bba5ec71e
Merge pull request #40203 from lhsazevedo/fix/mimetype-40064
2023-09-16 21:17:24 +02:00
Julius Härtl
7f958e81d3
fix: Pass parent to NonExistingFile instances
...
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2023-09-13 10:28:28 +02:00
Robin Appelman
1eb3293e53
setup filesystem wrappers before we mark the root as setup
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2023-09-12 16:50:29 +02:00
Robin Appelman
5685d68bd3
add more checks to ensure mounts aren't empty
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2023-09-12 16:50:24 +02:00
Benjamin Gaussorgues
003d0dec93
Detect aborted connection in OC\Files\View and stop writing data to the output buffer
...
Signed-off-by: Benjamin Gaussorgues <benjamin.gaussorgues@nextcloud.com>
2023-09-07 09:32:32 +02:00
Julius Härtl
13b9dd2267
fix: Only read unencrypted_size when file is actually encrypted
...
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2023-09-06 07:25:28 +02:00
Julius Härtl
88a96e4db7
fix: Only store unencrypted_size if path should be encrypted
...
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2023-09-06 07:25:28 +02:00
Robin Appelman
5ac0e9b63b
reuse isValidPath from Filesystem
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2023-09-04 18:42:50 +02:00
Robin Appelman
baf8d2e1d0
make LazyFolder::get not load the real folder if we know the path
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2023-09-04 18:42:49 +02:00
Robin Appelman
9055fef5ef
add IFileInfo::getParentId
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2023-09-04 18:42:49 +02:00
Robin Appelman
e718cbc661
make Node::getParent lazy
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2023-09-04 18:42:48 +02:00
Robin Appelman
0232eec2cf
allow passing more info to lazy folder
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2023-09-04 18:42:47 +02:00
Robin Appelman
64f62f7cfd
Merge pull request #39863 from nextcloud/sharing-mask-wrapper
...
move share permission logic to storage wrapper
2023-09-04 14:05:14 +02:00
Lucas Azevedo
c587f684bd
Wrap mimetype insert and getLastInsertId in a transaction
...
Signed-off-by: Lucas Azevedo <lhs_azevedo@hotmail.com>
2023-09-04 08:02:35 -03:00
Simon L
489a57e9a3
Merge pull request #39707 from nextcloud/bugfix/39706/local-ext-storage-unavailable-mode
2023-09-04 12:05:36 +02:00
Lucas Azevedo
5de021cb9a
fix(mimetype): Remove unnecessary transaction when storing a mime type
...
Fixes #40064 .
This could be fixed by adding a rollback and starting a new transaction
before the SELECT query, but in this case that would have the same
effect as not using one.
See https://dev.mysql.com/doc/refman/8.0/en/innodb-autocommit-commit-rollback.html
and https://www.postgresql.org/docs/7.1/sql-begin.html#R1-SQL-BEGIN-1
Signed-off-by: Lucas Azevedo <lhs_azevedo@hotmail.com>
2023-09-01 14:20:21 -03:00
John Molakvoæ
750a9f2c4a
fix: prevent sharing permissions on user root folder
...
Signed-off-by: John Molakvoæ <skjnldsv@protonmail.com>
2023-09-01 13:53:41 +02:00
Robin Appelman
4711c775b8
Merge pull request #36068 from nextcloud/gf-encryption-fix
...
extend fix-key-location to handle cases from broken cross-storage moves
2023-09-01 13:01:04 +02:00
Thomas Citharel
3f28fc58aa
fix(s3): fix handling verify_bucket_exists parameter
...
If 'verify_bucket_exists' is set to false in the config.php s3 configuration, it's supposed to avoid
verifying that the bucket exists. However empty(falsy) will always return true, so this condition
would not work.
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2023-08-31 21:36:03 +02:00
Robin Appelman
e4f85226c5
extend fix-key-location to handle cases from broken cross-storage moves
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2023-08-31 19:46:47 +02:00
Vincent Petry
8d1a3daa3f
Allow ext storage Local to go unavailable
...
Whenever an external storage of type Local points at a non-existing
directory, process this as a StorageNotAvailable instead of returning
404.
This makes desktop clients ignore the folder instead of deleting it when
it becomes unavailable.
The code change was limited to external storages to avoid issues during
setup and with the default home storage.
Signed-off-by: Vincent Petry <pvince81@yahoo.fr>
2023-08-29 11:04:31 +02:00
John Molakvoæ
b11532ce56
Merge pull request #39958 from nextcloud/dav-permissions-perf
2023-08-22 19:14:53 +02:00
Robin Appelman
b6c3507aa0
only determine quota_include_external_storage once for quota wrapper
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2023-08-18 14:25:28 +02:00
Robin Appelman
e98e8f10c9
improve performance of calculating dav permissions
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2023-08-18 14:09:03 +02:00
Robin Appelman
9ea03a9534
reuse dependencies from wrapped cache
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2023-08-18 11:14:52 +02:00
Julius Härtl
45595a8417
Merge pull request #39481 from nextcloud/fix/transfer-ownersip
2023-08-17 13:23:04 +02:00
Anna Larch
556f29bef5
fix: don't emit Hooks when hookpaths are empty
...
Signed-off-by: Anna Larch <anna@nextcloud.com>
2023-08-17 09:32:14 +02:00
Robin Appelman
e73889a240
cleanup di for share permissions wrapper
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2023-08-16 15:25:05 +02:00
Ferdinand Thiessen
9c04c07622
fix: Prevent PHP warnings when optional CacheEntry attributes are unset
...
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2023-08-16 14:12:51 +02:00
Robin Appelman
a031bc4788
more share permission logic to storage wrapper
...
this way we only have to determine the share permissions once
Signed-off-by: Robin Appelman <robin@icewind.nl>
2023-08-14 18:17:27 +02:00
Robin Appelman
658aed27ea
select the fileid first when looking for incomplete files
...
this seems to improve mariadbs index selection
Signed-off-by: Robin Appelman <robin@icewind.nl>
2023-08-14 18:08:01 +02:00
Daniel
2ea6c5364d
Merge pull request #39644 from nextcloud/fix/noid/copy-delete-fallback-for-files
...
fix: copy-and-delete fallback should use unlink
2023-08-14 12:29:40 +02:00
John Molakvoæ
b27a2e9ec5
Merge pull request #39698 from joshtrichards/invalid-source-storage-path-catch
2023-08-05 12:17:33 +02:00
John Molakvoæ
7b7d1e3c09
fix: simplify sourceData check
...
Co-authored-by: Git'Fellow <12234510+solracsf@users.noreply.github.com>
Signed-off-by: John Molakvoæ <skjnldsv@users.noreply.github.com>
2023-08-05 12:05:36 +02:00
Joas Schilling
44b4c16a09
Merge pull request #39605 from nextcloud/bugfix/noid/final-events-cleanup
...
fix!: Final round of moving to IEventDispatcher
2023-08-04 10:39:57 +02:00
Josh Richards
deecb48e54
Catch more invalid cache source storage paths
...
OC\Files\Cache\Cache::get can return string|false|null, not just string|false.
- nextcloud/server#26270 added handling of false, but null is needed too.
- Well, or we change the default $resullt to false, but I'm not sure if that has other ramifications and the real need here is to simply catch situations where the cache source storage path is not valid for whatever reason
Related: nextcloud/server#19009
Signed-off-by: Josh Richards <josh.t.richards@gmail.com>
2023-08-03 09:53:46 -04:00
Daniel Kesselberg
f1d4f7c7e4
fix: copy-and-delete fallback should use unlink
...
because rmdir does not work for files.
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2023-07-31 21:41:25 +02:00
Daniel Kesselberg
b4ff557b8c
fix(storage): fallback to copy and unlink when rename fails
...
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2023-07-31 18:54:21 +02:00
Tobias Zimmerer
23f85b5ac2
fix(s3): add SSE-C parameters to headObject call
...
Signed-off-by: Tobias Zimmerer <3228193+ir0nhide@users.noreply.github.com>
2023-07-30 22:54:58 +02:00
Robin Appelman
fda820a64d
expose MovableMount in public interface
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2023-07-28 14:42:09 +02:00
Joas Schilling
3962cd0aa8
fix!: Move getEventDispatcher usage to IEventDispatcher
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2023-07-28 14:11:22 +02:00
Joas Schilling
44a0a62107
fix: Move Node HookConnecter events to IEventDispatcher
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2023-07-27 09:57:53 +02:00
Robin Appelman
31f1ff87d0
Merge pull request #39367 from nextcloud/s3-fopen-exception
...
handle more exceptions in AmazonS3::fopen
2023-07-20 19:32:03 +02:00
Robin Appelman
c912a3f0f6
Merge pull request #38860 from nextcloud/scanner-change-summary
...
add summary of detected changes to files:scan output
2023-07-20 18:37:07 +02:00
Julius Härtl
77f249726d
Merge pull request #38934 from nextcloud/bugfix/noid/ssec-multipart
2023-07-20 11:00:08 +02:00
Robin Appelman
b0e663fa28
fix SeekableHttpStream::stream_stat errors on failed open
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2023-07-13 15:38:58 +02:00
Arthur Schiwon
f2642fcceb
fix(node): non-existing folder is not searchable
...
the previosuly introduced searchBySystemTag was not overwritten in
NonExistingFolder and could run the inherited method.
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2023-07-13 00:01:32 +02:00
Hamid Dehnavi
d0b20534b9
Refactor "substr" calls to improve code readability
...
Signed-off-by: Hamid Dehnavi <hamid.dev.pro@gmail.com>
2023-07-07 04:54:20 +03:30
Christoph Wurst
14719110b9
chore: Replace \OC::$server->query with \OCP\Server::get in /lib
...
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2023-07-06 15:21:22 +02:00
Richard Steinmetz
c4eccbb304
fix(sse): don't update uncached files
...
Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
2023-07-04 12:42:29 +02:00
Julius Härtl
eddb64f8c3
Merge pull request #37969 from nextcloud/poc/noid/systemtags-perf-tag-endpoint
2023-06-28 07:53:35 +02:00
Robin Appelman
39a0554c09
Merge pull request #38858 from nextcloud/scanner-performance3
...
file scanner performance improvements
2023-06-26 17:01:18 +02:00
Arthur Schiwon
17515995fa
Merge pull request #38625 from nextcloud/fix/noid/querysearchehelper-narrow-type
...
fix: expect interface, not a specific implementation
2023-06-24 00:13:43 +02:00
Robin Appelman
493e151be0
dav: clean path before putting it in the statcache
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2023-06-23 14:39:17 +02:00
Robin Appelman
279822c217
implement optimized getDirectoryContent for DAV
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2023-06-22 16:34:32 +02:00
Arthur Schiwon
a0f9556f7c
fix: cominbation of small fixes
...
- possible null return
- parameter name mismatch in implementation
- incomplete unit test
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2023-06-21 20:28:01 +02:00
Arthur Schiwon
49db546f78
fix: include invisible tags for admins
...
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2023-06-21 20:28:01 +02:00
Julius Härtl
ea575e342f
fix(s3): Pass SSE-C parameters for multipart upload
...
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2023-06-21 18:32:24 +02:00
Arthur Schiwon
221562d45d
feat: add searchBySystemTag as PHP API
...
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2023-06-21 18:19:09 +02:00
Arthur Schiwon
783e32a64d
fix: favorites view and universal search against tags
...
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2023-06-21 18:19:08 +02:00
Arthur Schiwon
b0d1cf5730
fix: change if with conditionless else to switch; and a parameter value
...
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2023-06-21 18:19:08 +02:00
Arthur Schiwon
58f7fd2370
use efficient tag retrieval on DAV report request
...
- uses DAV search approach against valid files joined by systemtag selector
- reduced table join for tag/systemtag search
- supports pagination
- no changes to the output formats or similar
Example request body:
<?xml version="1.0"?>
<oc:filter-files xmlns:d="DAV:" xmlns:oc="http://owncloud.org/ns " xmlns:nc="http://nextcloud.org/ns " xmlns:ocs="http://open-collaboration-services.org/ns ">
<d:prop>
<d:getcontentlength/>
<d:getcontenttype/>
<d:getetag/>
<d:getlastmodified/>
<d:resourcetype/>
<nc:face-detections/>
<nc:file-metadata-size/>
<nc:has-preview/>
<nc:realpath/>
<oc:favorite/>
<oc:fileid/>
<oc:permissions/>
<nc:nbItems/>
</d:prop>
<oc:filter-rules>
<oc:systemtag>32</oc:systemtag>
</oc:filter-rules>
<d:limit>
<d:nresults>50</d:nresults>
<nc:firstresult>0</nc:firstresult>
</d:limit>
</oc:filter-files>
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2023-06-21 18:19:08 +02:00
Arthur Schiwon
088a0eea29
ci: pro forma check of existence of internal method
...
createNode() is protected and used by Folder, but being an internal-only
method it shall not be exposed in the Folder or IRootFolder interface.
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2023-06-21 16:53:20 +02:00
Arthur Schiwon
71e41ffeeb
refactor: declare getMount() and getMountsIn() at IRootFolder
...
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2023-06-21 16:53:20 +02:00
Arthur Schiwon
f6ac874dbf
chore: ugly type juggling
...
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2023-06-21 16:53:20 +02:00
Arthur Schiwon
167a5f394d
fix: add typehine for IRootFolder
...
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2023-06-21 16:53:19 +02:00
Arthur Schiwon
eb50b6c6aa
fix: expect interface, not a specific implementation
...
- fixes a regression when deleting folders while music app was enabled,
for a LazyRoot was passed to this method.
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2023-06-21 16:53:13 +02:00
Robin Appelman
de85610385
use source cache when listing folder during recursive copy
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2023-06-19 16:40:15 +02:00
Robin Appelman
292c0e53f8
add summary of detected changes to files:scan output
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2023-06-16 17:56:34 +02:00
Robin Appelman
561536fc58
file scanner performance improvements
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2023-06-16 16:31:48 +02:00
Dominik Fuchß
e3f6a13e14
Fix deprecated method call
...
Signed-off-by: Dominik Fuchß <develop@fuchss.org>
2023-06-13 10:31:33 +02:00
Dominik Fuchß
a4a57409db
Changes after code review.
...
Signed-off-by: Dominik Fuchß <develop@fuchss.org>
2023-06-13 10:31:33 +02:00
Dominik Fuchß
c3ba871f36
Add config variable for curl timeout
...
Add the config variable for curl calls ("remote_curl_timeout"). E.g., needed for nextcloud federation.
Signed-off-by: Dominik Fuchß <develop@fuchss.org>
2023-06-13 10:31:33 +02:00
Robin Appelman
ea88ec1350
add utility command for object store objects
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2023-06-09 18:08:18 +02:00
Christoph Wurst
872c181c74
chore: Drop dead private methods in /lib
...
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2023-06-06 11:01:58 +02:00
Simon L
702196dd86
Merge pull request #38478 from nextcloud/backport/38440/master
...
[master] fix: Catch Deadlock properly as execute throws Doctrine exceptions not our wrapped ones
2023-06-05 23:22:40 +02:00
Robin Appelman
9f1d497a0b
Merge pull request #38261 from fsamapoor/replace_strpos_calls_in_lib_private
...
Refactors "strpos" calls in lib/private to improve code readability.
2023-06-01 23:10:00 +02:00
Julius Härtl
9453c2d40d
fix: execute throws docrine exceptions not our wrapped ones
...
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2023-05-26 06:56:55 +00:00
Simon L
f29aa2997e
Merge pull request #38429 from tanganellilore/fix_delete_user_syslink
...
Fix deletion of User when system link are used in him user folder
2023-05-26 01:12:34 +02:00
Lorenzo Tanganelli
6b55e92e33
invert elseif on rmdir for local storage
...
Signed-off-by: Lorenzo Tanganelli <lorenzo.tanganelli@hotmail.it>
2023-05-24 08:22:50 +02:00
Robin Appelman
cc0ad25c98
don't always check if we need to setup the object store root
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2023-05-23 17:44:40 +02:00
Faraz Samapoor
9f6f4b105f
Update Detection.php
...
The latter implies the former.
https://github.com/nextcloud/server/pull/38261#discussion_r1196708412
Signed-off-by: Faraz Samapoor <f.samapoor@gmail.com>
2023-05-17 20:37:35 +03:30
Simon L
ab848244fe
Merge pull request #38065 from nextcloud/fix-result-mimetype-loader
...
fix(mimetype): Fix returning value when finding existing mimetype in MimeType Loader
2023-05-16 11:30:13 +02:00
Côme Chilliet
8362eea14e
Merge pull request #38196 from nextcloud/fix/fix-32bits-freespace-and-sizes
...
Get rid of more int casts in file size manipulations
2023-05-15 17:05:46 +02:00
Faraz Samapoor
e7cc7653b8
Refactors "strpos" calls in lib/private to improve code readability.
...
Signed-off-by: Faraz Samapoor <fsamapoor@gmail.com>
2023-05-15 15:17:19 +03:30
Côme Chilliet
ae525e1935
Fix return types in phpdoc
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-05-15 12:24:42 +02:00
Côme Chilliet
3bf19f76e6
Merge pull request #32961 from nextcloud/more-debug-lazyuserfolder
...
Make it easier to debug issue #32304
2023-05-15 11:42:06 +02:00
Julius Härtl
e18f97fc95
Merge pull request #37709 from nextcloud/bugfix/deadlock
2023-05-13 13:13:04 +02:00
Julius Härtl
8cab1d73ac
Merge pull request #37621 from nextcloud/enh/lock-readable-path
2023-05-13 13:11:37 +02:00
Côme Chilliet
a90581b405
Get rid of more int casts in file size manipulations
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-05-11 12:46:16 +02:00
Arthur Schiwon
b6c034ac57
Merge pull request #37961 from nextcloud/poc/noid/systemtags-perf
...
SystemTags endpoint to return tags used by a user with meta data
2023-05-11 10:16:03 +02:00
John Molakvoæ
db02684008
Merge pull request #37691 from nextcloud/object-store-background-scan
2023-05-11 08:15:41 +02:00
Robin Appelman
2ea41dab93
repair -1 folder sizes for object store background scan
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2023-05-10 19:33:26 +02:00
Arthur Schiwon
df662f50bd
refactor: remove where specification from SELECT getter
...
- search constraints are now fully in control of
SystemTagsInFilesDetector::detectAssignedSystemTagsIn(), avoids
duplication of a WHERE statement
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2023-05-10 18:48:06 +02:00
Arthur Schiwon
dbfd2f936a
refactor: remove SystemTag logic from Folder into QuerySearchHelper
...
- adds OC\SystemTag\SystemTagsInFilesDetector where the search logic is
moved to
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2023-05-09 23:51:52 +02:00
Arthur Schiwon
2489a2d63a
feat: specify media type via url path: systemtags-current/$mediaType
...
- only the media part of the mime type can be search, but not the full
mime type. It can be added, should it become necessary.
- thus fixes previously hardcoded selector for image/ types
- also fixes a return type hint
- adds a return type hint
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2023-05-09 23:51:51 +02:00
Arthur Schiwon
6bff6a5667
PoC: SystemTags endpoint to return tags used by a user with meta data
...
Target case is photos app: when visiting the tags category, all systemtags
of the whole cloud are retrieved. In subequent steps the next tag is
requested until the browser view is filled with tag tiles (i.e. previews
are requested just as well).
With this approach, we incorpoate the dav search and look for user related
tags that are used by them, and already returns the statistics (number of
files tagged with the respective tag) as well as a file id for the purpose
to load the preview. This defaults to the file with the highest id.
Call:
curl -s -u 'user:password' \
'https://my.nc.srv/remote.php/dav/systemtags-current ' \
-X PROPFIND -H 'Accept: text/plain' \
-H 'Accept-Language: en-US,en;q=0.5' -H 'Depth: 1' \
-H 'Content-Type: text/plain;charset=UTF-8' \
--data @/home/doe/request-systemtag-props.xml
With request-systemtag-props.xml:
<?xml version="1.0" encoding="UTF-8"?>
<d:propfind xmlns:d="DAV:">
<d:prop xmlns:oc="http://owncloud.org/ns " xmlns:nc="http://nextcloud.org/ns ">
<oc:id/>
<oc:display-name/>
<oc:user-visible/>
<oc:user-assignable/>
<oc:can-assign/>
<nc:files-assigned/>
<nc:reference-fileid/>
</d:prop>
</d:propfind>
Example output:
…
<d:response>
<d:href>/master/remote.php/dav/systemtags/84</d:href>
<d:propstat>
<d:prop>
<oc:id>84</oc:id>
<oc:display-name>Computer</oc:display-name>
<oc:user-visible>true</oc:user-visible>
<oc:user-assignable>true</oc:user-assignable>
<oc:can-assign>true</oc:can-assign>
<nc:files-assigned>42</nc:files-assigned>
<nc:reference-fileid>924022</nc:reference-fileid>
</d:prop>
<d:status>HTTP/1.1 200 OK</d:status>
</d:propstat>
</d:response>
<d:response>
<d:href>/remote.php/dav/systemtags/97</d:href>
<d:propstat>
<d:prop>
<oc:id>97</oc:id>
<oc:display-name>Bear</oc:display-name>
<oc:user-visible>true</oc:user-visible>
<oc:user-assignable>true</oc:user-assignable>
<oc:can-assign>true</oc:can-assign>
<nc:files-assigned>1</nc:files-assigned>
<nc:reference-fileid>923422</nc:reference-fileid>
</d:prop>
<d:status>HTTP/1.1 200 OK</d:status>
</d:propstat>
</d:response>
…
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2023-05-09 23:51:48 +02:00
Côme Chilliet
1cc1866ba3
Add back missing slash in LazyUserFolder path
...
Signed-off-by: Côme Chilliet <91878298+come-nc@users.noreply.github.com>
2023-05-09 10:59:31 +02:00
Côme Chilliet
6034cc6893
Make sure to never trigger files hooks on a null path
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-05-04 17:55:09 +00:00
Carl Schwan
85770f3b9f
Make it easier to debug issue #32304
...
Signed-off-by: Carl Schwan <carl@carlschwan.eu>
2023-05-04 11:11:52 +00:00
Thomas Citharel
375466819e
fix(mimetype): Fix returning value when finding existing mimetype in MimeType Loader
...
Also, only return the ID from the transaction as the mimetype string is
already used from the function argument value
Fixes https://github.com/nextcloud/server/pull/35744/files#r1184644610
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2023-05-04 11:15:50 +02:00
Arthur Schiwon
997efe44ff
Merge pull request #37943 from nextcloud/fix/fix-getcontent-return-type
...
Fix file_get_content signatures to make it clear it can return false
2023-05-03 10:34:51 +02:00
Julius Härtl
3bdd770129
fix: Check for wrapped retriable exceptions
...
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2023-05-02 19:42:11 +02:00
Julius Härtl
11c5bc6a2a
fix: Wrap filesystem LockedExceptions for holding the readable path
...
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2023-05-02 19:40:27 +02:00
Simon L
4dfadcabb9
Merge pull request #38014 from nextcloud/norm-logic
...
Normalize logical operators
2023-05-02 16:27:58 +02:00
Git'Fellow
951c5b973e
Normalize logical operators
...
Signed-off-by: Git'Fellow <12234510+solracsf@users.noreply.github.com>
2023-05-02 10:10:02 +02:00
Robin Appelman
f5e2b0b22f
allow storing multiple mounts for the same rootid in the mount cache
...
currently `[$userId, $rootId]` is used as the unique key for storing mounts in the mount cache,
however there are cases where the same rootid is mounted in multiple places for a user which currently leads to not all of those mounts being added to the cache.
Previously this didn't matter as the mount cache was only used to list users with access to a specific file, so a user having access to the file multiple times didn' change anything.
With 24 the mount cache is used for more cases and multiple mounts for the same id becomes relevant.
While I think there isn't a real negative effect atm besides missing the optimized path we should ensure that the mounts are properly listed
Signed-off-by: Robin Appelman <robin@icewind.nl>
2023-04-28 15:08:08 +02:00