過去のGitHub Actionsのbuild時間を取得して集計してグラフにする

継続的にメンテナンスするのではなくて、雑な使い捨てでいいならshellscriptとjq職人芸でいけるので頑張ってしまったけれど、継続的にやるならもっと違うもので書いた方がメンテナンスしやすいと思います。

細かい部分はいくらでも改善の余地があるとは思いますが、とりあえず動いたのでヨシ・・・!?

続きを読む

GitHub ActionsのSummaryで直接すぐ見れる形式でsbtのtaskのchartを出す方法

OSSにしてpublishしようかと思っていたけど、細かい部分をいい感じにするのが面倒なので一旦雑に貼り付けておく

(publishは後でやるかもしれない、未定)

続きを読む

1つのsbt projectでjavaagentの定義と利用をするsample。あるいはsbtのTests.Setupの代替案

JVMにはjavaagentという特別な仕組みがあるのを知ってますか?

自分が雑に思いついた具体例を書いておくと、例えばdatadogのtrace用のSDKがjavaagentで実装されてますね。 使用例は色々あるかもしれませんが、javaagentの例や、それの仕組みを詳細に解説するのが今回の目的ではないので、そこの詳細は各自ググってください。

すごく大雑把にいうと、特定の規約に従った普通とは違ったclassを定義して、そのpathを -javaagent: という引数とともに渡すと、普通のmainより先に特別に呼ばれる、という感じだと思います。 (正確には、単に先に呼ばれるより面白いことが出来るはずだが、今回はそこは使わないので説明割愛)

また、

続きを読む

Scala 3のCapture Checkingでローンを確実に返済!

わざと怪しいタイトルにしてみましたが、こんにちは。

雑にググった限り、これを書いてる2024年5月現在、日本語でのScala 3のCapture Checkingの解説記事を見たことがない気がするので、 自分も1%くらいしか理解してない気がしますが、書いてみることにしました。

公式のサンプルを別の視点というか書き方で説明しなおしたり、もう少し色々なパターン試した程度の情報でしかないので、おそらく公式のドキュメントをしっかり読んだ人にとっては、特に新しい情報はありません。

さて、公式には以下のようなサンプルが載っています。

続きを読む