fabric health concerns
I have concerns about the upstream of this project, Fabric. Here are some facts about the project:
- last release, 3.2.2: 2023-08-30 (~2-3 years ago)
- last merged merge request, 2205: 2022-04-07 (~4 years ago)
- last external merged merge request, 2151, issue templates
- last external, non-chore merged merge request, 1766: Jun 19, 2018 (~8 years ago)
- last commit, limit tests to pytest 7, Jul 20, 2025, 7 months ago, prior to that, is a jumbled pile of YOLO commits for the 3.2.2 release in 2023, 2-3 years ago
- @anarcat submitted [6 merge requests](https://github.com/fabric/fabric/pulls?q=author%3Aanarcat on fabric), 1 on invoke, none were ever merged, including a trivial typing fix
- GitHub lists only 17 contributors, the overwhelming majority of the code comes from a single contributor, the second most active contributor has only 4 commits
Fabric has become a critical part of our infrastructure: it is now installed on all servers, performs security-sensitive tasks like server bootstraps and retirements, and runs as root on all machines on a regular basis.
It seems like Jeff Forcier (AKA bitprophet) is overwhelmed. He asked for help in 2020 about the same time I asked pretty much exactly that. In that post he suggested getting some help for triage, but it's unclear this has happened. He also has more recently (2025) updated a personal roadmap which mentions fabric and paramiko. He also lost his job in 2023 and got a new one in 2024 where he is not sure he'll be able to contribute back to his projects.
Long story short, upstream is not super active, and is mostly busy dealing with basic maintenance, not accepting external contributions.
In the "help wanted", he suggested the best way to reaching out to him was through email, so perhaps we could do that.
In the meantime, I have thought of a few alternatives, which i'll expand in comments below:
- Ansible
- Mitogen
- Spicerack
I'll also discuss discarded alternatives.
Update: I just realized I had already performed such a review a couple of years ago, I'll update the alternatives considered section instead.