Jan-Philipp Litza
0f4d6b8027
fix(files_external): ignore unsatisfied optional dependencies
...
Signed-off-by: Jan-Philipp Litza <janphilipp@litza.de>
2026-02-17 18:03:56 +01:00
Benjamin Gaussorgues
f2907f133c
Merge pull request #58282 from nextcloud/carl/refactor-migration
...
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, files_reminders) (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
Psalm static code analysis / static-code-analysis-strict (push) Waiting to run
refactor(psalm): Modernize migration doc
2026-02-17 14:58:03 +01:00
Git'Fellow
b1e71ae646
fix(sftp): Handle empty port parameter to allow host-defined ports
...
Signed-off-by: Git'Fellow <12234510+solracsf@users.noreply.github.com>
2026-02-14 12:29:38 +01:00
Carl Schwan
f6c839d125
refactor(psalm): Modernize migration doc
...
And remove all the duplication in the subclasses
Signed-off-by: Carl Schwan <carlschwan@kde.org>
2026-02-12 11:25:55 +01:00
provokateurin
f12cecb684
feat(rector): Enable SafeDeclareStrictTypesRector
...
Signed-off-by: provokateurin <kate@provokateurin.de>
2026-02-09 10:59:31 +01:00
Carl Schwan
3979c493f9
refactor: Apply second batch of comments
...
Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2026-02-06 13:52:51 +01:00
Andy Scherzinger
08e1d9b83e
Merge pull request #58025 from nextcloud/carl/refactor-share-mountprovider
...
refactor(mount-provider): Refactor share mount provider
2026-02-05 11:50:40 +01:00
Carl Schwan
8f81b91733
refactor(mount-provider): Refactor share mount provider
...
- Add more precise types
- Remove dead code
Signed-off-by: Carl Schwan <carlschwan@kde.org>
2026-02-04 12:46:14 +01:00
Robin Appelman
522663b9f0
fix: partial external storage config matching non-child mounts
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-02-03 16:50:57 +01:00
Robin Appelman
b79af98a31
fix: fix partial external storage provider not finding root mount
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-02-03 16:16:22 +01:00
Andy Scherzinger
1bdc27202a
Merge pull request #57924 from nextcloud/carl/fix-external-partialmountprovider
...
fix(external-storage): Rtrim trailing slash at the end
2026-02-03 15:57:27 +01:00
pac0san
e48f871bd0
fix(files_external): Respect explicit port configuration
...
It allows the use of the alternative SFTP port defined in the GUI (external storage), instead of the default port (22).
Signed-off-by: pac0san <7056343+pac0san@users.noreply.github.com>
Signed-off-by: provokateurin <kate@provokateurin.de>
2026-02-02 11:27:42 +01:00
Carl Schwan
761a6979a7
fix(external-storage): Rtrim trailing slash at the end
...
Otherwise we don't have any matches when $forChildren is false
Signed-off-by: Carl Schwan <carlschwan@kde.org>
2026-01-30 15:50:19 +01:00
Carl Schwan
916ce3f8ec
feat(external-storage): Implement IPartialMountPoint
...
Signed-off-by: Carl Schwan <carlschwan@kde.org>
2026-01-28 17:09:22 +01:00
Carl Schwan
4c79c2faff
Merge pull request #57591 from nextcloud/carl/query-exception
...
refactor(QueryException): Remove most usage of QueryException
2026-01-20 15:59:56 +01:00
Carl Schwan
11cf69d8ba
fix(psalm): Fix static analysis issues in apps/*/tests
...
There are still 1200 more to fix before we can enable static analysis
for the tests.
Signed-off-by: Carl Schwan <carlschwan@kde.org>
2026-01-16 12:00:51 +01:00
Carl Schwan
9a8d45d81f
refactor(QueryException): Remove most usage of QueryException
...
This is preparation to move QueryException from OCP to OC as part of
Nextcloud 34.
Signed-off-by: Carl Schwan <carlschwan@kde.org>
2026-01-16 11:55:06 +01:00
Robin Appelman
9fde2523e6
Merge pull request #57493 from nextcloud/smb-invalid-arg-unavailable
...
fix: handle InvalidArumentException as availability failure in smb->getFileInfo
2026-01-14 12:00:03 +01:00
Robin Appelman
ae74dbef2b
Merge pull request #56499 from nextcloud/authoritative-mount-provider-files_external
...
Add api for authoritative mount providers and implement it for files_external
2026-01-13 16:36:33 +01:00
Ferdinand Thiessen
0e22ae1efe
refactor(files_external): migrate public key auth to Vue 3
...
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-01-13 01:30:37 +00:00
Ferdinand Thiessen
5ed7c4fd97
fix(files_external): adjust settings
...
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-01-13 01:30:37 +00:00
Ferdinand Thiessen
545c72becb
chore: remove non working and legacy OAuth2 auth schema
...
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-01-13 01:30:37 +00:00
Ferdinand Thiessen
e1133ec926
feat(files_external): Migrate settings to Vue
...
Template parameters are migrated to initial state, common state between admin and user settings is shared in the CommonSettingsTrait.
The template is cleaned and replaced with only a stub for the Vue mount.
Code only used for the frontend of the settings is moved from the MountConfig to the CommonSettingsTrait (the missing dependency messages).
On the frontend a wrapper view is created that currently holds the global credentials settings and the external storages settings.
- The global credentials sections is now a stand-alone sections - fully implemented.
- The external storages section holds the table + user config + warnings on missing dependencies
The legacy UI is temporarly renamed but will be removed in a following commit.
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-01-13 01:30:37 +00:00
Ferdinand Thiessen
d4674060dc
fix(files_external): return correct type for new user defined storages
...
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-01-13 01:30:37 +00:00
Ferdinand Thiessen
38ed0a8283
fix: hard type controllers where the type is required to match
...
Prevent HTTP 500 errors where a 400 would be the correct response
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-01-13 01:30:37 +00:00
Ferdinand Thiessen
4c8b9deca0
feat(files_external): Move script loading to CommonSettingsTrait to reduce duplicated code between admin and user settings
...
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-01-13 01:30:37 +00:00
Robin Appelman
4dcd4223de
fix: make smb auth failure on forbidden exception more reliable
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-01-12 15:23:57 +01:00
Robin Appelman
43727cb72c
fix: handle InvalidArumentException as availability failure in smb->getFileInfo
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-01-12 15:23:57 +01:00
Robin Appelman
272d6141ca
fix: improve handling updated storages
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-01-09 17:53:55 +01:00
Robin Appelman
be3bbf22e0
fix: better applicable check for updating external mounts
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-01-09 17:53:54 +01:00
Robin Appelman
fa61c4c57d
fix: don't error when checking login credential storage from cli
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-01-09 17:53:53 +01:00
Robin Appelman
6dd6d06606
fix: update external storage mounts on login
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-01-09 17:53:53 +01:00
Robin Appelman
9dffca2f07
fix: improve handling of unavailable storages
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-01-09 17:53:52 +01:00
Robin Appelman
73e84f9bf5
perf: cache root cache entries for external storage in MountCacheService
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-01-09 17:53:51 +01:00
Robin Appelman
d64f7eb939
feat: listen to user/group events and update external storage mounts
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-01-09 17:53:51 +01:00
Robin Appelman
5565cdb390
feat: make external storage mount provider authoritative
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
# Conflicts:
# apps/files_external/lib/AppInfo/Application.php
2026-01-09 17:53:50 +01:00
Robin Appelman
c80c980e29
feat: add typed events for external storage config changes
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-01-09 17:53:49 +01:00
Carl Schwan
98192fc17c
feat(external-s3): Expose config option to enable direct s3 preview
...
Signed-off-by: Carl Schwan <carlschwan@kde.org>
2026-01-02 17:13:43 +01:00
Carl Schwan
2ea1bd4cdc
feat(movie-preview): Use getDirectDownloadById for generating preview
...
Allow to speed-up considerably the creation of previews for movies
stored on S3.
Signed-off-by: Carl Schwan <carlschwan@kde.org>
2026-01-02 17:13:41 +01:00
invario
ffe91b48dc
feat(previews): allow ffmpeg to connect direct for AWS S3 buckets
...
Co-authored-by: Côme Chilliet <91878298+come-nc@users.noreply.github.com>
Signed-off-by: invario <67800603+invario@users.noreply.github.com>
2026-01-02 10:48:39 +01:00
Edward Ly
1490ea95cb
Merge pull request #56781 from nextcloud/fix/s3-name
...
fix(s3): rename 'Amazon S3' to 'S3 Storage'
2025-12-02 09:20:34 -08:00
Edward Ly
09f774a61f
fix(s3): rename 'Amazon S3' to 'S3 Storage'
...
The current name may be confusing to users who take advantage of other S3-compatible storage solutions not offered by Amazon, so a more generic name is preferred here.
Signed-off-by: Edward Ly <contact@edward.ly>
2025-12-02 08:33:06 -08:00
Côme Chilliet
69b85fab32
fix(files_external): Properly register event listeners in register method
...
This is the clean solution, LoginCredentials was the only auth class
actually registering stuff in constructor.
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-11-25 15:08:35 +01:00
Côme Chilliet
3279afc529
fix(files_external): Fix registration of listeners with PHP >= 8.4
...
With the lazy ghosts the constructor is not always called in
files_external boot. This is a quick and dirty fix but we should
instead move the code out of the constructors and to the boot method.
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-11-25 15:08:35 +01:00
Tobias Kaminsky
6f0537b4e9
Merge pull request #56494 from nextcloud/carl/result-improv
...
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, files_reminders) (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
Improve IResult
2025-11-20 15:38:17 +01:00
Carl Schwan
4d47fdaa85
chore: Run rector with new rules for fetch
...
Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-11-18 17:45:57 +01:00
Kent Delante
b57db10814
fix: pass only necessary information when deleting mulitple objects
...
DeleteObjects currently fails when the request includes all the
information returned by ListObjects. Send only the necessary
information in the request. Note: 'Size' and 'DateModified' is now
only supported by directory buckets.
Signed-off-by: Kent Delante <kent.delante@proton.me>
2025-11-18 12:07:53 +08:00
Maxence Lange
07d3f1c313
fix(files-external): do not load lazy appconfig from construct
...
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
2025-10-27 13:37:13 -01:00
Louis
f8bed8f186
Merge pull request #51145 from nextcloud/home-folder-readonly
2025-10-01 10:09:19 +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