Benjamin Gaussorgues
2b7415ef4d
Merge pull request #60960 from nextcloud/carl/querybuilder-magic-number
...
CodeQL Advanced / Analyze (javascript-typescript) (push) Waiting to run
Integration sqlite / changes (push) Waiting to run
Integration sqlite / integration-sqlite (master, main, 8.4, main, --tags ~@large files_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, capabilities_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, collaboration_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, comments_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, dav_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, federation_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, file_conversions) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, files_reminders) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, filesdrop_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, guests_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, ldap_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, openldap_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, openldap_numerical_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, routing_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, setup_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, sharees_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, sharing_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, theming_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (master, main, 8.4, main, videoverification_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite-summary (push) Blocked by required conditions
Psalm static code analysis / changes (push) Waiting to run
Psalm static code analysis / static-code-analysis (push) Blocked by required conditions
Psalm static code analysis / static-code-analysis-security (push) Blocked by required conditions
Psalm static code analysis / static-code-analysis-ocp (push) Blocked by required conditions
Psalm static code analysis / static-code-analysis-ncu (push) Blocked by required conditions
Psalm static code analysis / static-code-analysis-strict (push) Blocked by required conditions
Psalm static code analysis / static-code-analysis-summary (push) Blocked by required conditions
refactor: Use new IQueryBuilder::MAX_IN_PARAMETERS
2026-06-10 23:09:30 +02:00
Robin Appelman
6ca3556173
feat: delay fetching the display name of a share recipient untill we need it
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-06-09 12:01:40 +02:00
Carl Schwan
994565fec7
refactor: Use new IQueryBuilder::MAX_IN_PARAMETERS
...
Signed-off-by: Carl Schwan <carlschwan@kde.org>
2026-06-03 13:45:29 +02:00
Carl Schwan
b7ee8e7545
Merge pull request #59813 from nextcloud/fix/noid/fix-owncloud-group-share-rename
...
fix(sharing): set STATUS_ACCEPTED when creating USERGROUP subshare on…
2026-06-02 11:14:13 +02:00
Côme Chilliet
1ab09ec753
chore: Apply new coding standard to all files
...
The diff can be checked using: git diff --ignore-all-space --ignore-blank-lines
To see only the changes not related to blank lines.
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2026-06-01 13:46:39 +02:00
Anna Larch
6220ae9175
fix(sharing): restore STATUS_ACCEPTED for OC-migrated group share subshares
...
When an ownCloud-migrated group share (which has no per-user USERGROUP
subshare) is renamed for the first time, DefaultShareProvider::move()
inserted a new USERGROUP row without setting `accepted`. The column
defaulted to 0 (STATUS_PENDING), causing MountProvider to skip the
share on the next login — the shared file disappeared for the recipient.
Fix: set accepted = STATUS_ACCEPTED explicitly on the INSERT in
DefaultShareProvider::move() for the TYPE_GROUP branch.
Secondary fix: SharedMount::moveMount() silently returned true when
updateFileTarget() threw (e.g. group no longer exists on an OC-migrated
instance). Set $result = false in the catch block so View::rename()
propagates the failure instead of silently corrupting VFS state.
An opt-in occ command (sharing:fix-owncloud-group-shares) with --dry-run
support is included to repair existing broken instances. It targets only
TYPE_USERGROUP subshares with accepted=STATUS_PENDING and permissions!=0
(shares that were accepted but broken by the missing column default),
leaving explicitly declined shares (permissions=0) untouched.
AI-Assisted-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Signed-off-by: Anna Larch <anna@nextcloud.com>
2026-05-26 17:28:39 +02:00
Carl Schwan
d470ad108f
fix: use correct variable for order by
...
Co-authored-by: Joas Schilling <213943+nickvergessen@users.noreply.github.com>
Signed-off-by: Carl Schwan <carl@carlschwan.eu>
2026-05-07 19:16:46 +02:00
Carl Schwan
9ac556cdf5
perf(share): Remove useless order by id
...
This should improve a bit the performance in some particular cases
Signed-off-by: Carl Schwan <carlschwan@kde.org>
2026-05-07 19:16:45 +02:00
Ferdinand Thiessen
e0ba4d71b6
chore: add missing Override attribute to OC
...
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-04-28 21:29:27 +02:00
Carl Schwan
0676fba514
perf(sharing): Avoid loading all shares from all users when unsharing
...
First check which users have a shares and for which providers and then
only load these shares.
Avoid doing at most 5 SQL queries for each users a share was shared with if
there are no shares.
Signed-off-by: Carl Schwan <carlschwan@kde.org>
2026-02-25 17:14:15 +01:00
Salvatore Martire
ed18c44374
fix: remove user part only at the beginning of path
...
Signed-off-by: Salvatore Martire <4652631+salmart-dev@users.noreply.github.com>
2026-02-20 16:35:37 +01:00
Carl Schwan
7b6078875b
refactor: Run rector on lib/private
...
Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2026-02-06 13:50:18 +01:00
Louis Chmn
79c07d38aa
fix(files_sharing): Move path filtering to group share resolution
...
Previously, this was preventing users without a specific USERGROUP entry to see GROUP shares.
Signed-off-by: Louis Chmn <louis@chmn.me>
Signed-off-by: Salvatore Martire <4652631+salmart-dev@users.noreply.github.com>
2026-02-04 16:53:10 +01:00
Louis Chmn
b6e90acdb6
fix(DefaultSHareProvider): Specify join alias when accessing columns
...
Signed-off-by: Louis Chmn <louis@chmn.me>
2026-01-16 08:32:14 +01:00
Louis Chmn
bba8e90c62
fix(files_sharing): Unify getSharedWithByPath and getSharedWith
...
Follow-up of https://github.com/nextcloud/server/pull/57285
This ensure that the behavior is the same and reduce code duplication.
Salvatore's version seems to be more optimized, but I prefer those change to be done separately and for both methods.
Signed-off-by: Louis Chmn <louis@chmn.me>
2026-01-15 10:22:44 +01:00
Salvatore Martire
a449af6460
feat: introduce API for partial share providers
...
Adds support for retrieval of shares by path
Signed-off-by: Salvatore Martire <4652631+salmart-dev@users.noreply.github.com>
2025-12-30 16:43:09 +01:00
Robin Appelman
bbabf50984
feat: add api to get users for share
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-12-22 15:34:23 +01:00
Carl Schwan
a011cb7780
refactor: Rename some variables in external share's manager
...
Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-12-17 10:14:40 +01:00
Daniel
b8ad6d091a
Merge pull request #53945 from nextcloud/chore/share-constants
...
chore(OC\Share\Constants): Remove unused SHARE_TYPE_* constants
2025-07-29 13:31:42 +02:00
Kate
49618b30a7
Merge pull request #53946 from nextcloud/chore/remove-hierarchical-shares
2025-07-29 13:26:03 +02:00
provokateurin
746e5917c7
fix(IShare): Add missing getParent and setParent methods
...
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-07-29 11:27:04 +02:00
Kate
89d659ca17
Merge pull request #51602 from nextcloud/fix/fix-default-share-folder-for-group-shares
2025-07-29 11:12:58 +02:00
provokateurin
3c7fce39aa
chore(OC\Share\Constants): Remove unused SHARE_TYPE_* constants
...
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-07-29 10:39:33 +02:00
provokateurin
665a38573c
fix(IShareProvider): Add missing getChildren method to the interface
...
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-07-29 10:26:33 +02:00
provokateurin
5bd626bd40
chore: Fix all method calls with too many arguments
...
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-07-22 12:34:49 +02:00
Côme Chilliet
12ceeacb0e
fix: Use default share folder of the user on share accept
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-07-08 13:24:37 +02:00
provokateurin
ae16a28758
perf(Share20): Add interface to query all shares in a folder without filtering by user
...
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-05-08 15:29:40 +02:00
Marcel Klehr
b464469bc1
perf(sharing): Use oc_share.{item_type, share_type} IN instead of OR equals
...
to improve performance by using the db index
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2025-03-25 09:42:06 +01:00
Louis Chemineau
b6c7c28585
fix: Exclude non accepted shares when computing access list
...
Signed-off-by: Louis Chemineau <louis@chmn.me>
2025-01-30 09:57:14 +01:00
Git'Fellow
20215fbd09
fix(shares): Remove noisy text from emails
...
Signed-off-by: Git'Fellow <12234510+solracsf@users.noreply.github.com>
2024-12-16 15:16:33 +01:00
Git'Fellow
f86fb0fee2
fix(share): Don't print twice the same information
...
Signed-off-by: Git'Fellow <12234510+solracsf@users.noreply.github.com>
2024-12-10 18:27:31 +01:00
provokateurin
a978e0a806
fix(Share20\DefaultShareProvider): Return link shares in getSharesByPath()
...
Signed-off-by: provokateurin <kate@provokateurin.de>
2024-11-25 10:27:31 +01:00
provokateurin
762b09049b
fix(Share20\DefaultShareProvider): Sort getSharesByPath() results
...
Signed-off-by: provokateurin <kate@provokateurin.de>
2024-11-25 10:27:31 +01:00
Ferdinand Thiessen
2ef74b9860
Merge pull request #47329 from nextcloud/feat/add-datetime-qbmapper-support
...
feat(AppFramework): Add full support for date / time / datetime columns
2024-10-18 19:05:08 +02:00
Git'Fellow
a1681b0756
chore(db): Apply query prepared statements
...
Fix: psalm
fix: bad file
fix: bug
chore: add batch
chore: add batch
chore: add batch
fix: psalm
2024-10-17 20:30:47 +02:00
Ferdinand Thiessen
db94e10af0
fix: Prevent breaking change in IQueryBuilder
...
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-10-17 18:31:44 +02:00
Ferdinand Thiessen
e314d52118
fix: Adjust parameter type usage and add SQLite support
...
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-10-17 18:31:44 +02:00
Ferdinand Thiessen
2e4d3e4e75
fix(share): Return empty string if no label is set
...
* Resolves: https://github.com/nextcloud/server/issues/48629
While the database supports NULL, the typing has always said it only returns *string*.
So to not break any apps that might trust the typings we should return `''` if the database is set to `NULL`.
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-10-14 15:15:51 +02:00
Stefan Cherniakov
457eaee2b3
fix(files_sharing): Add missing check for null & use bool instead of int for reminder_sent field
...
Signed-off-by: Stefan Cherniakov <luka-sama@pm.me>
2024-09-03 17:23:31 +02:00
Stefan Cherniakov
d633b9bce6
fix(files_sharing): Make share reminders more stable & fix issues
...
Signed-off-by: Stefan Cherniakov <luka-sama@pm.me>
2024-09-03 13:37:17 +02:00
Robin Appelman
cc091b150e
fix: fix share cleanup for deleted groups with sharding
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2024-08-28 10:21:20 +02:00
Robin Appelman
f5b3486744
feat: add option to automatically partition queries by specific tables
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2024-08-28 10:18:53 +02:00
Daniel Kesselberg
af6de04e9e
style: update codestyle for coding-standard 1.2.3
...
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2024-08-25 19:34:58 +02:00
Côme Chilliet
e23325f047
fix: Remove shares only if there are no more common groups between users
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2024-08-12 15:20:21 +02:00
Louis Chemineau
5559beb28c
fix(files_sharing): Delete user shares if needed when user is removed from a group
...
Signed-off-by: Louis Chemineau <louis@chmn.me>
2024-08-12 14:41:19 +02:00
Ferdinand Thiessen
3d136e4466
fix: Add acceptShare as an interface
...
It was commented out because at that time no other share provider
supported the `acceptShare` method. Today it is the same no other provider
supports it, but we should make it discoverable by adding it to the public API
as an additional interface.
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-07-30 15:25:51 +02:00
skjnldsv
967b3848e0
fix(files_sharing): phpunit & openapi fixes
...
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2024-07-12 20:14:30 +02:00
skjnldsv
30f9ef414e
fix: psalm, cs, autoloader and lint
...
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2024-07-12 20:14:30 +02:00
skjnldsv
75ca4944c9
feat(files_sharing): allow mixed values in share attributes and allow storing email arrays
...
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2024-07-12 20:14:30 +02:00
skjnldsv
c253112cf7
chore(files_sharing): refactor mail handling
...
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2024-07-12 20:14:30 +02:00