Sphinx in 2016

昨日は Markdown の 2016年を振り返りましたが、今日は Sphinx の 2016年を振り返りつつ、
2017年の目標を適当に挙げてみようと思います。

2つのメジャーリリースと 13のマイナーリリース

今年は 1.3.4 から 1.5.1 まで、合計で 15のリリースを行いました。
2014年が 1.2.1 から 1.2.3 までの 3リリース、2015年が 1.3 から 1.3.3 までの 4リリースだったとの比較すると、コンスタントに改善を続けられたと感じています。

もうひとりのメンテナである清水川氏と相談し、Sphinx ではリリースポリシーを刷新しました。
おおよそ 1ヶ月おきに 1回のバグフィックスリリース、6〜8ヶ月おきに 1回のメジャーリリースを行うつもりで進めています。
少し前の記事にある通り、メンテナのリソースも十分にあるというわけではないので、あくまで目標でしかありませんが、今年は無事にこの間隔が守れました。

次のメジャーリリースは夏頃に予定されている 1.6 です。
まだ具体的に動き出してはいないですが、API の整理やいくつかのあたらしい機能が実装される予定です。
いまだに手が出せていない HTML5 サポートや TeX まわりの改良など、やりたいことはいくつもあるので、その中からピックアップしながら作業を進める予定です。

Sphinx メンテナチーム

少し前に記事にしたとおり、2016年は活発的に活動するメンテナが増えました。

2015年末に自分が復帰したのは、チケットの消化にはかなり大きな変化があったと自負しています。
2015年には 350件ぐらいしかクローズできていなかったものが、2016年は1000件以上クローズできています。
先程触れたリリースの件と合わせ、テンポよくメンテナンスが行われるようになっています。

また、TeX 使いの jfbu が加入したのはメンテナチームにとってかなり大きい変化です。
これまで TeX に強いメンバーがいなかったので、おっかなびっくり修正したり、もしくは問題が放置されていたりと、結構ひどい状態だったのですが、かなり改善がありました。
1.5 系ではその恩恵をかなり得られるはずです。
引き続き、彼と一緒に TeX まわりの改善を続けていこうと思っています。
いつか TeX 出力でもテーマ的なものが実現できるといいですね。

Sphinx の各種イベント

2016年も安定して Sphinx+翻訳 Hack-a-thon と Sphinx Tea Night が開催されていました。
ふたつのイベントは引き続き、毎月開催され続ける予定です。

一方、SphinxCon は開催されませんでした。ちょっとタイミングが合わなかったので、2017年にリベンジしたいと思います。
イムリーにこんなお誘い? もありましたしね!


Software Design 誌での Sphinx 連載

連載も 2年目に入って、応用的な内容が続いています。いろんな分野に広がっていてとても面白いですね。
自分も合計で 4回ほど寄稿しました。

いままで説明されていなかった分野の記事を書いたり、不足がちな機能を補うためにあらたな拡張を書いたりしました。
sphinxcontrib-jsonschema や sphinxcontrib-apiblueprint を新たにリリースしたり、sphinxcontrib-textstyle にパッチを投げまくったりしました。
先日は toc 拡張を作ったりしましたし、やはり発表ドリブン、記事ドリブンでなにかをやるのはコードが生まれて楽しいですね。

アドベントカレンダー

2016年はアドベントカレンダーは特に開催されませんでした…が、そのかわりにこのカウントダウン連載をやっていました。
本当に白紙の状態で書き始めたので、調べ物をして、コードを書いてと大変な毎日でした。メンテナンスも放置状態ですしね。

来年はみんなで、負担を分散してできるといいですね。
せめて、ひとりでやるにしても事前にネタを仕込んでおきたいところです。

まとめ

とくにまとまりなく終わります。やっつけ気味ですみません…。
みなさま、 2016年はお疲れ様でした。2017年も引き続きよろしくお願いします。
(もう年は越してしまったのだけど、一応 12/31 の記事の体で)