Commit graph

502 commits

Author SHA1 Message Date
Ferdinand Thiessen
4667634247
fix(theming): use IAppConfig for all ThemingDefaults
Fixes issues where values have the wrong type.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-10-28 14:58:17 +01:00
Thomas Citharel
b44f35a42a refactor(trashbin): get expiration class directly from Server::get
instead of going through Application container

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2025-10-23 23:20:10 +02:00
Thomas Citharel
9d6c5a81c0
refactor(dav): remove use of IAppContainer in favor of ContainerInterface
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2025-10-23 09:36:13 +02:00
Kate
ffbbdb2d04
Merge pull request #54953 from nextcloud/fix/noid/lighter-team-request 2025-10-14 07:56:14 +02:00
Carl Schwan
65f52c47b8
Merge pull request #55674 from nextcloud/carl/deprecated-dbal
Port away from deprecated Doctrine APIs
2025-10-13 15:10:15 +02:00
Maxence Lange
9ba3ce27cb
fix(team-api): get all teams details in a single request
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-10-13 14:21:15 +02:00
Carl Schwan
49d522717c refactor(dbal): Port away from remaining IQueryBuilder::execute calls
Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-10-13 13:44:15 +02:00
Carl Schwan
9095a36b94 refactor(dbal): Port away from getDatabasePlatform() instanceof pattern
Use getDatabaseProvider instead.

Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-10-13 13:44:08 +02:00
Louis Chemineau
e976a1323f chore: Register system_addressbook_exposed in lexicon
Signed-off-by: Louis Chmn <louis@chmn.me>
2025-10-10 19:02:41 +02:00
Carl Schwan
7a43bf26ca refactor(dbal): Migrate away from Type::getName
Instead use Type::lookupName

Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-10-10 16:13:09 +02:00
Carl Schwan
cb82a9ef04 refactor(preview): Cleanup a bit the public interface
* Remove old IProvider interface, it's been deprecated since 17.0.0 (8
  years)
* Add type hinting to the IPreview interface and mark it as consumeable
  only
* Remove unused arguments from GeneratorHelper

Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-10-09 17:41:13 +02:00
Côme Chilliet
48c2dd6279
Merge pull request #55517 from nextcloud/carl/cron-service
Some checks are pending
CodeQL Advanced / Analyze (actions) (push) Waiting to run
CodeQL Advanced / Analyze (javascript-typescript) (push) Waiting to run
Integration sqlite / changes (push) Waiting to run
Integration sqlite / integration-sqlite (master, 8.4, main, --tags ~@large files_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, 8.4, main, capabilities_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, 8.4, main, collaboration_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, 8.4, main, comments_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, 8.4, main, dav_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, 8.4, main, features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, 8.4, main, federation_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, 8.4, main, file_conversions) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, 8.4, main, filesdrop_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, 8.4, main, ldap_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, 8.4, main, openldap_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, 8.4, main, openldap_numerical_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, 8.4, main, remoteapi_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, 8.4, main, routing_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, 8.4, main, setup_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, 8.4, main, sharees_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, 8.4, main, sharing_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, 8.4, main, theming_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, 8.4, main, videoverification_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite-summary (push) Blocked by required conditions
Psalm static code analysis / static-code-analysis (push) Waiting to run
Psalm static code analysis / static-code-analysis-security (push) Waiting to run
Psalm static code analysis / static-code-analysis-ocp (push) Waiting to run
Psalm static code analysis / static-code-analysis-ncu (push) Waiting to run
refactor: Move cron setup to a service
2025-10-09 09:52:34 +02:00
Benjamin Gaussorgues
3aa0c23e40
Merge pull request #54543 from nextcloud/preview-db-rework 2025-10-08 16:39:23 +02:00
Kate
fcbb8be904
Merge pull request #55514 from nextcloud/carl/more-old-execute 2025-10-08 10:30:46 +02:00
Daniel
db3e845d19
Merge pull request #55557 from nextcloud/refactor/use-iemailaddressvalidator
refactor: use IEmailValidator.isValid instead of IMailer.validateEmailAddress
2025-10-07 19:15:32 +02:00
Côme Chilliet
e739898cc7
Merge pull request #55400 from nextcloud/carl/remove-legacy-search-provider
refactor: Remove legacy search provider
2025-10-07 16:51:12 +02:00
Carl Schwan
f450cda3aa chore: Explicitely mark \OC\Files\View as internal
It's in OC and should not be used at all. Marking it as internal will
at least prevent new code to use it.

Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-10-06 15:49:55 +02:00
Carl Schwan
9d7fbb1b86 refactor: Move cron setup to a service
This will allow in the future the following things:

- Create unit tests for it
- Make cron.php a occ command
- Make webcron a proper controller

Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-10-06 15:28:43 +02:00
Carl Schwan
bfc7d5dd9f feat(preview): Implement scanning for previews
This work similarly to the move preview job to migrate the previews to
the new DB table and also reuse some code.

So when we are finding files in appdata/preview, try adding them to the
oc_previews table and delete them from the oc_filecache table.

Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-10-06 13:37:15 +02:00
Carl Schwan
324b54b863 refactor(preview): Cleanup the implementation of the new preview backend
Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-10-06 13:37:15 +02:00
Carl Schwan
bba9667882 perf(preview): Adapt BackgroundCleanupJob to new previews table
Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-10-06 13:37:15 +02:00
Andy Scherzinger
40286b2fe2
Merge pull request #55481 from nextcloud/carl/fix-psalm-easy
refactor: Fix some easy psalm issues in Files
2025-10-06 12:11:02 +02:00
Joas Schilling
6dec53a6bc
Merge pull request #55472 from nextcloud/carl/fix-encryption-commands
refactor: fix psalm issues from encryption commands
2025-10-06 10:47:10 +02:00
Côme Chilliet
38d455800c
Merge pull request #55482 from nextcloud/carl/fix-search
refactor: Port away from search
2025-10-06 10:45:52 +02:00
Daniel Kesselberg
83a691709c
refactor: use IEmailValidator.isValid instead of IMailer.validateEmailAddress
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2025-10-04 21:54:22 +02:00
Carl Schwan
9e848551be refactor: Port away from more IQueryBuilder::execute
Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-10-02 14:40:28 +02:00
Carl Schwan
34cd91cc86 refactor: Fix some easy psalm issues in Files
Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-10-02 13:34:47 +02:00
Carl Schwan
ce02a5b27c refactor: Port away from search
Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-10-01 16:32:22 +02:00
Kate
7e8926011d
Merge pull request #55463 from nextcloud/fix/user-group-manager-return-type 2025-10-01 16:30:23 +02:00
Carl Schwan
a3442be054 refactor: fix psalm issues from encryption commands
Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-10-01 16:07:41 +02:00
Carl Schwan
aa1f5312a5 refactor: Remove legacy search provider
Last usage was in the comment app

Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-10-01 13:36:25 +02:00
provokateurin
51a493cbe7
fix(IGroupManager): Use correct return type for search method
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-10-01 13:14:05 +02:00
provokateurin
fb4348e3bc
fix(IUserManager): Fix deprecation of search method
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-10-01 12:08:58 +02:00
Côme Chilliet
d36fc65c75
Merge pull request #55396 from nextcloud/carl/dashboard-appconfig
refactor: Port dashboard app to IAppConfig
2025-10-01 11:10:59 +02:00
Ferdinand Thiessen
31571476d3 refactor(files_external): migrate Ajax with OC_JSON to proper controller
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-09-30 20:19:21 +02:00
Côme Chilliet
c6d148344a
chore: Fix the last psalm issues in lib/private/Template
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-09-29 12:32:26 +02:00
Carl Schwan
76736cf9d7 refactor: Port dashboard app to IAppConfig
Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-09-29 10:22:46 +02:00
provokateurin
6a12fbc4f3
refactor: Run rector
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-09-27 18:52:58 +02:00
Joas Schilling
00f589e765
Merge pull request #55140 from nextcloud/carl/cleanup-workflowengine-app
refactor(psalm): Fix most issues with the workflowengine
2025-09-22 11:51:13 +02:00
Carl Schwan
6154bfa823 chore(psalm): Fix most issues with the workflowengine
This found a real bug where we were catching an Doctrine exception
instead of a OCP\DB\Exception. This will be backported separately.

Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-09-17 09:57:10 +02:00
Kate
ddc272402d
Merge pull request #55135 from nextcloud/chore/remove-oc-cappedmemorycache 2025-09-16 14:38:48 +02:00
Carl Schwan
8555f98e32 refactor: Port External\Manager to the query builder
Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-09-16 11:36:12 +02:00
provokateurin
b1a398afb0
chore: Remove unused \OC\Cache\CappedMemoryCache
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-09-16 10:08:19 +02:00
Carl Schwan
0e7d5dce1c refactor: Port away from changeColumn
Replace by the drop-in replacement modifyColumn

Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-09-12 18:05:19 +02:00
Ferdinand Thiessen
5003a35a37
chore(deps): update doctrine/dbal to v3.10.2
* [ ] https://github.com/nextcloud/3rdparty/pull/2134
* Fixes the problem with MariaDB 11 and `vector` keyword, see https://github.com/nextcloud/recognize/issues/1352

| Production Changes | From  | To      | Compare                                                        |
|--------------------|-------|---------|----------------------------------------------------------------|
| doctrine/cache     | 2.2.0 | REMOVED |                                                                |
| doctrine/dbal      | 3.9.4 | 3.10.2  | [...](https://github.com/doctrine/dbal/compare/3.9.4...3.10.2) |

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-09-10 11:11:19 +02:00
Louis Chemineau
9b5d11845a
feat(files_trashbin): Refactor expire background job to support parallel run
- Follow-up of #51600

The original PR introduced the possibility to continue an `ExpireTrash` job by saving the offset. This was to prevent having to start over the whole user list when the job crashed or was killed.

But on big instances, one process is not enough to go through all the users in a timely manner. Supporting parallel run allows covering more ground faster.

This PR introduced this possibility. We are now storing the offset right away to allow another parallel job to pick up the task at that point. We are arbitrarily cutting the user list in chunk of 10 to not drastically overflow the 30 minutes time limit.

Signed-off-by: Louis Chemineau <louis@chmn.me>
2025-09-08 12:33:25 +02:00
Carl Schwan
b303185126 refactor(CustomPropertiesBackend): Modernize class
- Use query builder
- Add chunking
- Add type hinting where we can
- Use match expression

Signed-off-by: Carl Schwan <carl.schwan@nextclound.com>
Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-09-03 14:28:26 +02:00
Daniel Kesselberg
a37ed05b8f
fix(comments): use showFile route to reference files with a matching comment
The files.view.index route with dir and scrollto is deprecated and
opening the actual does not work anymore.

Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2025-09-03 10:58:52 +02:00
Daniel Kesselberg
e80d89b7a1
Revert "fix(comments): use showFile route to reference files with a matching comment"
This reverts commit 317cd25497.
2025-09-02 21:34:49 +02:00
Daniel Kesselberg
317cd25497
fix(comments): use showFile route to reference files with a matching comment
The files.view.index route with dir and scrollto is deprecated and
opening the actual does not work anymore.

Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2025-09-02 21:34:03 +02:00