Commit Graph

6564 Commits

Author SHA1 Message Date
Git'Fellow 5dda39a61e refactor(dbal): move to modern calls
Signed-off-by: Git'Fellow <12234510+solracsf@users.noreply.github.com>
Signed-off-by: Carl Schwan <carlschwan@kde.org>
2026-06-24 10:35:00 +02:00
Carl Schwan e76d290b67 Merge pull request #61440 from nextcloud/carl/findIn-mount-point
perf(View):  don't sort twice the same array
2026-06-23 14:00:21 +02:00
Carl Schwan e6b5f763a4 perf: Avoid sorting an already sorted array
Improve performance a bit as this is in the hotpath and take ~2s in
prod.

Signed-off-by: Carl Schwan <carlschwan@kde.org>
2026-06-23 13:11:42 +02:00
Carl Schwan a213e6bb1d Merge pull request #61011 from nextcloud/carl/cleanup-preview
fix(preview): First cleanup from filecache and then from preview table
2026-06-23 11:08:57 +02:00
Côme Chilliet 32f8ff2445 fix: Remove uses of deprecated service string names
Use the class/interface name instead to avoid logging.
This was breaking in some cases as logging would trigger a deprecation
 warning, resulting in an infinite loop.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2026-06-22 11:19:00 +02:00
Enrique Pérez Arnaud 3616212ba2 feat(files_sharing): store and refresh OCM access tokens for external shares
Co-authored-by: Micke Nordin <kano@sunet.se>
Signed-off-by: Micke Nordin <kano@sunet.se>
Signed-off-by: Enrique Pérez Arnaud <enrique@cazalla.net>
2026-06-17 11:01:16 +02:00
Enrique Pérez Arnaud 4d56c74ba7 feat(ocm): advertise exchange-token capability and token endpoint
Co-authored-by: Micke Nordin <kano@sunet.se>
Signed-off-by: Micke Nordin <kano@sunet.se>
Signed-off-by: Enrique Pérez Arnaud <enrique@cazalla.net>
2026-06-17 11:01:14 +02:00
Enrique Pérez Arnaud ac2f9816a6 feat(auth): support permanent OCM refresh tokens and bearer login
Co-authored-by: Micke Nordin <kano@sunet.se>
Signed-off-by: Micke Nordin <kano@sunet.se>
Signed-off-by: Enrique Pérez Arnaud <enrique@cazalla.net>
2026-06-17 10:44:51 +02:00
Andy Scherzinger 9af6fe9500 Merge pull request #61053 from bygadd/fix/taskprocessing-worker-atomic-claim
fix(taskprocessing): claim tasks atomically so parallel workers don't duplicate
2026-06-17 10:21:33 +02:00
Andy Scherzinger c409abfc63 Merge pull request #61322 from nextcloud/fix/improve-password-confirmation-middleware
fix: Do not set last-password-confirm for apptoken sessions
2026-06-16 19:49:28 +02:00
Côme Chilliet f7f9a47ceb fix: Do not set last-password-confirm for apptoken sessions
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2026-06-16 11:59:13 +02:00
Micke Nordin 64a23d457f test(ocm): Add tests for deduplication of resourceTypes
Also update 3rdparty

Assisted-by: ClaudeCode:claude-fable-5
Signed-off-by: Micke Nordin <kano@sunet.se>
2026-06-16 11:30:24 +02:00
Joas Schilling 45a4c10612 Merge pull request #61275 from nextcloud/jtr/test-S3-testFileSizes
test(s3): fix flaky EOF check and remove PHP 8.5 skip
2026-06-15 17:38:59 +02:00
Yoan Bozhilov 022531b997 fix(taskprocessing): guard lockTask on scheduled, record started_at, Oracle fallback
Address review feedback (@marcelklehr, Copilot):
- lockTask claims only SCHEDULED tasks (was status != RUNNING) and stamps
  started_at in the same atomic UPDATE, so a finished task cannot be re-claimed
  and the external-provider claim path records started_at as well.
- claimWithBoundedRetry re-reads after lockTask instead of a follow-up UPDATE.
- Oracle joins SQLite on the bounded-retry fallback: Oracle cannot combine a
  row-limiting clause with FOR UPDATE (ORA-02014), which failed the claim tests
  on Oracle CI.
- Reword the worker docblock/comments to "prefer oldest available" (parallel
  SKIP LOCKED does not guarantee a strict global order).
- Add a regression test that lockTask does not resurrect a finished task.

Signed-off-by: Yoan Bozhilov <bygadd@gmail.com>
Assisted-by: Claude Code:claude-opus-4-8
2026-06-15 16:37:34 +02:00
Yoan Bozhilov 0799454a1f fix(taskprocessing): claim tasks atomically with SKIP LOCKED + composite index
Replace the worker retry/ignore-list claim-loop with a single atomic
SELECT ... FOR UPDATE SKIP LOCKED claim (SQLite bounded-retry fallback),
preserving the no-duplicate guarantee while removing the thundering-herd
contention that throttled backlog draining. Add a (status,type,last_updated)
index via the table-creating migration + db:add-missing-indices listener.

Signed-off-by: Yoan Bozhilov <bygadd@gmail.com>
Assisted-by: Claude Code:claude-opus-4-8
2026-06-15 16:37:34 +02:00
Côme Chilliet 088dba3c20 chore: Fix CreateSessionTokenCommandTest and add test for ephemeral session
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2026-06-15 15:28:38 +02:00
Josh 384e21b824 test(s3): drop unnecessarily added fclose
Signed-off-by: Josh <josh.t.richards@gmail.com>
2026-06-13 10:21:26 -04:00
Josh ba4924b331 test(s3): make testFileSizes EOF assertion more robust
Signed-off-by: Josh <josh.t.richards@gmail.com>
2026-06-13 10:01:52 -04:00
Benjamin Gaussorgues 28d32d8fff feat(snowflake): allows to generate Snowflake IDs matching a timestamp
Signed-off-by: Benjamin Gaussorgues <benjamin.gaussorgues@nextcloud.com>
2026-06-12 13:53:10 +02:00
Benjamin Gaussorgues 60ce92a697 feat(utils): add getter for serverid with proper default
Signed-off-by: Benjamin Gaussorgues <benjamin.gaussorgues@nextcloud.com>
2026-06-12 13:53:10 +02:00
provokateurin 3ee06f338c ci(PHP): Only test against highest and lowest supported PHP versions
Signed-off-by: provokateurin <kate@provokateurin.de>
2026-06-11 20:04:56 +02:00
Louis da706223e4 Merge pull request #61140 from nextcloud/fix/fix-deprecations-in-tests
Fix deprecations in tests
2026-06-11 14:48:10 +02:00
Carl Schwan c882abff2e Merge pull request #60957 from nextcloud/carl/simplify-di-init
refactor(server): Register alias when needed
2026-06-11 13:57:35 +02:00
Louis 996fcfe443 Merge pull request #57216 from Roszakos/2fa-stateless-provider-interface
feat (2fa): Add IStatelessProvider interface
2026-06-11 11:01:23 +02:00
Daphne Muller 69af641e34 Merge pull request #60500 from nextcloud/enh/noid/taskprocessing-streaming
On behalf of Julien
2026-06-11 10:22:33 +02:00
Côme Chilliet d8a6ab54e7 chore(tests): Use /dev/shm as a tempdirectory
Should fix tests in phpunit-32bits

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2026-06-11 09:45:33 +02:00
Côme Chilliet a8f21da1f7 fix: Fix data directory permission check and its test
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2026-06-11 09:45:32 +02:00
Côme Chilliet 9fe62b6338 chore(tests): Speed up TARTest by compressing a smaller folder
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2026-06-11 09:45:32 +02:00
Côme Chilliet d881bca11f chore(tests): Adapt tests to IUser strict typing
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
Signed-off-by: Benjamin Gaussorgues <benjamin.gaussorgues@nextcloud.com>
2026-06-11 09:45:31 +02:00
Côme Chilliet a51886569e chore: Pass correct type for alias in QueryBuilderTest
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
Signed-off-by: Benjamin Gaussorgues <benjamin.gaussorgues@nextcloud.com>
2026-06-11 09:45:31 +02:00
Côme Chilliet b2a69d0095 fix: Silence PHP warnings from fopen and mkdir
We are testing the result and logging our own error anyway.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
Signed-off-by: Benjamin Gaussorgues <benjamin.gaussorgues@nextcloud.com>
2026-06-11 09:45:30 +02:00
Côme Chilliet 1f246dec14 chore(tests): Set a token string to avoid getToken returning null from tests
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
Signed-off-by: Benjamin Gaussorgues <benjamin.gaussorgues@nextcloud.com>
2026-06-11 09:45:29 +02:00
Côme Chilliet 805902eed3 chore: Re-enable tests failing on drone
We do not use drone anymore, let’s see if we can fix these tests or if
 they should be removed.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
Signed-off-by: Benjamin Gaussorgues <benjamin.gaussorgues@nextcloud.com>
2026-06-11 09:45:29 +02:00
Côme Chilliet c6452f01a5 chore(tests): Fix User UID mocking in TwoFactorAuth/ManagerTest.php
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
Signed-off-by: Benjamin Gaussorgues <benjamin.gaussorgues@nextcloud.com>
2026-06-11 09:45:28 +02:00
Côme Chilliet b4f86c032c chore(tests): Avoid deprecation in PublicKeyTokenProvider
Also cleaned up the test a bit.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
Signed-off-by: Benjamin Gaussorgues <benjamin.gaussorgues@nextcloud.com>
2026-06-11 09:45:27 +02:00
Benjamin Gaussorgues 73506e8486 chore(deprecated): remove Reflection*::setAccessible as it's noop since PHP 8.1
Method ReflectionProperty::setAccessible() is deprecated since 8.5, as it has no effect since PHP 8.1

Signed-off-by: Benjamin Gaussorgues <benjamin.gaussorgues@nextcloud.com>
2026-06-11 09:45:27 +02:00
Carl Schwan a459b9cc1f refactor(server): Register alias when needed
And remove useless service registration

Signed-off-by: Carl Schwan <carlschwan@kde.org>
2026-06-10 23:22:24 +02:00
Kate 8948e923e8 Merge pull request #61169 from nextcloud/test/parent-setup
test: Add missing calls to the parent setUp method
2026-06-10 22:12:55 +02:00
provokateurin 405d250aef test: Add missing calls to the parent setUp method
Signed-off-by: provokateurin <kate@provokateurin.de>
2026-06-10 18:07:52 +02:00
Louis 250635a9a8 Merge pull request #61150 from nextcloud/carl/speedup-tests
Speedup tests execution
2026-06-10 17:23:13 +02:00
Louis Chmn 6bb9ad60f2 test(View): Setup users and groups once
Signed-off-by: Louis Chmn <louis@chmn.me>
2026-06-10 15:48:24 +02:00
Carl Schwan 8bff1b4968 perf(UserConfigTest): Don't recreate database between invocation
Signed-off-by: Carl Schwan <carlschwan@kde.org>
2026-06-10 15:48:24 +02:00
Louis Chmn 442777762d test(App): Setup users and groups once
Signed-off-by: Louis Chmn <louis@chmn.me>
2026-06-10 15:48:24 +02:00
Julien Veyssier 0bd607274c feat(task-streaming): fix tests
Signed-off-by: Julien Veyssier <julien-nc@posteo.net>
2026-06-10 14:52:56 +02:00
Carl Schwan 3b7ca63f43 perf(AppConfigIntegrationTest): Avoid creating too many times AppConfig
Reuse instance by merging some tests based on DataProviders

Signed-off-by: Carl Schwan <carlschwan@kde.org>
2026-06-10 12:17:08 +02:00
Carl Schwan 0fee41df7c perf: Test chunking with a lower amount of entries
Use a lower array_chunk values when running the code in the tests for
the comment manager.

Signed-off-by: Carl Schwan <carlschwan@kde.org>
2026-06-10 11:49:29 +02:00
Carl Schwan 84a8b7e50e perf(tests): Cache encryption result in UserConfigTest
So that we don't need to encrypt stuff all the time.

Signed-off-by: Carl Schwan <carlschwan@kde.org>
2026-06-10 11:22:59 +02:00
Carl Schwan 126df9c170 perf(tests): Don't encrypt the same value each time
We have a static class, so we can save the results accross the > 100
tests cases in this class.

Signed-off-by: Carl Schwan <carlschwan@kde.org>
2026-06-10 11:19:22 +02:00
Stephan Orbaugh 9fe944199b Merge pull request #60709 from nextcloud/test-speedup
Speedup share tests
2026-06-09 16:23:41 +02:00
Anna d45d1d6bff Merge pull request #60735 from nextcloud/fix/noid/crypto-decrypt-fallback-valueerror
fix(security): don't propagate ValueError from Crypto::decrypt() fallback
2026-06-09 15:14:44 +02:00