トップ 追記 RSS feed

HsbtDiary


2026/05/11 (月) [長年日記]

Bundler の Gemfile に override を実装した

とはいえ作ったのは claude なのだけど、以下の2つで override 機能を実装した。

具体的には以下のような DSL で Gemfile によって定義される gem のバージョンと依存ツリーを操作可能になる。

# rails gem のバージョンを直接/推移依存の両方を 8.0 以上に強制上書き
override "rails",   version: ">= 8.0"
# 1つ目と同様のケースで rails gem のバージョンの上限(`< 8.0`など)を撤廃
override "rails",   version: :ignore_upper
# legacy gem に対して指定されているバージョン指定を全部撤廃
override "legacy",  version: nil
# Gemfile の全ての gem について `required_ruby_version` の上限(`< 4.0`)を撤廃
override :all,      required_ruby_version: :ignore_upper
# old_gem 単独について上限を撤廃
override "old_gem", required_ruby_version: :ignore_upper
# old_gem 単独について rubygems の上限を撤廃
override "old_gem", required_rubygems_version: :ignore_upper

使うのは Ruby バージョンの上限撤廃とか、rails を 8 未満にすんな!とかそういう感じだと思うけど、やりようによっては色々できるようになる。これは流石に 4.0 には backport してリリースすることはないので RubyGems 4.1 か、Ruby 4.1 のリリースを待ってください。

ruby-dev バージョンを使えば今すぐにでも試せるので、期待とおかしいのだが、とかは報告してもらえると喜びます。

RubyGems のリリーススクリプトを修正

RubyGems 4.0.11 のリリースをやってる時に rebase merge した pull request を正しく backport できない、というバグを見つけて「マジか...」となり、その時は skip したので真面目に調べて直した。

問題を発見して、直し方を指示して、直したのは claude である。

これで、squash merge、rebase merge、merge commit の3パターン全てについて pull request を backport できるようになって、さらにそれぞれのケースで merge 済みの pull request も正しく検出できるようになったのでより堅牢なリリースができるようになると思う。乞うご期待。


2026/05/10 (日) [長年日記]

ベランダガーデンの手入れ用に部屋の水道を外に出せるようにした

ベランダガーデン用にタンクを用意してそこから水を吸い上げて散水をしているのだけど、このタンクに水を補充するという作業が数週間に1度、夏だと毎週バケツリレーをしていて流石にこれはいつか事故るなという予感がしたので、部屋の中からなんとかして水を弾けるようにした。

うちの水道の蛇口は特殊な形状のものが多くて、ホームセンターなどで売ってるものだと形が合わないものが多く、洗濯機の注水口から分岐する器具をつけるという方向で進めてみた。

分岐する器具もホースも TAKAGI というやつのを使って、結果としては十分に水を引けることがわかって今後はこれを使うことにした。このホース、シャワーではなくジェット噴射っぽいモードにするとケルヒャーっぽくベランダの汚れ落としにも使えて便利。

一通り満足した後に、洗濯機から分岐したホースを外すと、栓を閉めているにもかかわらず水が逆流してやや水浸しになってしまい、だめだこりゃ...となったので予備で買っておいた風呂場の蛇口に取り付ける器具を試してみたら思いの外ちゃんと取り付いてしまって、ホースを外した時の水あふれがあったのとしても、風呂場なのでよし!って感じで「これでよかったんや...」となってしまった。

結局、洗濯機経由の器具は全部取り外して、風呂場から水を引っ張ってベランダに使う、ということにした。お湯かどうかだけ気をつけなくてはいけない。

東銀座で中華

妻がお粥を食べたいというので、東銀座にある中国料理の店へ。と思いきや出かける直前になって、クレカを入れているカードケースがない!ということに気がついて、探したものの見つからず、eufy のトラッカーを見ると家にはあるけど、音は鳴らないという最悪な感じだった。とはいえ、探し始めて時間を潰してもしょうがないと目当ての店へ。

東銀座、サンドイッチの店にインバウンドの客がめちゃくちゃ行列を作っていて、日本人は誰も並んでない、ってのがシュールだった。別にサンドイッチに並ばなくてよくない?とは思うが何が流行るのかよくわからんなあ。で、料理は美味しかったのだけど、出かけてからずーっとカードケースをどこに置いたかなあというのを考えていて味の記憶がまるでない...。

帰りに神田でケーキでも、と思ったらこっちはこっちで大行列だったので秋葉原の駅でケーキを買ってサクッと帰宅。で、帰宅してからカードケースの捜索を開始したら、一瞬で見つかって脱力してしまった。いや、見つかったからいいんだけど...。


2026/05/09 (土) [長年日記]

引き続き NTE

連休明けから少し働いて連休、ということで NTE をできるところまで再開。初期バージョンで用意されたメインストーリーが1つ残っていたので進めていた。しかし、ストーリーはよくわからないなあ、って感じで終わってしまった。あと専用のエリアに飛ばされる上に異様に長くてこの辺はちょっとイマイチだな、とは思った。

で、ストーリーを終えてみると、限定で登場していたナナリが拳法キャラかつ壁登りを重力変化で走ってできるキャラで便利そうだったので無料でかき集めた石を消化して引いておいた。

まだレベル上限が40でフラフラしてるので実践投入も割とすぐでメインに入れて殴りまくり!でまあまあ楽しい。

ストーリーの後はサブクエストをちまちま消化。見かけただけの豆腐屋の車がちゃんと配達クエストになってて、86!?って内容になってて笑った。しかし、ガードレールのドリフトコースは異様にむずくて未クリア...。後はコンテンツの追加を待ちつつ、キャラ育成と装備を揃える方向にシフトかなあ。

その他のゲーム

NTE で時間を使いつつ、それ以外のゲームもまあまあ溜まっているので NTE のストーリームービーの最中でできるものはちまちま進めていた。

スターレイルの方はサイコロゲームが改良されて出てきたので、こっちも進められるところまで進行してマルチプレイが残った、ってところまで。サイコロゲーム、カジュアルで楽っちゃ楽だけどイマイチキャラを変えて攻略が、みたいなところまで気持ちが辿り着けない。

ゼンレスゾーンゼロのシーズンクエストはボンプを操作してマインクラフト風のエリアに行って冒険するというやつ。チュートリアルと最初のエリアくらいを軽くプレイして残りはまた後で。