From 119abafe9d6444cf6b497a1875ef2acc5f21dd56 Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Fri, 16 Jan 2026 13:10:29 +0900 Subject: [PATCH 1/2] Support to build with Ruby 4.0 We need to specify HEAD commit of middleman. The current release version didn't support Ruby 4.0 yet. --- Gemfile | 3 +- Gemfile.lock | 228 +++++++++++++++++++++++++++------------------------ 2 files changed, 121 insertions(+), 110 deletions(-) diff --git a/Gemfile b/Gemfile index 18343cc..bfe6b30 100644 --- a/Gemfile +++ b/Gemfile @@ -2,7 +2,8 @@ source "https://rubygems.org" gem "opal", "~> 1.8.2" gem "opal-browser" -gem "middleman" +gem "middleman", git: "https://github.com/middleman/middleman.git" +gem "contracts", ">= 0.17.3" gem "middleman-livereload" gem "middleman-syntax" gem "middleman-blog" diff --git a/Gemfile.lock b/Gemfile.lock index 9b86ba1..15f71d7 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -1,25 +1,62 @@ +GIT + remote: https://github.com/middleman/middleman.git + revision: 73665ad67263a1b52a6ed57662c0518a57a21659 + specs: + middleman (4.6.2) + middleman-cli (= 4.6.2) + middleman-core (= 4.6.2) + middleman-cli (4.6.2) + thor (>= 0.17.0, < 2) + middleman-core (4.6.2) + activesupport (>= 6.1) + addressable (~> 2.4) + bundler (> 2.0) + coffee-script (~> 2.2) + contracts + dotenv + erubi + execjs (~> 2.0) + fast_blank + fastimage (~> 2.0) + haml (>= 4.0.5, < 7) + hamster (~> 3.0) + hashie (>= 3.4, < 6.0) + i18n (>= 1.6, < 1.15) + kramdown (~> 2.4) + listen (~> 3.0) + memoist (~> 0.14) + padrino-helpers (>= 0.15, < 0.17) + parallel + rack (>= 3) + rackup + sassc (~> 2.0) + servolux + tilt (~> 2.2) + toml + uglifier (>= 3, < 5) + webrick + GEM remote: https://rubygems.org/ specs: - activesupport (8.0.2) + activesupport (8.1.2) base64 - benchmark (>= 0.3) bigdecimal concurrent-ruby (~> 1.0, >= 1.3.1) connection_pool (>= 2.2.5) drb i18n (>= 1.6, < 2) + json logger (>= 1.4.2) minitest (>= 5.1) securerandom (>= 0.3) tzinfo (~> 2.0, >= 2.0.5) uri (>= 0.13.1) - addressable (2.8.7) - public_suffix (>= 2.0.2, < 7.0) + addressable (2.8.8) + public_suffix (>= 2.0.2, < 8.0) ast (2.4.3) - base64 (0.2.0) - benchmark (0.4.0) - bigdecimal (3.1.9) + base64 (0.3.0) + bigdecimal (4.0.1) capybara (3.40.0) addressable matrix @@ -33,15 +70,15 @@ GEM coffee-script-source execjs coffee-script-source (1.12.2) - concurrent-ruby (1.3.5) - connection_pool (2.5.0) - contracts (0.17.2) - cuprite (0.15.1) + concurrent-ruby (1.3.6) + connection_pool (3.0.2) + contracts (0.17.3) + cuprite (0.17) capybara (~> 3.0) - ferrum (~> 0.15.0) - diff-lcs (1.6.1) - dotenv (3.1.7) - drb (2.2.1) + ferrum (~> 0.17.0) + diff-lcs (1.6.2) + dotenv (3.2.0) + drb (2.2.3) em-websocket (0.5.3) eventmachine (>= 0.12.9) http_parser.rb (~> 0) @@ -50,108 +87,79 @@ GEM execjs (2.10.0) fast_blank (1.0.1) fastimage (2.4.0) - ferrum (0.15) + ferrum (0.17.1) addressable (~> 2.5) + base64 (~> 0.2) concurrent-ruby (~> 1.1) webrick (~> 1.7) websocket-driver (~> 0.7) - ffi (1.17.1) - ffi (1.17.1-aarch64-linux-gnu) - ffi (1.17.1-aarch64-linux-musl) - ffi (1.17.1-arm-linux-gnu) - ffi (1.17.1-arm-linux-musl) - ffi (1.17.1-arm64-darwin) - ffi (1.17.1-x86-linux-gnu) - ffi (1.17.1-x86-linux-musl) - ffi (1.17.1-x86_64-darwin) - ffi (1.17.1-x86_64-linux-gnu) - ffi (1.17.1-x86_64-linux-musl) - haml (6.3.0) + ffi (1.17.3) + ffi (1.17.3-aarch64-linux-gnu) + ffi (1.17.3-aarch64-linux-musl) + ffi (1.17.3-arm-linux-gnu) + ffi (1.17.3-arm-linux-musl) + ffi (1.17.3-arm64-darwin) + ffi (1.17.3-x86-linux-gnu) + ffi (1.17.3-x86-linux-musl) + ffi (1.17.3-x86_64-darwin) + ffi (1.17.3-x86_64-linux-gnu) + ffi (1.17.3-x86_64-linux-musl) + haml (6.4.0) temple (>= 0.8.2) thor tilt hamster (3.0.0) concurrent-ruby (~> 1.0) - hashie (5.0.0) - http_parser.rb (0.8.0) - i18n (1.14.7) + hashie (5.1.0) + logger + http_parser.rb (0.8.1) + i18n (1.14.8) concurrent-ruby (~> 1.0) + json (2.18.0) kramdown (2.5.1) rexml (>= 3.3.9) listen (3.9.0) rb-fsevent (~> 0.10, >= 0.10.3) rb-inotify (~> 0.9, >= 0.9.10) logger (1.7.0) - matrix (0.4.2) + matrix (0.4.3) memoist (0.16.2) - middleman (4.6.0) - middleman-cli (= 4.6.0) - middleman-core (= 4.6.0) - middleman-blog (4.0.3) + middleman-blog (4.2.1) addressable (~> 2.3) middleman-core (>= 4.0.0) tzinfo (>= 0.3.0) - middleman-cli (4.6.0) - thor (>= 0.17.0, < 1.3.0) - middleman-core (4.6.0) - activesupport (>= 6.1) - addressable (~> 2.4) - bundler (~> 2.0) - coffee-script (~> 2.2) - contracts - dotenv - erubi - execjs (~> 2.0) - fast_blank - fastimage (~> 2.0) - haml (>= 4.0.5) - hamster (~> 3.0) - hashie (>= 3.4, < 6.0) - i18n (>= 1.6, < 1.15) - kramdown (~> 2.4) - listen (~> 3.0) - memoist (~> 0.14) - padrino-helpers (~> 0.15.0) - parallel - rack (>= 3) - rackup - sassc (~> 2.0) - servolux - tilt (~> 2.2) - toml - uglifier (>= 3, < 5) - webrick middleman-gh-pages (0.4.1) rake (> 0.9.3) - middleman-livereload (3.4.7) + middleman-livereload (3.5.0) em-websocket (~> 0.5.1) middleman-core (>= 3.3) - rack-livereload (~> 0.3.15) - middleman-syntax (3.4.0) + rack-livereload (~> 0.6.1) + middleman-syntax (3.6.1) middleman-core (>= 3.2) rouge (~> 3.2) mini_mime (1.1.5) mini_portile2 (2.8.9) - minitest (5.25.5) - nio4r (2.7.4) - nokogiri (1.18.9) + minitest (6.0.1) + prism (~> 1.5) + nio4r (2.7.5) + nokogiri (1.19.0) mini_portile2 (~> 2.8.2) racc (~> 1.4) - nokogiri (1.18.9-aarch64-linux-gnu) + nokogiri (1.19.0-aarch64-linux-gnu) racc (~> 1.4) - nokogiri (1.18.9-aarch64-linux-musl) + nokogiri (1.19.0-aarch64-linux-musl) racc (~> 1.4) - nokogiri (1.18.9-arm-linux-gnu) + nokogiri (1.19.0-arm-linux-gnu) racc (~> 1.4) - nokogiri (1.18.9-arm-linux-musl) + nokogiri (1.19.0-arm-linux-musl) racc (~> 1.4) - nokogiri (1.18.9-arm64-darwin) + nokogiri (1.19.0-arm64-darwin) racc (~> 1.4) - nokogiri (1.18.9-x86_64-darwin) + nokogiri (1.19.0-x86_64-darwin) racc (~> 1.4) - nokogiri (1.18.9-x86_64-linux-gnu) + nokogiri (1.19.0-x86_64-linux-gnu) racc (~> 1.4) - nokogiri (1.18.9-x86_64-linux-musl) + nokogiri (1.19.0-x86_64-linux-musl) racc (~> 1.4) opal (1.8.2) ast (>= 2.3.0) @@ -159,49 +167,50 @@ GEM opal-browser (0.3.5) opal (>= 1.0, < 2.0) paggio (>= 0.3.0) - padrino-helpers (0.15.3) + padrino-helpers (0.16.0) i18n (>= 0.6.7, < 2) - padrino-support (= 0.15.3) - tilt (>= 1.4.1, < 3) - padrino-support (0.15.3) + padrino-support (= 0.16.0) + tilt (>= 2.1, < 3) + padrino-support (0.16.0) paggio (0.3.0) - parallel (1.26.3) - parser (3.3.7.4) + parallel (1.27.0) + parser (3.3.10.1) ast (~> 2.4.1) racc parslet (2.0.0) - public_suffix (6.0.1) - puma (6.6.0) + prism (1.8.0) + public_suffix (7.0.2) + puma (7.1.0) nio4r (~> 2.0) racc (1.8.1) - rack (3.1.18) - rack-livereload (0.3.17) - rack + rack (3.1.19) + rack-livereload (0.6.1) + rack (>= 3.0, < 3.2) rack-test (2.2.0) rack (>= 1.3) - rackup (2.2.1) + rackup (2.3.1) rack (>= 3) - rake (13.2.1) + rake (13.3.1) rb-fsevent (0.11.2) rb-inotify (0.11.1) ffi (~> 1.0) redcarpet (3.6.1) - regexp_parser (2.10.0) - rexml (3.4.2) + regexp_parser (2.11.3) + rexml (3.4.4) rouge (3.30.0) - rspec (3.13.0) + rspec (3.13.2) rspec-core (~> 3.13.0) rspec-expectations (~> 3.13.0) rspec-mocks (~> 3.13.0) - rspec-core (3.13.3) + rspec-core (3.13.6) rspec-support (~> 3.13.0) - rspec-expectations (3.13.3) + rspec-expectations (3.13.5) diff-lcs (>= 1.2.0, < 2.0) rspec-support (~> 3.13.0) - rspec-mocks (3.13.2) + rspec-mocks (3.13.7) diff-lcs (>= 1.2.0, < 2.0) rspec-support (~> 3.13.0) - rspec-support (3.13.2) + rspec-support (3.13.6) sass (3.7.4) sass-listen (~> 4.0.0) sass-listen (4.0.0) @@ -211,20 +220,20 @@ GEM ffi (~> 1.9) securerandom (0.4.1) servolux (0.13.0) - temple (0.10.3) - terser (1.2.5) + temple (0.10.4) + terser (1.2.6) execjs (>= 0.3.0, < 3) - thor (1.2.2) - tilt (2.6.0) + thor (1.5.0) + tilt (2.7.0) toml (0.3.0) parslet (>= 1.8.0, < 3.0.0) tzinfo (2.0.6) concurrent-ruby (~> 1.0) uglifier (4.2.1) execjs (>= 0.3.0, < 3) - uri (1.0.4) - webrick (1.9.1) - websocket-driver (0.7.7) + uri (1.1.1) + webrick (1.9.2) + websocket-driver (0.8.0) base64 websocket-extensions (>= 0.1.0) websocket-extensions (0.1.5) @@ -250,8 +259,9 @@ PLATFORMS DEPENDENCIES capybara + contracts (>= 0.17.3) cuprite - middleman + middleman! middleman-blog middleman-gh-pages middleman-livereload @@ -266,4 +276,4 @@ DEPENDENCIES webrick BUNDLED WITH - 2.6.6 + 4.0.4 From 528420ac741fcc71c30eae76a4186c6f46e43d1c Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Fri, 16 Jan 2026 13:12:02 +0900 Subject: [PATCH 2/2] Use 4.0 --- .github/workflows/deploy.yml | 2 +- .github/workflows/test.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 6e42454..e4669d4 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -24,7 +24,7 @@ jobs: - name: Setup Ruby uses: ruby/setup-ruby@v1 with: - ruby-version: '3.4' + ruby-version: '4.0' bundler-cache: true - name: Setup Pages id: pages diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 49b27fe..7ce0839 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -15,7 +15,7 @@ jobs: - name: Setup Ruby uses: ruby/setup-ruby@v1 with: - ruby-version: "3.4" + ruby-version: "4.0" bundler-cache: true - name: Run RSpec run: bundle exec rake