LoginSignup
37
30

More than 5 years have passed since last update.

FabricのPython3への対応について

Last updated at Posted at 2016-06-05

概要

FabricがいつまでもPython3に対応していないので、どうにかしてPython3で使えないか調べた結果をまとめました。

  • Python3への対応状況
  • GitHub上での議論
  • Fabric3フォークの利用

[追記]

久々に見たら、2018年5月10日、遂に Fabric 2.0 がリリースされ、 Python 3.4 以降で使えるようになりました!

[/追記]

結論

Fabric3というフォークがあるので、Python3を使いたい人はそちらを使えば良いとのことです。

virtualenv -p python3 env
source env/bin/activate
pip3 install fabric3

Fabricについて

FabricはPython製の自動化ツールです。

Fabric自体についての説明は、こちらの記事が非常に参考になりました。ありがとうございます。

まだの方はぜひご覧下さい。

Python3への対応状況

非常に便利なFabricですが、Python3には対応していません(2016年6月5日現在)。

初めて触ったPythonがPython3だったゆとり世代の自分としては、非常に残念です。

私のような人はたくさんいるようで、GitHubでPython3関連のIssueが16個もあります。

主要なコミッターであるbitprophetさんもPython3への対応の要望にうんざりしているようで、Python3関連のIssueが立つ度に

Please see the roadmap - http://www.fabfile.org/roadmap.html - alpha for v2 out soon (really).

とコメントしてIssueをロックしています。

例えばこちらのIssueでは、

「Python3で動作するように貢献したいんだけどどうすればいいの?」という質問に対して

「ロードマップ見て、すぐバージョン2が来るから」と回答、その後別の方から

「全部のIssue見たけどさ、ずっと同じこと言ってるじゃん。オープンソースなんだから、もっと他の人に作業してもらえば?」

というコメントがついていました。まあ、その後無言でロックされているわけですが。

フォークFabric3を利用する

そのような状況の中で、Fabric3というフォークを作った方がいらっしゃいました。

こちらのIssueで、パッチの取り込みが提案されています。

「まだPython2.5を切るわけにはいかない」という理由で、ロックされていますが、「Python3で使いたいんだけど」という人に対してはこちらのフォークが推奨されているようです。

インストールはpip3 install fabric3とするだけです。

デメリット

Fabricで冪等性を確保するプラグインCuisineがPython3をサポートしていないので、利用できません。

「FabricがPython3に対応したら、Cuisineも対応しよう」という提案がされているようです。

Cuisineが使えないのはちょっと残念ですが、Fabric3自体は全てのテストを通っており、通常使う分には問題無さそうです。

ちょっと業務で利用してみて、問題があれば追記しようと思います。

37
30
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
37
30