Commit Graph

1799 Commits (16c26101d0392268ceeade2a144306c43bf1b658)

Author SHA1 Message Date
Daniel Calviño Sánchez 16c26101d0 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-12 13:22:25 +07:00
Daniel Calviño Sánchez ecf32012f4 test: Add integration tests to get collaborators without sharebymail app
The "sharebymail" app is enabled by default, so it needs to be enabled
once the scenario ends as other scenarios could expect that the app is
enabled. To solve that now a special step is added that records the
enabled state of the given app and restores it once the scenario ends.

This step only restores the state of already installed apps. If an app
is installed during the test it will not be neither disabled nor
uninstalled after the test ends. Therefore, at least for now, it is
necessary to explicitly call the step to record the app to be restored,
rather than automatically keeping track of the changes in the enabled
state of the apps during the scenario.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2025-11-12 11:16:16 +07:00
Daniel Calviño Sánchez 8195702b0e test: Extract function to get apps with certain enabled state
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2025-11-12 11:16:16 +07:00
Daniel Calviño Sánchez 23a6e7aa4f test: Add tests to get user autocompletes similar to the email ones
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2025-11-12 11:16:16 +07:00
Daniel Calviño Sánchez e28e1e2ea6 test: Extend tests to check the same cases with and without full match
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2025-11-12 11:16:16 +07:00
Daniel Calviño Sánchez d726f51609 test: Add integration tests for getting user and mail collaborators
The OCS endpoint expects either an int or an array for "shareType".
However, when using "getRowsHash()" only a single key is taken into
account, so instead of:
  | shareType[] | 0 |
  | shareType[] | 4 |
the share types are provided in a single row like:
  | shareTypes | 0 4 |
and then converted to "shareType[]=0&shareType[]=4" when sending the
request.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2025-11-12 11:16:16 +07:00
Daniel Calviño Sánchez e126a84ff0 test: Add integration tests for getting collaborators by mail addresses
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2025-11-12 11:16:16 +07:00
Daniel Calviño Sánchez ccfc5edd54 test: Fix getting returned sharees when there are several results
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2025-11-12 11:16:16 +07:00
Daniel Calviño Sánchez e0fa134fcd test: Check unique display name if provided in the response
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2025-11-12 11:16:16 +07:00
Joas Schilling 344f84c1d9
fix(jobs): Limit command jobs to known cases
Signed-off-by: Joas Schilling <coding@schilljs.com>
2025-11-05 11:05:36 +07:00
nextcloud-command 634fe1ea04 fix(security): Update CA certificate bundle
Signed-off-by: GitHub <noreply@github.com>
2025-11-05 02:39:07 +07:00
Ferdinand Thiessen a6721c95b6 fix(theming): use IAppConfig for all ThemingDefaults
Fixes issues where values have the wrong type.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-11-01 17:14:02 +07:00
Arthur Schiwon 6ba452b426 fix(LDAP): properly disable are require TLS certificate verification
- the old approach lead connection issues, as ldap_set_option was called
  too late. Specifically it needs to be called before ldap_connect and set
  globally!
- The old approach also connected it to the ldapTLS configuration, which
  has a misleading naming. It indicates StartTLS usage only, not plain TLS
  connections.

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2025-10-14 07:42:25 +07:00
Louis Chemineau dd1ad9abeb fix(contacts): Do not expose SAB in `/contactsmenu`
When hitting the `/contactsmenu/contacts` endpoint with the `dav.system_addressbook_exposed` config switch set to `"no"`, the system address book content is still listed in the response.

This ensure that we do not expose unexpectedly the system address book.

Signed-off-by: Louis Chemineau <louis@chmn.me>
2025-10-11 11:12:51 +07:00
Joas Schilling 8d99fa3d7a
fix(psalm): Update baseline
Signed-off-by: Joas Schilling <coding@schilljs.com>
2025-10-07 13:50:59 +07:00
provokateurin 5d1d9482f8
fix(IUserManager): Fix deprecation of search method
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-10-02 09:21:42 +07:00
Kate 71be18dac4
Merge pull request #55303 from nextcloud/backport/55134/stable32 2025-09-27 16:35:07 +07:00
dependabot[bot] 2c78de960c
build(deps-dev): bump phpunit/phpunit in /build/integration
Bumps [phpunit/phpunit](https://github.com/sebastianbergmann/phpunit) from 9.6.27 to 9.6.29.
- [Release notes](https://github.com/sebastianbergmann/phpunit/releases)
- [Changelog](https://github.com/sebastianbergmann/phpunit/blob/9.6.29/ChangeLog-9.6.md)
- [Commits](https://github.com/sebastianbergmann/phpunit/compare/9.6.27...9.6.29)

---
updated-dependencies:
- dependency-name: phpunit/phpunit
  dependency-version: 9.6.29
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-27 13:20:44 +07:00
provokateurin 4c9b04ed26
fix(core): Stop abusing the cache for avatar upload
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-09-26 19:11:30 +07:00
dependabot[bot] 1b9968da99
build(deps-dev): bump phpunit/phpunit in /build/integration
Bumps [phpunit/phpunit](https://github.com/sebastianbergmann/phpunit) from 9.6.26 to 9.6.27.
- [Release notes](https://github.com/sebastianbergmann/phpunit/releases)
- [Changelog](https://github.com/sebastianbergmann/phpunit/blob/9.6.27/ChangeLog-9.6.md)
- [Commits](https://github.com/sebastianbergmann/phpunit/compare/9.6.26...9.6.27)

---
updated-dependencies:
- dependency-name: phpunit/phpunit
  dependency-version: 9.6.27
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-20 01:19:20 +07:00
Hamza a3fbc67648 fix: make sure default contact exists by default
Signed-off-by: Hamza <hamzamahjoubi221@gmail.com>
Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
2025-09-17 10:01:19 +07:00
dependabot[bot] 3f7003890b
build(deps-dev): bump phpunit/phpunit in /build/integration
Bumps [phpunit/phpunit](https://github.com/sebastianbergmann/phpunit) from 9.6.25 to 9.6.26.
- [Release notes](https://github.com/sebastianbergmann/phpunit/releases)
- [Changelog](https://github.com/sebastianbergmann/phpunit/blob/9.6.26/ChangeLog-9.6.md)
- [Commits](https://github.com/sebastianbergmann/phpunit/compare/9.6.25...9.6.26)

---
updated-dependencies:
- dependency-name: phpunit/phpunit
  dependency-version: 9.6.26
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-13 01:15:28 +07:00
Côme Chilliet de8777aae4 feat(encryption): Add integration tests for occ commands
Add tests for encrypt-all and decrypt-all.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-09-11 21:18:37 +07:00
Andy Scherzinger fe65c757d3
Merge pull request #54960 from nextcloud/chore/update-stable32-dbal
[stable32] chore(deps): update `doctrine/dbal` to v3.10.2
2025-09-10 14:08:31 +07:00
Ferdinand Thiessen b9699fc4c7
chore(deps): update `doctrine/dbal` to v3.10.2
* 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 12:06:05 +07:00
nextcloud-command adb7151b0b fix(security): Update CA certificate bundle
Signed-off-by: GitHub <noreply@github.com>
2025-09-10 02:32:16 +07:00
Andy Scherzinger 11d7762d0d
Merge pull request #54872 from nextcloud/dependabot/composer/build/integration/stable32/phpunit/phpunit-9.6.25
[stable32] build(deps-dev): bump phpunit/phpunit from 9.6.21 to 9.6.25 in /build/integration
2025-09-09 13:14:23 +07:00
Andy Scherzinger ba55d7e867
Merge pull request #54967 from nextcloud/backport/52825/stable32
[stable32] feat(files_trashbin): Refactor expire background job to support parallel run
2025-09-09 13:13:30 +07:00
Louis Chemineau a90299e197 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-09 08:26:57 +07:00
dependabot[bot] c3c3f8b56a build(deps-dev): bump phpunit/phpunit in /build/integration
Bumps [phpunit/phpunit](https://github.com/sebastianbergmann/phpunit) from 9.6.21 to 9.6.25.
- [Release notes](https://github.com/sebastianbergmann/phpunit/releases)
- [Changelog](https://github.com/sebastianbergmann/phpunit/blob/9.6.25/ChangeLog-9.6.md)
- [Commits](https://github.com/sebastianbergmann/phpunit/compare/9.6.21...9.6.25)

---
updated-dependencies:
- dependency-name: phpunit/phpunit
  dependency-version: 9.6.25
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-09 09:57:55 +07:00
dependabot[bot] a6c6507197 build(deps-dev): bump symfony/event-dispatcher in /build/integration
Bumps [symfony/event-dispatcher](https://github.com/symfony/event-dispatcher) from 6.4.13 to 6.4.25.
- [Release notes](https://github.com/symfony/event-dispatcher/releases)
- [Changelog](https://github.com/symfony/event-dispatcher/blob/7.3/CHANGELOG.md)
- [Commits](https://github.com/symfony/event-dispatcher/compare/v6.4.13...v6.4.25)

---
updated-dependencies:
- dependency-name: symfony/event-dispatcher
  dependency-version: 6.4.25
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-09 09:57:36 +07:00
Andy Scherzinger 1c972dd81d
Merge pull request #54861 from nextcloud/backport/54842/stable32
[stable32] feat(migration-attributes): add DataCleansing
2025-09-09 09:15:43 +07:00
Joas Schilling 82aecde85d
build: Adjust checkout branch script
Signed-off-by: Joas Schilling <coding@schilljs.com>
2025-09-04 11:02:01 +07:00
Maxence Lange fa1680c56a feat(since-checker): check statement for /lib/public/migration/attributes
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
2025-09-04 09:02:00 +07: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 +07: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 +07: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 +07:00
Ferdinand Thiessen 9ba4150a18
fix(dav): ensure moving or copying a file is possible
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-09-02 16:23:47 +07:00
Carl Schwan 76dc41ea18 fix(psalm): Fix ParamNameMismatch with IRepairStep::run
Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-08-29 14:31:46 +07:00
Joas Schilling 3df6d90a4c
Revert "perf(base): Stop setting up the FS for every basic auth request" 2025-08-28 17:11:31 +07:00
Richard Steinmetz 40117dced3
Merge pull request #54426 from nextcloud/perf/prevent-fetching-account
perf: prevent fetching a principal's user account if the data is not needed
2025-08-28 16:59:38 +07:00
Richard Steinmetz 5b254ea39a
perf: prevent fetching a principal's user account if the data is not needed
Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
2025-08-28 14:13:29 +07:00
John Molakvoæ d785bcdc6e
Merge pull request #53920 from nextcloud/revert-53918-revert-53141-perf/files/setup-fs-basic-auth-request 2025-08-28 14:12:57 +07:00
Kate a1709f576e
Merge pull request #54627 from nextcloud/fix/ocs/accept-header 2025-08-28 14:03:23 +07:00
provokateurin e38dfef0dc chore: Remove unused \OC\Cache\CappedMemoryCache
Signed-off-by: provokateurin <kate@provokateurin.de>
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2025-08-28 09:32:51 +07:00
provokateurin 5057d5fcc5 fix(core): Stop abusing the cache for avatar upload
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-08-28 09:28:11 +07:00
provokateurin d5c15d4d2f test(integration): Check ocs share permission for correct folder
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-08-28 09:28:10 +07:00
dependabot[bot] 025e081530
build(deps-dev): bump guzzlehttp/guzzle in /build/integration
Bumps [guzzlehttp/guzzle](https://github.com/guzzle/guzzle) from 7.9.3 to 7.10.0.
- [Release notes](https://github.com/guzzle/guzzle/releases)
- [Changelog](https://github.com/guzzle/guzzle/blob/7.10/CHANGELOG.md)
- [Commits](https://github.com/guzzle/guzzle/compare/7.9.3...7.10.0)

---
updated-dependencies:
- dependency-name: guzzlehttp/guzzle
  dependency-version: 7.10.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-28 08:51:04 +07:00
Richard Steinmetz b7dc720848
feat: calendar federation
Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
2025-08-27 17:14:15 +07:00
provokateurin aab11d35d3
fix(OCS): Add IRequest::getFormat to determine the response Content-Type the same way everywhere
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-08-26 09:50:03 +07:00