Skip to content

chore: Ruby を 3.4.4 から 4.0.5 に更新#33

Merged
yasulab merged 1 commit into
mainfrom
update-ruby-4.0.5
Jul 12, 2026
Merged

chore: Ruby を 3.4.4 から 4.0.5 に更新#33
yasulab merged 1 commit into
mainfrom
update-ruby-4.0.5

Conversation

@yasulab

@yasulab yasulab commented Jul 12, 2026

Copy link
Copy Markdown
Member

概要

.ruby-version3.4.4 → 4.0.5 に更新しました。

GitHub Actions の ruby/setup-ruby@v1 はバージョン指定なしで .ruby-version を参照する設定のため、ワークフロー側の変更は不要です。

Gemfile.lock の変更について

bundle install による再解決で、Ruby バージョン以外に 2 種類の変更が入っています。

  1. html-proofer 5.0.10 → 5.2.1
    5.0.10 は Ruby 4 で解決できないため繰り上がりました。Ruby 3.5 以降 benchmark が bundled gem 化されたことに対応し、5.2.1 では依存に benchmark が明示されています。

  2. ffi / nokogiri の汎用 ruby プラットフォーム版を追加
    Ruby 4.0 向けのプリコンパイル済みバイナリがまだ提供されておらず、ソースからのネイティブビルドにフォールバックするためです。CI(Linux)用の x86_64-linux エントリは元のまま残っているので、そちらは引き続きプリコンパイル版が使われます。

動作確認

  • bundle exec jekyll build — 成功(ビルドフックの GeoJSON 生成・ロゴキャッシュも含めて完走)
  • bundle exec rake test — minitest 6 runs / 0 failures 0 errors、html-proofer も finished successfully

なお async gem から Scheduler should implement #fiber_interrupt、html-proofer から IO::Buffer is experimental という警告が出ますが、これは gem 側が Ruby 4 の新 API に未追従なだけで、テスト結果には影響していません。

GitHub Actions の ruby/setup-ruby は .ruby-version を参照するため、
ワークフロー側の変更は不要。

bundle install による Gemfile.lock の再解決で以下が発生:
- html-proofer 5.0.10 → 5.2.1
  (5.0.10 は Ruby 4 で解決できないため。benchmark が bundled gem
    化されたことに対応した 5.2.1 に繰り上げ)
- ffi / nokogiri の汎用 ruby プラットフォーム版を追加
  (Ruby 4.0 向けプリコンパイル版が未提供でソースビルドに
    フォールバックするため。CI 用の linux エントリは据え置き)

検証: jekyll build 成功、rake test も minitest 6 runs / 0 failures、
html-proofer も finished successfully。
@yasulab
yasulab merged commit 647bcff into main Jul 12, 2026
2 checks passed
@yasulab
yasulab deleted the update-ruby-4.0.5 branch July 12, 2026 05:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant