先週リリースした 4.0.13 から cooldown が動いてないんだけど、というケースが2つほどあり、すぐに直した方がいいなこれは、となったので直した上で 4.0.14 を出した。
https://blog.rubygems.org/2026/06/10/4.0.14-released.html
たぶん 4.0.14 のリリースで大体のケースでは常用できると思うので、次は RubyGems の方の gem コマンドへの統合をやっていこうと思う。これ、bundler と違ってまずは index の読み込み箇所を変えてから、ってなるので簡単ではないんだよなー...。頑張ろう。
macOS というか Windows も含めて可能な限りデフォルト設定かつ、新しいアプリケーションは入れないで暮らしたいので Raycast ではなく Spotlight を使うことにした。というのも、macOS Golden Gate の beta を入れたのに伴って、勤務先から貸与されているマシンを macOS 26 にやっとアップデートできたので拡張された Spotlight を全部の環境で使えるようになった、ってわけ。
で、Raycast の機能も別に込み入ったところまで使ってないので Spotlight に切り替えてそれほど困ってなかったんだけど、クリップボード履歴が Spotlight にもあるものの Command + space > Command + 4 とキーストロークが2回ってのが最悪で、リマップできんのかと調べてもダメっぽいので Karabiner-Elements を使って以下のような modofier を登録した。
{
"description": "Show Clipboard history on Tahoe",
"manipulators": [
{
"from": {
"key_code": "v",
"modifiers": {
"mandatory": ["left_shift", "left_command"],
"optional": ["any"]
}
},
"to": [
{
"key_code": "spacebar",
"modifiers": ["left_command"]
},
{
"key_code": "4",
"modifiers": ["left_command"]
}
],
"type": "basic"
}
]
}
"Shift + Command + v" にしてるけど、好みで適当に書き換えて使ってください。これで普段暮らしは大丈夫になったのでよかった。
今週は前半は Matz がおらず、話題もそれほどなかったので無音の時間が続いていたけど後半になってからいつも通り雑談の開始。
この日は 朝から Opus 4.8 の調子なんか悪くないか? みたいな話をしつつ、脆弱性見つけて、みたいなストレートなプロンプトだとブロックされる、とかそういう話など。この辺は自分もいろいろやってはいるのだけど、雑に書くことはできないのだった。
朝起きたら WWDC 2026 の話が出ていて、ざっくりと内容を把握してキーノートを見ると、ペアレンタルコントロールとか AI を使ってメールの返信を、みたいな内容はすごく年寄りっぽいなあと感じた。メインストリームが 40 代とか、後半になってきているのでそういうもんなんだろうけど。
で、細かい話はあとから出てくるのでおいといて、macOS 27 beta をインストールできるようになっていたので、OSS 用の開発マシンをアップデート。何が変わったのかわからないくらいで、利用者的にはいいのだろうけど、これはこれで過去最高に「うーむ」とはなった。
Ruby のビルドも 4.1.0-dev は問題なくビルドできるのを確認して、ひっそりとメンテしてる古いバージョン向けのビルダーも対応させておいた。
https://github.com/hsbt/old-ruby-build
上のスクリプトを使うと、なんと macOS 27 beta でも Ruby 1.8.7 から 4.1.0-dev まで全ての Ruby をビルドして動かせるようになって便利。
6月の開発者会議が 11 日にあるので、事前にアジェンダをザーッと眺めてから、最近の issue とかメールなどで直接やってくる各種報告を洗い出して、これは何、あれはそれ、みたいな話をしていた。
この辺、最近はほとんどを claude を使って話をまとめさせるというのをやっていて、メールとか認証が必要なサービスとかを参照させるのがめちゃくちゃだるいので、claude を使って API client を雑に作らせて、それを使ってデータを読み込んで考えて、とかそういうことばかりやっている。
そんな感じで、僕だけでもないのだろうけど、何かを作る、というのは claude にぶん投げて終わりなので、むしろ難しい問いとどう判断するか、ということばかり人間の仕事になっていて、異様に疲れてしまうのだよなあ。
浜松町の駅付近で開催される https://ai-engineering-summit-tokyo.findy-tools.io/2026-summer というイベントに参加してきた。浜松町、渋谷駅みたいに大工事中で Google Maps を見てもどこから出ればいいのというレベルでわからなかった...。
ちょうど昼時だったのでぶらっと餃子の美味しそうな店へ。あとから調べると歓迎といえば、蒲田の羽根つき餃子3店舗のうちの1つらしく、かなりお得な気分になった。実際美味しかった。
イベントの方は、というと AI プロダクト、と呼ばれるもの、みんな色々作ってるんだなあというのはざっくりわかったけど、出てくる内容が割とどれも抽象的だなあという印象だった。実際、コードを書くレベルは AI にやらせているので、人間が話して伝えるのはふわっとした内容だけになるのはそれはそう。
あと、スライドが変わるたびにみんな撮影していて面白かった。資料を公開しているトークですら撮影しまくりなので、世の中にはいろんな人がいるなあ。
Psych 5.4.0 をリリースしてから ruby/rubygems や ruby/psych などに ambiguous specs warning というのが出るようになった、という報告が来ていて「あー、またあれか」となったので原因の rdoc の方から runtime dependency を外した
https://github.com/ruby/rdoc/pull/1725
これは rubygems の内部で rdoc をロードするときに psych を activate するときに default gems と普通にインストールした psych で異なるバージョンがあることによる warn なので、rdoc が psych を activate などしないでおもむろに require すればいいとして解決させた。
これ、別に psych 何ぞ使わなくても RubyGems が持ってる YAML のパーサーでオプションを解析すりゃそれでいいじゃん、とは思ったのだけど RDoc のオプションは Ruby のクラスを指定するみたいなことができるのがあるぽく、それは RubyGems の YAML パーサーは未対応なのだった...。こういう誰使ってんの、みたいのは消した方がいいんだろうなあ。