Commit Graph

1811 Commits (stable31)

Author SHA1 Message Date
F. E Noel Nfebe 0311fb3e7b
Merge pull request #56970 from nextcloud/backport/56758/stable31
[stable31] fix: Fix orphan shares blocking moving other shares
2025-12-16 00:24:53 +07:00
Elizabeth Danzberger f0abd9250f fix(templates): deduplicate provider templates
Signed-off-by: Elizabeth Danzberger <elizabeth@elzody.dev>
2025-12-12 18:19:28 +07:00
Côme Chilliet 75171b879a fix: Log missing nodes of shares at debug level
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-12-10 18:25:24 +07:00
Côme Chilliet 7a4d9ecf51 fix: Fix orphan shares blocking moving other shares
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-12-10 18:25:24 +07:00
nfebe 8d5dcbce79
feat(objectstore): add configurable S3 retry attempts
Add retriesMaxAttempts parameter to S3 objectstore configuration
to allow customization of AWS SDK retry behavior for handling
unreliable network conditions or proxy issues.

Defaults to 5 retries (AWS SDK default) if not specified.

Signed-off-by: nfebe <fenn25.fn@gmail.com>
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2025-12-03 12:53:39 +07:00
provokateurin e67c8e739e feat(ObjectStore): Allow overriding arguments per bucket
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-12-01 16:44:41 +07:00
provokateurin 3140daa1aa
feat(CertificateManager): Add option to specify the default certificates bundle path
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-12-01 11:57:26 +07:00
Kent Delante 8706dadcf0
Merge pull request #56616 from nextcloud/backport/56565/stable31
[stable31] feat: emit an event when an S3 bucket is created
2025-11-27 10:26:42 +07:00
Kent Delante bf4c094741 feat: emit an event when an S3 bucket is created
Signed-off-by: Kent Delante <kent.delante@proton.me>
2025-11-25 20:16:21 +07:00
Louis Chmn 8afe1dd53a fix(encryption): Increment lastChunkNr when size is off
When computing the unencrypted file size, we need the size of the last encrypted chunk as its size is usually not the regular 8192 bits.

To avoid reading the whole file, we seek directly to that last chunk based on the expected file size. When the expected file size is smaller than the actual one, we have a logic in place to continue reading until we reach the end of the file.

In that logic, we forgot to increment the `$lastChunkNr` which is important when we later check the signature of the chunk.

This commit adds that missing increment.

Signed-off-by: Louis Chmn <louis@chmn.me>
2025-11-25 09:19:09 +07:00
Robin Appelman d1a760d618
fix: ensure all object store configuration have distict bucket names
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-11-20 15:36:14 +07:00
Robin Appelman 6d487ac990
fix: make bucket mapper work with new multi-object-store config
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-11-20 15:36:13 +07:00
Robin Appelman f21dcac9ef
feat: allow object store configuration aliases for easier migrations
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-11-20 15:36:11 +07:00
Robin Appelman 832c77ab52
feat: add command to get user objectstore config mappings
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-11-20 15:16:43 +07:00
Robin Appelman ff74df3528
feat: allow configuring multiple objectstore configurations
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-11-20 15:16:39 +07:00
Benjamin Frueh 563fa568d3 fix: Clear mount cache when file storage changes during move
Signed-off-by: Benjamin Frueh <benjamin.frueh@gmail.com>
2025-11-13 14:09:36 +07:00
Robin Appelman edb370d2ac chore: better type hints for `getAvailability`
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-11-12 17:45:41 +07:00
Robin Appelman 2221c69219 fix: make failed availability check apply in the same request
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-11-12 17:45:41 +07:00
Daniel Kesselberg fecaddf4cc
fix: validate filename when creating file from template
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2025-11-04 16:08:49 +07:00
Louis Chmn 3cfc34ecfa fix(S3): Only append streams if non-seekable
Later, when we rewind the stream in `writeMultiPart` during retry, both streams were rewinded, so the resulting stream was bigger than expected.

Inspired by https://github.com/aws/aws-sdk-php/blob/master/src/S3/ObjectUploader.php#L136-L146

Signed-off-by: Louis Chmn <louis@chmn.me>
2025-10-10 12:43:19 +07:00
provokateurin f5e3e97ea6
fix(files): Always return a valid mimetype
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-10-06 16:00:04 +07:00
Kate 7db30397fd
Merge pull request #55410 from nextcloud/backport/55374/stable31 2025-10-01 00:01:33 +07:00
Robin Appelman 6842d0746d
Merge pull request #55288 from nextcloud/backport/52816/stable31
[stable31] feat: move primary object store configuration to a single place
2025-09-30 10:35:42 +07:00
provokateurin 406c0011fa fix(files): Stop overwriting scan_permissions
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-09-29 16:12:10 +07:00
yemkareems d615109126 fix: small typo fix
Signed-off-by: yemkareems <yemkareems@gmail.com>
2025-09-29 12:24:43 +07:00
Robin Appelman 7162c3e8ed
feat: move primary object store configuration to a single place
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-09-24 18:39:21 +07:00
Louis Chemineau ffe4696192 fix(Updater): Lower deadlock log level from warning to info
If this is safe to ignore, then it does not make sense to keep warning the admins.

Signed-off-by: Louis Chemineau <louis@chmn.me>
2025-09-16 16:19:03 +07:00
Ferdinand Thiessen 6860d92bf4 fix(Filesystem): use FilenameValidator for `Filesystem::isFileBlacklisted`
This fixes the issue that some methods will not allow uploading files
because they still require the deprecated config option to be used.
So instead we need to use the validator introduced in v30.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-09-03 14:24:48 +07:00
Robin Appelman f38be0a169
fix: cast fileid to string in getMountsForFileId
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-08-29 17:59:16 +07:00
Côme Chilliet f1fb150055 fix(encryption): Fix TypeError when trying to decrypt unencrypted file
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-08-26 08:42:58 +07:00
John Molakvoæ 7cc52f0b14
Merge pull request #54190 from nextcloud/backport/54121/stable31
[stable31] fix: add missing color select to tags usage query
2025-08-07 17:01:34 +07:00
Benjamin Gaussorgues 50fc614bcd
Merge pull request #54297 from nextcloud/backport/54125/stable31 2025-08-07 17:00:12 +07:00
Robin Appelman 05e64418a7
fix: better object store write error propagation
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-08-07 13:48:43 +07:00
Robin Appelman d1af0f34a2
fix: always do stream counting for object store upload
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-08-07 13:48:42 +07:00
Robin Appelman 902cb3dbb9
fix: validate written size for s3 multipart uploads
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-08-07 13:48:42 +07:00
Robin Appelman e483387189
feat: more generic way of passing metadata to object storage backends for new objects
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-08-07 13:48:37 +07:00
Robin Appelman 78f976dc0b fix: add missing color select to tags usage query
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-08-06 13:04:01 +07:00
Robin Appelman 034cf48da3 fix: don't update cached mountpoints if the request doesn't have filesystem access
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-08-01 16:04:20 +07:00
Côme Chilliet e2861b42d1 fix(encryption): Correctly handle file opening and copying failures
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-07-03 16:03:19 +07:00
Kent Delante f40d14abac fix(s3): retry failed multipart uploads with decreased concurrency
Signed-off-by: Kent Delante <kent.delante@proton.me>
2025-06-20 18:24:16 +07:00
Daniel Calviño Sánchez 019b535868 fix(ObjectStore): Make S3 "connect_timeout" option configurable
The hardcoded connection timeout of 5 seconds may not be enough in some
cases, so now it is got from the ObjectStore arguments in Nextcloud
configuration, falling back to 5 if not set.

The connection timeout is set in seconds, but decimal precision can be
used for subsecond accuracy (for example, 4.2 for 4200 milliseconds).

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2025-06-17 03:30:55 +07:00
Joas Schilling efb2a9376b fix: Run cleanByMoundId query on all shards
Signed-off-by: Joas Schilling <coding@schilljs.com>
2025-06-08 09:28:02 +07:00
Robin Appelman edfb7b2393 perf: set the folder size in the same query as we create it
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-06-02 09:56:29 +07:00
Louis Chemineau 9d26571eb2 fix(S3): Use original folder size during copy
This prevent having copied folders with a wrongly set size of 0KB.

- Fix https://github.com/nextcloud/server/issues/51916

Signed-off-by: Louis Chemineau <louis@chmn.me>
2025-06-02 09:56:29 +07:00
Jonas ed492c5c70 fix(node): emit hooks on `Node::copy()`
When calling `Files\Node\Node::copy()`, `Files\View::copy()` gets called,
but `Files\View::fakeRoot` is empty so the hooks are not emitted if no
path is given to `Files\View::shouldEmitHooks()`.

This results in node-related events like `NodeCopiedEvent` not being
fired when copying files via `Files\Node\Node::copy()`.

`Files\View::shouldEmitHooks()` is given a path as parameter in almost
all places except when called from the `copy()` function. This commit
changes it and passes the copy target path.

Fixes: nextcloud/collectives#1756

Signed-off-by: Jonas <jonas@freesources.org>
2025-05-28 11:50:11 +07:00
Elizabeth Danzberger 52ae766a8e feat: only load template fields when requested
Signed-off-by: Elizabeth Danzberger <lizzy7128@tutanota.de>
2025-05-26 18:03:24 +07:00
Kate 76d37a37f6
Merge pull request #52987 from nextcloud/backport/50157/stable31 2025-05-26 08:27:43 +07:00
Andy Scherzinger b3d1fac31e
Merge pull request #52883 from nextcloud/backport/52873/stable31
[stable31] fix: improve error message when cache rename source can't be found
2025-05-25 20:16:11 +07:00
Robin Appelman 4dba5e141b fix: improve error message when cache rename source can't be found
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-05-25 18:38:42 +07:00
provokateurin 29d69826b6 feat(UserMountCache): Emit events for added, removed and updated mounts
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-05-25 16:46:53 +07:00