ParallelSSH / ssh-python

Python bindings for libssh C library.
https://parallel-ssh.org
GNU Lesser General Public License v2.1
38 stars 27 forks source link

Future roadmap of this project? #1

Closed TurboTurtle closed 6 years ago

TurboTurtle commented 6 years ago

I'm curious as to the future of this project as I'm working on an ssh-based utility that might benefit from using it compared to alternatives. Is it intended to keep pace development/feature/security fixes/etc wise with ssh2-python or any kind of usage with ParallelSSH? Or is the chief focus going to be on ssh2-python?

Main reason I'm asking is that I'm constrained to libssh (which isn't necessarily a bad thing). libssh2 is a non-starter for me.

pkittenis commented 6 years ago

Hi there,

Thanks for the interest.

The project currently targets only the embedded libssh version, per readme, which is at the moment the current master branch - the yet-to-be-released 0.8.0.

It does not support any earlier versions nor do I intend to support them as it is very time consuming for a single developer requiring compile time flags and so on. Contributions very much welcome of course. I would like, however, to add code to be able to target an externally provided libssh for use in system packages.

The intent is to keep it up to date with latest libssh version, again targeting version embedded in the repository. There is often a lot of time between libssh releases with new features only present on master branch. From 0.7.x to current master for example, 0.7.x is missing certificate authentication plus a couple more key and digest types.

The current work streams are in order,

ssh2-python is a separate project so feature wise the comparison is for the underlying libraries, libssh and libssh2. They can, however, share a lot of the CI code, packaging etc as both libraries have similar dependencies.

parallel-ssh will end up using both this project and ssh2-python as separate high-level clients.

However, both ssh-python and ssh2-python are thin wrappers of their native libraries and will remain as such so they can easily keep pace with their respective libraries without much overhead on maintenance.

Feature wise, the binaries shipped for ssh2-python are more compatible with newer SSH servers due to them also targeting master branch of libssh2. That might be an option for you if key support is the main blocker for libssh2. I have no vested interest in either other than their use in parallel-ssh.

TurboTurtle commented 6 years ago

Thank you for the response!