ぶていのログでぶログ

思い出したが吉日

rfコマンドv1.0.0をリリースした / Rubyのコードでplain text/JSON/YAMLを整形できるCLIツール

Rubyのコードでplain text/JSON/YAMLを整形できるrfコマンドを作っている。 このrfコマンドのv1.0.0をリリースした。 といいつつも、前回のv0.2.0から大きく機能を増やしたということはなく、バグの除去やテスト環境の構築のみになっている。 だが、v0.3.0、v0.4.0…っとバージョンを上げていっても延々と正式バージョンにならない感じがありモチベーションが上がらないのと、v1.0.0以上になっていないと開発版のような感じがして利用者が増えなそうなのでv1.0.0にした。 機能不足だが、これから頑張って増やしいこう 💪

以下変更点などを記載。

READMEを書いた

前回のブログで書いたような内容を基にREADMEを作成した。 github.com

なお日本語で書いた後に、ChatGPT/BingAIをつかって英訳した。便利~

github.com

インストール手段を増やした

前回のブログではバイナリを直接落としてくるように書いていたのですが、asdf、rtx、homebrew、gh-setupを使ってインストールできるようになった。

github.com

thx!!! id:k1LoW

Windowsに対応した

Linux環境でWindowsへのクロスコンパイルがうまくいかずWindows向けのバイナリは作っていなかったが、いろいろ調査した結果Windows向けのバイナリが作れるようになった。 クロスコンパイルの失敗の原因はmruby-onig-regexpにあったのだが、詳しくは以下のissueに書いたのでそちらを参照してほしい。

github.com

テスト環境を作った

作成した当初はテストコードがなかったのでテスト環境を作った。 mrubyでユニットテストをするのをなかなか大変なので、Arubaを使ってバイナリファイルのふるまいをテストすることにした。 Arubaの使い方は先日ブログに書いた。

tech.buty4649.net

CI環境の整備

テスト環境ができたのでGitHub Actionsを使ってCI環境を整備した。 ローカルの開発環境はDockerで用意していたのもあって、シュッと環境を作れたのでとても便利だった。

github.com

GitHub ActionsではLinux以外にもMacOSとWindowsでのテストもできるので、それらもテストを行っている。 テストの自動化のついでにリリースページの作成も自動化した。 GitHub CLIを使ってgh release create するだけで自動生成されるのが便利だった。

github.com

作成されたリリースページ

github.com