# russhy
![maintenance-status](https://img.shields.io/badge/maintenance-experimental-blue.svg)
[![PyPI version](https://badge.fury.io/py/russhy.svg)](https://badge.fury.io/py/russhy)
[![Supported Python versions](https://img.shields.io/pypi/pyversions/russhy.svg)](https://pypi.python.org/pypi/russhy/)
[![PyPI license](https://img.shields.io/pypi/l/ansicolortags.svg)](https://pypi.python.org/pypi/ansicolortags/)
[![PyPI status](https://img.shields.io/pypi/status/ansicolortags.svg)](https://pypi.python.org/pypi/ansicolortags/)
![Workflow: publish](https://github.com/nikhil-prabhu/russh/actions/workflows/publish.yml/badge.svg)
![russhy: logo](assets/logo.png)
An SSH library for Python; written in Rust.
This is a fork or russh
## About
`russhy` is an easy-to-use SSH library for Python, written in Rust using [PyO3](https://github.com/PyO3/pyo3).
This library aims to be as similar to [paramiko](https://pypi.org/project/paramiko/) as possible (for ease of use and familiarity), while also adding some opiniated features/improvements.
Currently, this library supports the SSHv2 protocol by leveraging `libssh2` (using the [ssh2](https://crates.io/crates/ssh2) crate).
This library does not aim to replace paramiko, or any other Python SSH library. Rather, it's just a proof-of-concept to test the viability of a Python library written in Rust.
> [!NOTE]
> This library doesn't ship windows wheels, you should compile them yourself if you want to use it
## Features
- Supports the SSHv2 protocol.
- Supports SFTP.
- Supports Python 3.7 and above.
- Cross-platform (Windows, macOS and GNU/Linux).
- Simple and easy to use.
- Fast and memory-safe, thanks to the underlying Rust core.
- Extensible and well-documented.
- Stubs are included with proper type-annotations for all symbols.
Raw data
{
"_id": null,
"home_page": null,
"name": "russhy",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.7",
"maintainer_email": null,
"keywords": "pyo3, python, ssh",
"author": "Nikhil Prabhu <nikhilprabhu98@gmail.com>",
"author_email": "Nikhil Prabhu <nikhilprabhu98@gmail.com>",
"download_url": "https://files.pythonhosted.org/packages/d1/92/7d33bceb5f2f411e82b0ee211d82b12e325ef6ce5172ab27aaaab7050eca/russhy-0.6.4.tar.gz",
"platform": null,
"description": "# russhy\n\n![maintenance-status](https://img.shields.io/badge/maintenance-experimental-blue.svg)\n[![PyPI version](https://badge.fury.io/py/russhy.svg)](https://badge.fury.io/py/russhy)\n[![Supported Python versions](https://img.shields.io/pypi/pyversions/russhy.svg)](https://pypi.python.org/pypi/russhy/)\n[![PyPI license](https://img.shields.io/pypi/l/ansicolortags.svg)](https://pypi.python.org/pypi/ansicolortags/)\n[![PyPI status](https://img.shields.io/pypi/status/ansicolortags.svg)](https://pypi.python.org/pypi/ansicolortags/)\n![Workflow: publish](https://github.com/nikhil-prabhu/russh/actions/workflows/publish.yml/badge.svg)\n\n![russhy: logo](assets/logo.png)\n\nAn SSH library for Python; written in Rust.\n\nThis is a fork or russh\n\n## About\n\n`russhy` is an easy-to-use SSH library for Python, written in Rust using [PyO3](https://github.com/PyO3/pyo3).\n\nThis library aims to be as similar to [paramiko](https://pypi.org/project/paramiko/) as possible (for ease of use and familiarity), while also adding some opiniated features/improvements.\nCurrently, this library supports the SSHv2 protocol by leveraging `libssh2` (using the [ssh2](https://crates.io/crates/ssh2) crate).\n\nThis library does not aim to replace paramiko, or any other Python SSH library. Rather, it's just a proof-of-concept to test the viability of a Python library written in Rust.\n\n> [!NOTE] \n> This library doesn't ship windows wheels, you should compile them yourself if you want to use it\n\n## Features\n\n- Supports the SSHv2 protocol.\n- Supports SFTP.\n- Supports Python 3.7 and above.\n- Cross-platform (Windows, macOS and GNU/Linux).\n- Simple and easy to use.\n- Fast and memory-safe, thanks to the underlying Rust core.\n- Extensible and well-documented.\n- Stubs are included with proper type-annotations for all symbols.\n\n",
"bugtrack_url": null,
"license": "MIT",
"summary": null,
"version": "0.6.4",
"project_urls": {
"Source Code": "https://github.com/Bben01/russh"
},
"split_keywords": [
"pyo3",
" python",
" ssh"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "e30608fc525efd672c7372f6cdde7b819cb1a022d992832c69ca17759cfd1dcc",
"md5": "131fe3b4c7dc1e9ca794d37f9297c214",
"sha256": "12be7f138f6598e73c8b4f6fecb05e44ec920c59b66f8da9d4b70943f272f70a"
},
"downloads": -1,
"filename": "russhy-0.6.4-cp37-abi3-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "131fe3b4c7dc1e9ca794d37f9297c214",
"packagetype": "bdist_wheel",
"python_version": "cp37",
"requires_python": ">=3.7",
"size": 353476,
"upload_time": "2024-10-11T08:01:49",
"upload_time_iso_8601": "2024-10-11T08:01:49.839365Z",
"url": "https://files.pythonhosted.org/packages/e3/06/08fc525efd672c7372f6cdde7b819cb1a022d992832c69ca17759cfd1dcc/russhy-0.6.4-cp37-abi3-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "3dfe938a2898fb20cd14492a468b98ca64cb7b3eded46040693d5e8e9c9c990c",
"md5": "641a73f2658b1a47f06394fa6a14c5f9",
"sha256": "2c8d41cdb1edde9cf78d1f003ca6a27bbb08b202af94d72cc3cafedbbb6c526c"
},
"downloads": -1,
"filename": "russhy-0.6.4-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "641a73f2658b1a47f06394fa6a14c5f9",
"packagetype": "bdist_wheel",
"python_version": "cp37",
"requires_python": ">=3.7",
"size": 2610859,
"upload_time": "2024-10-11T08:01:52",
"upload_time_iso_8601": "2024-10-11T08:01:52.184448Z",
"url": "https://files.pythonhosted.org/packages/3d/fe/938a2898fb20cd14492a468b98ca64cb7b3eded46040693d5e8e9c9c990c/russhy-0.6.4-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "d1927d33bceb5f2f411e82b0ee211d82b12e325ef6ce5172ab27aaaab7050eca",
"md5": "5c41b6e68779d572f5471c2f7a1b9d51",
"sha256": "bf75f89fb9a90801e7570a1646b6cd21d6001162573a8a8497d5a034c34014bf"
},
"downloads": -1,
"filename": "russhy-0.6.4.tar.gz",
"has_sig": false,
"md5_digest": "5c41b6e68779d572f5471c2f7a1b9d51",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.7",
"size": 39531,
"upload_time": "2024-10-11T08:01:54",
"upload_time_iso_8601": "2024-10-11T08:01:54.131023Z",
"url": "https://files.pythonhosted.org/packages/d1/92/7d33bceb5f2f411e82b0ee211d82b12e325ef6ce5172ab27aaaab7050eca/russhy-0.6.4.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-10-11 08:01:54",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "Bben01",
"github_project": "russh",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "russhy"
}