Text::Markdown::Discountのメンテナンスを引き継ぎました
この記事はPerl Advent Calendar 2025の9日目の記事です。
さて、Cで書かれたMarkdown実装の1つであるDiscountのPerlバインディングである、Text::Markdown::Discountを sekimura さんから去年末に引き継ぎ、今年の頭からメンテナンスしていました。
ありがたいことに大本のDiscountが継続開発されていることもあって、Text::Markdown::DiscountはPerlで利用可能な最も実用的なMarkdownライブラリの1つです。このブログでも使っている拙作のブログエンジンであるRiji内部でも使っており、私にとっても欠かせないライブラリです。
かねてから、Discount本体側のバージョンが上がるタイミングなどでsekimuraさんには度々pull requestを送っていましたが、これはメンテナンスを引き取らせてもらった方が良いのではないかと思い、昨年末にメールを送って、対応していただきました。ありがとうございました。(今メールボックスを検索したら、実は2021年にsekimuraさん側からメンテナンス移譲の打診が来ていてそれを無視していたことに気付きました…)
XSモジュールをメンテナンスするのは始めてのことなので2025年に改めてXSを学ぶ必要が出てきたのは面白く思っています。リリース周りをMinillaにしたいけどやり方に自信がなかったのですが、skajiさんが元旦に早速pull requestを送ってくれて ありがたかったです。
現在Text::Markdown::Discountをご利用の場合、ご要望やコントリビューションをいただけると嬉しいです。早速Discountバージョン3に上げる作業を滞らせてしまっていますが…。
余談
ちなみに、RubyでメジャーなMarkdownライブラリのcommonmarkerはComrak というRust製のMarkdownライブラリのラッパーになっているようです。
ComarkはCommonMark互換であり、GFM拡張もオプションで実現可能というイマドキな作りになっています。私が大好きなGoのgoldmark も同様のCommonMark + GFMの構成になっているので、その辺りのバインディングライブラリをPerlで新規実装しても面白いかも知れませんね。