4 ms·
Fabric was a casualty of the Python 2/3 split. Unicode isn't a great default for the shell interaction so the project took a long time to be ported, and by then
by syllogism 6y ago
Fabric was a casualty of the Python 2/3 split. Unicode isn't a great default for the shell interaction so the project took a long time to be ported, and by then it lost all momentum.
The successor project, Invoke, was finally released a year or two ago, but now it's unmaintained too.
- acdha 6y agoI think it’s more that Jeff Forcier is one – very productive – person and while tons of places used Fabric there were far fewer who contributed significantly to supporting it. I much prefer Python to programming in a YAML derivative with multiple bolt-on extension mechanisms but at the end of the day Ansible brings a lot to the table because there are a bunch of people employed by Red Hat to work on it full-time.
- syllogism 6y agoYes that's true, but turning it around: the task is too big (and also sucks too much) for one person to do mostly alone. And also like, why? There would've been a more active community of companies depending on it and it wouldn't have blocked out on him if it had maintained the momentum it had.
- acdha 6y agoI was talking about it at the peak of that momentum. This is a common problem in open source: companies often don’t contribute or only support specific things they need. It’s much harder to get general ongoing contributions even if that would make the entire community better off long-term.
- kstrauser 6y agoI count Jeff as a personal friend, and I think you’re exactly right. Everyone was riding his butt to port to Python 3, but the giant companies using Fabric weren’t exactly lining up to help. He found that incredibly frustrating.
- ivan_ah 6y agoI have been using the unofficial fork Fabric3 (https://pypi.org/project/Fabric3/ https://pypi.org/project/Fabric3/ == https://github.com/mathiasertl/fabric/ https://github.com/mathiasertl/fabric/) for many years with great success (completely automated the IT infrastructure of a medium-sized startup on AWS including provisioning using boto, system config, and app deploy), all with a couple of hundred lines magic-less, easy-to-read scripts, but sadly Fabric3 is no longer updated either, which causes security concerns. I wish someone would pick that up and continue it — rather then the official version and split into Invoke (which I still don't understand despite a whole week of energy invested). Honestly fabric was the best thing ever... I still depend on it for personal projects, but sad I can't use it for work projects anymore. UPDATE: I just found `fab-classic` which is an actively maintained fabric fork with the old API: https://github.com/ploxiln/fab-classic/releases https://github.com/ploxiln/fab-classic/releases everyone rejoice, for civilized devops is once again upon us, and with the paramiko that is new!
- drcongo 6y agoThanks for the fab-classic link. I too spent a week inside Fabric2 / Invoke trying to port our extensive Fabfile and ran in to so many problems that I'd pretty much given up too.