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をつかって英訳した。便利~
インストール手段を増やした
前回のブログではバイナリを直接落としてくるように書いていたのですが、asdf、rtx、homebrew、gh-setupを使ってインストールできるようになった。
thx!!! id:k1LoW
Windowsに対応した
Linux環境でWindowsへのクロスコンパイルがうまくいかずWindows向けのバイナリは作っていなかったが、いろいろ調査した結果Windows向けのバイナリが作れるようになった。 クロスコンパイルの失敗の原因はmruby-onig-regexpにあったのだが、詳しくは以下のissueに書いたのでそちらを参照してほしい。
テスト環境を作った
作成した当初はテストコードがなかったのでテスト環境を作った。 mrubyでユニットテストをするのをなかなか大変なので、Arubaを使ってバイナリファイルのふるまいをテストすることにした。 Arubaの使い方は先日ブログに書いた。
CI環境の整備
テスト環境ができたのでGitHub Actionsを使ってCI環境を整備した。 ローカルの開発環境はDockerで用意していたのもあって、シュッと環境を作れたのでとても便利だった。
GitHub ActionsではLinux以外にもMacOSとWindowsでのテストもできるので、それらもテストを行っている。
テストの自動化のついでにリリースページの作成も自動化した。
GitHub CLIを使ってgh release create
するだけで自動生成されるのが便利だった。
作成されたリリースページ