stefanbirkner/fake-sftp-server-lambda

Doesn't work with sshd-sftp 2.5

fkrull opened this issue · 4 comments

The library doesn't work with sshd-sftp 2.5:

 16:54:51.029 [warn] - [SessionHelper.java:1172] - exceptionCaught(ServerSessionImpl[ssh-user@/127.0.0.1:35184])[state=Opened] RuntimeSshException: null
16:54:51.029 [warn] - [SessionHelper.java:1179] - exceptionCaught(ServerSessionImpl[ssh-user@/127.0.0.1:35184])[state=Opened] caused by AbstractMethodError: Receiver class com.github.stefanbirkner.fakesftpserver.lambda.FakeSftpServer$$Lambda$12324/0x00000008036c1440 does not define or inherit an implementation of the resolved method abstract createFileSystem(Lorg/apache/sshd/common/session/SessionContext;)Ljava/nio/file/FileSystem; of interface org.apache.sshd.common.file.FileSystemFactory.

In general, the dependency range (any version >= 2) is too loose. Clearly breaking changes are happening to the dependency and such a loose dependency version shunts the work of having to find a compatible version onto the user.

We have experienced the same issue causing our pipeline to break.

We have pinned the sshd-sftp library to version 2.4, but that shouldn't be the concern of the users of this library.

The same for our team, works with org.apache.sshd:sshd-sftp:2.4.0 but is broken for 2.5.0

Same solution exclude transitive dependency of sshd-sftp and include version 2.4.0 as provide or test

I created two release of Fake SFTP Server Lambda: 1.0.1 works with sshd-sftp < 2.6.0 and 2.0.0 with newer versions of sshd-sftp.