Commit Graph

26287 Commits (40c504ec2d4cd66cce8a7d74e8c65873dcbfa921)

Author SHA1 Message Date
Nextcloud bot d400b38000
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-11-20 00:14:17 +07:00
nfebe 3030783785 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>
2025-11-19 16:17:43 +07:00
Marcel Müller 8e04afc2b1
Merge pull request #56451 from nextcloud/feat/noid/update-user-keys
feat: Add option to update the public key of a user
2025-11-19 13:42:30 +07:00
Carl Schwan 90f4b98424 refactor(IResult): Un-deprecate fetch and fetchAll
But still add a note that the new methods are preferred.

Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-11-19 10:53:03 +07:00
Marcel Müller 234f183f8e feat: Add option to update the public key of a user
Signed-off-by: Marcel Müller <marcel-mueller@gmx.de>
2025-11-19 10:51:43 +07:00
Nextcloud bot 2d9d612ec1
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-11-19 00:13:53 +07:00
Robin Appelman 9fcc2937aa
Merge pull request #56515 from nextcloud/s3-meta-encode
Encode s3 metadata as base64 if needed
2025-11-18 22:23:24 +07:00
Robin Appelman a7d130c598
Revert "fix(ObjectStoreStorage): Encode original-path in writeStream by @frabe1579"
This reverts commit 4b4b39e7ec.

Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-11-18 19:53:17 +07:00
Carl Schwan 503a65ddd0 refactor: Run rector
Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-11-18 17:45:54 +07:00
Carl Schwan 3682dbbf5e feat(result): Update result wrapper with new doctrine methods
- fetch is replaced with fetchAssociative/fetchNumeric/fetchOne with
  better type hinting
- Same with fetchAll
- And add iterateAssociative/iterateNumeric which are nicer to use than
  a `while ($row = $result->fetch()) {}`

Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-11-18 17:45:13 +07:00
Robin Appelman 8194be795d
fix: encode s3 metadata as base64 if needed
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-11-18 16:06:57 +07:00
Joas Schilling 7c870a8f67
fix(db)!: Deprecate JSON fields due to problems with querying and selecting
Signed-off-by: Joas Schilling <coding@schilljs.com>
2025-11-18 11:58:33 +07:00
Joas Schilling 60bfab2421
fix(db): Fix Oracle JSON handling
Signed-off-by: Joas Schilling <coding@schilljs.com>
2025-11-18 11:58:33 +07:00
Joas Schilling 4676b12a32
fix(db): Fix comparing JSON data in MySQL and MariaDB
Signed-off-by: Joas Schilling <coding@schilljs.com>
2025-11-18 11:58:32 +07:00
Joas Schilling fb8caecbb0
fix(db): Fix JSON handling in WHERE statements for postgres
Signed-off-by: Joas Schilling <coding@schilljs.com>
2025-11-18 11:58:31 +07:00
Nextcloud bot 83a0e8a7a5
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-11-18 00:14:24 +07:00
Stephan Orbaugh 3a26574f29
Merge pull request #56243 from nextcloud/fix/noid/share-permissions-attribute
Fix potentially broken shares from the past
2025-11-17 14:07:49 +07:00
Joas Schilling f27f4524c4
Merge pull request #56438 from nextcloud/work/carl/profiler-updtae
feat(profiler): Use gzdecode/gzencode to parse profiles
2025-11-17 12:47:59 +07: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 +07:00
Nextcloud bot 51cb58be1f
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-11-17 00:13:26 +07:00
Nextcloud bot 7e92820474
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-11-16 00:13:30 +07:00
Nextcloud bot 91b5d5f511
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-11-15 00:13:19 +07:00
Carl Schwan 6a5f9c3c89 feat(profiler): Use gzdecode/gzencode to parse profiles
See 42a80727f9/src/Symfony/Component/HttpKernel/Profiler/FileProfilerStorage.php (L299)

Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-11-14 14:19:33 +07:00
Stephan Orbaugh 1498b5d96e
Merge pull request #56343 from nextcloud/feat/add-rememberme-checkbox
Add rememberme checkbox
2025-11-13 16:53:50 +07:00
Stephan Orbaugh 2d0c5cf627
Merge pull request #56218 from nextcloud/feat/di/abort-infinite-loop
feat(DI): Abort querying if infinite loop is detected
2025-11-13 16:15:49 +07:00
Côme Chilliet 4e83d20837 feat(login): Add rememberme checkbox
Only present if allowed by configuration.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-11-13 13:25:59 +07:00
Côme Chilliet 28b48eec39 chore: Improve typing and codestyle in LoginData
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-11-13 13:25:59 +07:00
Nextcloud bot ba287d710b
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-11-13 00:14:19 +07:00
Andy Scherzinger 32c149e8ea
Merge pull request #56255 from nextcloud/availability-same-request
make failed availability check apply in the same request
2025-11-12 18:45:01 +07:00
Carl Schwan 67d0307e66 perf(s3): Cache whether bucket exists
Otherwise, we call doesBucketExist all the time which does a network
request to the S3 server adding some non-trivial latency when creating a
S3 connection object.

Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-11-12 14:17:48 +07:00
provokateurin e22cfbf7d7
fix(config.sample.php): Update enabledPreviewProviders
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-11-12 12:34:42 +07:00
Kate e5f50dafcb
Merge pull request #55620 from nextcloud/fix/appframework/check-reponder-existence 2025-11-12 11:46:08 +07:00
Daniel Calviño Sánchez 0ce4b4b371
Merge pull request #52012 from nextcloud/fix-user-collaborators-returned-when-searching-for-mail-collaborators
Fix user collaborators returned when searching for mail collaborators
2025-11-12 11:04:07 +07:00
Joas Schilling 49324bcb21
Merge pull request #56346 from nextcloud/feat/noid/allow-overwriting-rate-limit
feat(rate-limit): Allow overwriting the rate limit
2025-11-12 10:09:16 +07:00
provokateurin f720925b06
fix(AppFramework): Check for responder existence
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-11-12 09:39:53 +07:00
Joas Schilling 2b9083ab29
feat(rate-limit): Allow overwriting the rate limit
Signed-off-by: Joas Schilling <coding@schilljs.com>
2025-11-12 08:59:40 +07:00
Nextcloud bot b3fd79fff3
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-11-12 00:14:18 +07:00
Richard Steinmetz ccc0c3c25f fix(l10n): do not consider user language when getting the generic one
Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
2025-11-10 19:50:19 +07: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 +07:00
Julien Veyssier 33d1acddc7
fix(ai-apis): reject text inputs that are longer than 64K chars
Signed-off-by: Julien Veyssier <julien-nc@posteo.net>
2025-11-10 17:29:09 +07:00
Maxence Lange 503fda6316
Merge pull request #55648 from nextcloud/fix/ocm-discovery-spec-compliant
fix(ocm): align discovery process with OCM spec
2025-11-10 08:54:51 +07:00
Nextcloud bot c39f56f8a1
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-11-10 00:13:26 +07:00
Micke Nordin bd6aa276da fix(ocm): align discovery process with OCM spec
Signed-off-by: Micke Nordin <kano@sunet.se>
2025-11-09 19:35:57 +07:00
Joas Schilling d14cf6a8be
Merge pull request #56280 from nextcloud/chore/noid/version-in-crawler-agent
Add server version to default crawler user agent
2025-11-07 15:42:53 +07:00
Marcel Müller b91034b3cf chore: Add server version to default crawler user agent
Signed-off-by: Marcel Müller <marcel-mueller@gmx.de>
2025-11-07 11:20:56 +07:00
Arthur Schiwon f4b4cb5493
Revert "feat(group): Sanitize group names and ids on creation" 2025-11-07 10:37:50 +07:00
Robin Appelman 17104bf3a0
chore: better type hints for `getAvailability`
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-11-06 20:09:17 +07:00
Robin Appelman 2970232790
fix: make failed availability check apply in the same request
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-11-06 20:08:44 +07:00
Louis cddd666213
Merge pull request #56222 from nextcloud/artonge/feat/sanitize_groupname
feat(group): Sanitize group names and ids on creation
2025-11-06 15:24:10 +07:00
Louis 4850e54ec8
Merge pull request #56215 from nextcloud/artonge/feat/ephemeral_lax_period
feat(EphemeralSessions): Introduce lax period
2025-11-06 11:24:01 +07:00
Louis Chmn 989011766e feat(group): Sanitize group names and ids on creation
It does not make sense to allow group name with weird white space sequence going forward.

Same for group ids, in which we do not really want white space.

Signed-off-by: Louis Chmn <louis@chmn.me>
2025-11-05 18:31:38 +07:00
Louis Chmn ed4a1708f2 feat(EphemeralSessions): Introduce lax period
Signed-off-by: Louis Chmn <louis@chmn.me>
2025-11-05 16:08:13 +07:00
Anna fafc07a19d
Merge pull request #56190 from nextcloud/fix/noid/dont-loop-affected-userids-twice
fix(activity): do not loop affected userIDs twice
2025-11-05 13:49:06 +07:00
provokateurin 3dbf848ee9
feat(DI): Abort querying if infinite loop is detected
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-11-05 12:21:19 +07:00
Nextcloud bot 75281251b1
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-11-05 00:14:08 +07:00
Benjamin Gaussorgues 9581230b56
Merge pull request #56106 from nextcloud/fix/snowflake_apcu 2025-11-04 16:01:12 +07:00
Benjamin Gaussorgues 635a6ac9da
Merge pull request #56095 from nextcloud/feat/add-serverid 2025-11-04 16:00:32 +07:00
Anna Larch 767dc3eaee fix(activity): do not loop affected userIDs twice
Signed-off-by: Anna Larch <anna@nextcloud.com>
2025-11-04 13:55:50 +07: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 +07:00
Maxence Lange 4a399a3d0b
Merge pull request #56159 from nextcloud/feat/noid/lexicon-internal-flag
feat(lexicon): add FLAG_INTERNAL
2025-11-03 12:55:21 +07:00
Benjamin Gaussorgues 1f74ed9239
feat(config): add serverid configuration and use it for Snowflakes
Signed-off-by: Benjamin Gaussorgues <benjamin.gaussorgues@nextcloud.com>
2025-11-03 14:25:09 +07:00
Benjamin Gaussorgues 8062cdb485
fix(snowflakes): fix APCu cache restarted detection
Signed-off-by: Benjamin Gaussorgues <benjamin.gaussorgues@nextcloud.com>
2025-11-03 14:21:30 +07:00
Benjamin Gaussorgues 69ec2ce26b
Merge pull request #56120 from nextcloud/feat/snowflake-file-sequence 2025-11-03 14:02:33 +07:00
Maxence Lange 1538692987 feat(lexicon): add FLAG_INTERNAL
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
2025-11-03 11:39:25 +07: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 +07:00
Kate e3edf43e28
Merge pull request #56096 from nextcloud/fix/56077/s3-configure-checksum-defaults 2025-11-03 11:08:33 +07:00
Stephan Orbaugh ef21c79368
Merge pull request #55717 from DaanSelen/fix-issue-55665
fix(ObjectStoreStorage): fix s3 path encoding (issue causing 55665)
2025-11-03 10:58:53 +07:00
Ferdinand Thiessen 4a63bd2068
Merge pull request #56039 from nextcloud/fix/theming-legacy-app-config
fix(theming): use IAppConfig for all ThemingDefaults
2025-11-01 18:13:11 +07:00
Ferdinand Thiessen 8840b582c5
refactor(theming): migrate `ThemingDefaults` to `OCP\AppFramework\Services\IAppConfig`
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-11-01 14:16:40 +07:00
Marcel Klehr 99d6276826
Merge pull request #55713 from nextcloud/feat/taskprocessing/user-facing-error-message
feat(TaskProcessing): user-facing error messages
2025-10-30 12:29:43 +07:00
Fiehe Christoph b87add2711
fix(s3): expose request_checksum_calculation and response_checksum_validation
Fix https://github.com/nextcloud/server/issues/56077

This commit makes the configuration settings 'request_checksum_calculation' and 'response_checksum_validation' of the S3Client from the AWS SDK for PHP configurable.

Signed-off-by: Fiehe Christoph  <c.fiehe@eurodata.de>
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2025-10-30 11:57:32 +07:00
Marcel Klehr b5f057cdbc fix: Fix psalm issue
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2025-10-30 10:49:28 +07:00
Marcel Klehr 1c33239e06 fix: autoloaderchecker
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2025-10-30 10:29:17 +07: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 +07:00
Marcel Klehr 3ee6999682 fix: Use substr to cut error messages
This allows for cutting them to longer lengths

Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2025-10-30 10:07:57 +07:00
provokateurin d8294a8531
fix(Mailer): Log errors
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-10-30 08:42:12 +07:00
John Molakvoæ 52a9940255
Merge pull request #55728 from nextcloud/feat/snowflakeIds 2025-10-29 09:11:34 +07:00
Nextcloud bot 445cce4ed8
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-10-29 00:13:46 +07: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 +07: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 +07:00
Ferdinand Thiessen 144e864806
Merge pull request #56033 from nextcloud/fix/cache-key
fix(Memcache): ensure global prefix depends on enabled apps
2025-10-28 17:03:49 +07:00
Ferdinand Thiessen e4f06e102f
Merge pull request #56034 from nextcloud/enh/noid/appmanager-upgrade-info-log
enh(AppManager): log which apps requires the upgrade procedure
2025-10-28 15:52:28 +07:00
Andy Scherzinger 4174c580b3
Merge pull request #55471 from SUNET/kano-ocm-discovery
fix(OCM): align parameter naming with spec and extend OCMProvider
2025-10-28 14:52:04 +07:00
Arthur Schiwon ab9a92fac8
feat(AppManager): log which apps requires the upgrade procedure
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2025-10-27 18:05:00 +07:00
Joas Schilling 2ec7fa88cc
fix(log): Fix call to normalize function
Signed-off-by: Joas Schilling <coding@schilljs.com>
2025-10-27 16:46:10 +07:00
Ferdinand Thiessen b4d19748fa
fix(Memcache): ensure global prefix depends on enabled apps
- ensure the prefix is changed when an app is (dis)enabled
- ensure the app ids are included in the hash instead of only the
  version numbers
- ensure hash is deterministic by always use the same order.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-10-27 16:18:24 +07:00
Joas Schilling 6ef91f0549
Merge pull request #55910 from nextcloud/bugfix/55909/trim-meta-data
fix(bfp): Trim meta data so it can still be stored
2025-10-27 15:11:40 +07:00
Ferdinand Thiessen d0e25af1af
Merge pull request #55954 from nextcloud/carl/fix-preview2
fix: Fetching previews on Oracle
2025-10-27 13:00:25 +07:00
Micke Nordin 495a01a725 fix(ocm): include provider field in OCMProvider serialization
- Add `provider` to `jsonSerialize()` output of OCMProvider.
- Ensures discovery consumers receive provider identifier along with
  endpoint, version, and resources.

Signed-off-by: Micke Nordin <kano@sunet.se>
2025-10-27 12:28:09 +07:00
Micke Nordin 802a3f5cae fix(ocm): ensure capabilities are set on OCMProvider from discovery data
- Call `setCapabilities()` with `capabilities` field when available.
- Prevents loss of provider capability information during discovery.

Signed-off-by: Micke Nordin <kano@sunet.se>
2025-10-27 12:28:09 +07:00
Joas Schilling a65207abd9
fix(profiler): Harden profiler writes
Signed-off-by: Joas Schilling <coding@schilljs.com>
2025-10-24 15:23:20 +07:00
Daniel 1f9f41a079
Merge pull request #55306 from nextcloud/bug/noid/validate-filename-when-creating-file-from-template
Validate filename when creating file from template
2025-10-24 12:52:44 +07:00
Joas Schilling 16088cd827
Merge pull request #55819 from nextcloud/bugfix/noid/allow-federation-with-ocis-cloudids
fix(federation): Allow outgoing and incoming federation with oCIS federated cloud ids
2025-10-24 11:55:46 +07:00
Daniel Kesselberg 6e04437de6
fix: validate filename when creating file from template
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2025-10-24 01:05:48 +07:00
John Molakvoæ 92efa073f0
Merge pull request #55955 from nextcloud/fix/multiple-dav-public-auth 2025-10-23 16:10:29 +07:00
Carl Schwan 1dc363581f fix: get all available previews on Oracle
Split the DB requests in chunk of 1000 and use INNER JOIN instead of IN
as this is better supported on all DB.

Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-10-23 14:10:15 +07:00
skjnldsv 9c98b722f4 fix(dav): allow multiple link shares token in session
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2025-10-23 13:10:39 +07:00
Carl Schwan 9adf6cce55 fix: Fetching previews on Oracle
We need an explicit cast on Oracle as Oracle returns number as string.

Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-10-23 09:39:05 +07:00
skjnldsv 89a2cae40d fix: join accounts_data instead of preferences when searching users
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2025-10-23 08:59:10 +07:00
Ferdinand Thiessen 86e47d82e8
Merge pull request #55432 from nextcloud/feat/vue3-demi-2
refactor: prepare Vue 3 migration
2025-10-22 22:07:27 +07:00