Files icon indicating copy to clipboard operation
Files copied to clipboard

Feature: Add support for SFTP

Open Tombstone2K opened this issue 4 years ago • 19 comments

Requirements

  • Enabled add new SFTP connections (should follow the same UX as FTP)

Tombstone2K avatar Nov 21 '20 06:11 Tombstone2K

I think this is a duplicate of #1629 and was merged with #1342 . However, FTP is not the same as SFTP. I suggest merging this with #1342 .

benjione avatar Jan 22 '21 11:01 benjione

This would be extremely nice and would remove the need for Filezilla and the likes, making it a much more uniform and convenient experience.

ttmx avatar Nov 18 '21 14:11 ttmx

What are the requirements for this feature (eg. how do you expect this feature to work)?

yaira2 avatar Sep 15 '22 02:09 yaira2

We can integrate SSH.NET and do what we have done for FTP before. But we need to wait for the next release of SSH.NET for asynchronous IO support.

hez2010 avatar Sep 15 '22 02:09 hez2010

Isn't our current implementation of FTP a little slow or am I thinking of regular network drives?

yaira2 avatar Sep 15 '22 02:09 yaira2

Isn't our current implementation of FTP a little slow

You're right. I'm expecting FluentFTP to use IAsyncEnumerable to list files from FTP in the future, instead of listing all entries at once.

hez2010 avatar Sep 15 '22 04:09 hez2010

We can integrate SSH.NET and do what we have done for FTP before. But we need to wait for the next release of SSH.NET for asynchronous IO support.

@hez2010 has this been released yet?

yaira2 avatar Apr 03 '23 19:04 yaira2

We can integrate SSH.NET and do what we have done for FTP before. But we need to wait for the next release of SSH.NET for asynchronous IO support.

@hez2010 has this been released yet?

Unfortunately not yet. But I think we can use a custom internal fork.

hez2010 avatar Apr 04 '23 00:04 hez2010

Is there any progress on this?

BLACK4585 avatar Nov 13 '23 18:11 BLACK4585

No one has looked into this yet.

Josh65-2201 avatar Nov 13 '23 18:11 Josh65-2201

I'll try looking into it. Is there a filesystem abstraction and stuff that I should do to properly implement everything as possible? I recall seeing many Win32 specific stuff in the codebase that don't seem to be abstracted away well.

SSH.NET now has async support I think.

cc @yaira2

itsWindows11 avatar Nov 18 '23 00:11 itsWindows11

yeah, it would nice if sftp is supported. i found this app, for reference https://apps.microsoft.com/detail/owlfiles-file-manager/9MSQ3SZK42KP?hl=en-us&gl=US it has supported sftp.

wildantea avatar Nov 22 '23 01:11 wildantea

@itsWindows11 How is this going?

TimoNotThy avatar May 09 '24 18:05 TimoNotThy

Time constraints on my end slowed down things, plus exams are coming up thus slowing down progress more in the next few weeks. I've got some of the basics ready already for SFTP though, will do a PR by the end of this month.

Sorry for any inconveniences caused here.

itsWindows11 avatar May 09 '24 18:05 itsWindows11

No worries, was just wondering if this was coming along or not

TimoNotThy avatar May 09 '24 18:05 TimoNotThy

Files is using an older fork of the SecureFolderFs storage abstraction, which itself was a fork of the OwlCore.Storage project, an early adoption package for the CommunityToolkit.Storage proposal.

I've worked with SecureFolderFS to incorporate their feedback and remove the need to maintain a separate fork, I would suggest we do the same for Files so we aren't duplicating planned work: https://github.com/Arlodotexe/OwlCore.Storage/issues/12, https://github.com/Arlodotexe/OwlCore.Storage/issues/55

Arlodotexe avatar Jun 11 '24 03:06 Arlodotexe