29日でもなんでもないけど、tDiary 5.4.0 をリリースした。
https://tdiary.org/20250613.html
前回のリリースが 2024 年の1月で、そこから Rack 3.1 対応をガチャガチャやって今に至る、という状態でなんとかまともに動くという状態になったのでリリースしてしまった。
1年ぶりにリリースをしてみると、手順書があっても途中でエラーが起きて失敗したり、releases
は手で作らないよね...みたいなものがたくさんあるので、この辺を整備するのと Ruby 3.5 で消す予定の CGI 周りの対応をしてから 5.4.1 を出す予定
tDiary が提供している docker image がいつの間にか arm64 になってしまって、手でやっていたらいかんなとなったので GitHub Actions で作るようにした。なお、copilot agent に命令して9割を作らせた。
https://github.com/tdiary/tdiary-core/blob/master/.github/workflows/build-image.yml
作らせている中で、docker/metadata-action
という見慣れない step を使っていて、なんだこれと思ったら git の tag などを受け取って docker でよくある 5.4.0 を 5 と 5.4 にも分解するというやつだった。
- name: Extract metadata
id: meta
uses: docker/metadata-action@v5
with:
images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}
tags: |
type=ref,event=branch
type=ref,event=tag
type=semver,pattern={{version}}
type=semver,pattern={{major}}.{{minor}}
type=semver,pattern={{major}}
一見便利そうなんだけど、バージョンの分解が semver 準拠らしく、v5.4.0.beta1
みたいな RubyGems でよく使われるバージョンは invalid で分解できないという最悪な感じだった。v5.4.0beta1
とか v5.4.0-beta1
などは分解できるらしいけど、逆にこっちは RubyGems では invalid っていうね。本当に地獄。
上にある type=ref,event=tag
で v5.4.0.beta1
というタグを強引に追加はできるけど、vがいらないんだよなあ...。正規表現マッチで独自に分解すればなんとかなりそうなので、その辺はまた今度。
自動車税に続いて固定資産税の納税通知が来ていた。
ただ振替設定しているところからこの金額を振替するしますね、という内容のみで自動車税みたいに実際に支払うというアクションがなくて少し寂しいというよくわからない感じになった。