fab-classic
fab-classic is a simple, Pythonic tool for remote execution and deployment.
What it is and what it does
fab-classic is a Python library and command-line tool for executing remote shell commands and transferring files over SSH, designed for deployment and systems administration. It is a maintained fork of Fabric 1.14 with Python 3 compatibility patches, intended for projects already using Fabric 1.x that do not want to migrate to breaking changes in later versions. The package wraps paramiko at a higher level, providing a simpler Pythonic interface for common SSH tasks.
You define tasks as Python functions and execute them on remote hosts using the fab command-line tool, or import components into other Python code. It supports local and remote command execution, sudo operations, file upload/download, and user prompting. The package depends on paramiko for SSH protocol support and is actively maintained with recent commits.
Use it for:
- Deploy applications to multiple servers by defining deployment tasks and running them with the fab tool.
- Execute system administration commands across a fleet of machines as part of operational workflows.
- Automate file uploads and downloads between local and remote systems during deployments.
- Migrate legacy Fabric 1.x codebases to Python 3 without rewriting for incompatible API changes.
- Build custom deployment scripts in Python that need to run shell commands on remote hosts over SSH.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
fab-classic provides SSH-based remote command execution and file transfer for deployment and systems administration tasks, built on paramiko.
Yes, if you are maintaining a Fabric 1.x codebase and need Python 3 support without migrating to later versions. The package is actively maintained, has low install friction, carries no known vulnerabilities, and uses a permissive license. Be aware that it requires careful dependency management around paramiko versions. Not recommended for new projects.
Install
fab-classic on PyPI
pip
pip install fab-classicuv
uv add fab-classicpoetry
poetry add fab-classicInstalling fab-classic
Before you install
Low install friction with a pure-Python wheel. Maintenance is active with recent commits. Note: version 1.21 switched to the original paramiko dependency; if you have an older variant installed, uninstall it first to avoid import conflicts, or set PARAMIKO_REPLACE=1 during install to use an alternative instead.
License in practice
Licensed under BSD (permissive), allowing use in most commercial and open-source projects without significant restrictions.
Quickstart
pip install fab-classic
from fabric.api import run
def host_type():
run('uname -s')
# Then run: fab -H localhost host_type
Requires Python 3.5 or later. If you have an existing paramiko variant installed, uninstall it first to avoid import name conflicts.
Verify before relying
- Whether the package's bug-fix-only maintenance model is sufficient for your deployment use case over time.
- Performance characteristics for large-scale deployments.
- Compatibility with current versions of paramiko beyond what the fact sheet documents.
Package facts
| License | not declared (permissive) |
| Python support | supports the current Python release (>=3.5) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 1 — paramiko |
| Maintenance | actively maintained — 137 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 124,068/month — #11,888 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: fab_classic-1.21.0-py3-none-any.whl
Tags
More Python Modules packages
Converts domain names between Unicode and…
permissive · top 100 on PyPI
setuptoolsSetuptools is a Python build backend and…
permissive · top 100 on PyPI
PyYAMLPyYAML parses and emits YAML 1.1 data format,…
permissive · top 100 on PyPI
pydanticPydantic validates Python data structures…
permissive · top 100 on PyPI
annotated-typesProvides reusable metadata objects for use with…
permissive · top 100 on PyPI
typing-inspectionProvides runtime tools to inspect and…
permissive · top 100 on PyPI
Fabric3Fabric3 is a Python 2.7 and 3.4+ compatible…
permissive · top 15,000 on PyPI
ms-fabric-cliA command-line interface for Microsoft Fabric…
unclear · top 15,000 on PyPI
fabricFabric executes shell commands remotely over…
permissive · top 5,000 on PyPI
fabric2Fabric executes shell commands remotely over…
permissive · top 15,000 on PyPI
awsCommand-line tool to manage Amazon EC2 and ELB…
permissive · top 15,000 on PyPI
patchworkPatchwork provides idempotent Unix system…
permissive · top 15,000 on PyPI
apache-airflow-providers-fabIntegrates Flask App Builder with Apache…
permissive · top 1,000 on PyPI
sfctlA command-line interface for managing Azure…
permissive · top 15,000 on PyPI
azure-servicefabricClient library for programmatically managing…
permissive · top 5,000 on PyPI
jumpsshJumpSSH runs commands on remote servers through…
permissive · top 15,000 on PyPI