Repository navigation
Jekyll serve fails on Ruby 3.0 (webrick missing) #752
Description
Activity
Ruby 3.0 no longer comes with webrick
bundle add webrickReacted by Waldir Pimenta, Gabriel S., Jayan Praveen, Yi Li, fregante, John Perry, Konstantin Leonenko, azul-007, Jesse Johnston, rohit-aneja and 145 moreReacted by Spongebob, Andrew Gerst, Hritik Jain and Juan Carlos San Martín BravoReacted by Ömer Ayyıldız, San Askaruly, Phil Sakievich, Hua Shen, Simon Krull, Michele Righi, KRliang04, Spongebob, Abdulkadir Guven, Andrew Gerst and 1 moreReacted by mathematicsofpaul, Ashleigh Wilson, RokuSixology, Ömer Ayyıldız, Dominik Hodan, San Askaruly, Jérémie Godon, Hua Shen, Caro, Sophie Nguyen and 14 moreReacted by Spongebob, Erik Pillon, Umar Jamil, Andrew Gerst, xue-hr and Hritik JainReacted by kerry, Andrew Rico, Hua Shen, Simon Krull, Michele Righi, Spongebob and devishke-orangeHi! In general, we recommend (and support) running the github-pages gem with the Ruby version we're running in production (2.7.x). We don't yet support Ruby 3.0.0. Ruby 2.7.x still has webrick so I'd recommend using that until we've upgraded for your GitHub Pages needs!
Reacted by Waldir Pimenta, azul-007, Pradyun Gedam, Ekaterina, Michelle Blanchette, kbala97, Pavithra Eswaramoorthy, Joseph Harriott, Changdae Park, Rick Staa and 2 moreHi! In general, we recommend (and support) running the github-pages gem with the Ruby version we're running in production (2.7.x). We don't yet support Ruby 3.0.0. Ruby 2.7.x still has webrick so I'd recommend using that until we've upgraded for your GitHub Pages needs!
This really should be in the official documentation: it's severely lacking small details like this that takes hours digging around to figure out.
Totally. What a way to waste a Sunday trying to solve this after doing the responsible thing and using latest Ruby...
Reacted by John Perry, Herwindo Artono, Domizio Demichelis, strangehill, vlovic, Aditya Wagh, Stephan Michels, William Entriken, lums, Matthew Paul and 14 moreDefinitely needs to be added to the documentation.
Reacted by Anatole Beuzon, Raman Prasad, strangehill, vlovic, Aditya Wagh, Erik Eng, RaghavSinghal, Andrei Popescu, William Entriken, Matthew Paul and 15 moreDefinitely needs to be upgraded to support Ruby 3.0
Reacted by Matthew Paul, Hua Cao, aesir321, Julee Burdekin, Luke Hart, helmut carter, maxnotarangelo, vkSegfault, Cloudscale Bytes, Josh Hoke Davis and 4 morebundle add webrickThis saved me while I was trying to run "bundle exec jekyll serve"
Reacted by Steven Matison, javier-armendariz-zefr, Ines Boehm, Lee Namba, Harpreet Singh, Phil McCarthy, trigaten, JB, Leah Wasser, traumadata and 11 moreReacted by Leah WasserReacted by blp92Can we add the information about what is the current version of Ruby being used to build Github pages to the README?
Reacted by roorcoAll of the latest versions we're running on GitHub Pages are shown here: https://pages.github.com/versions/
There's even a JSON endpoint: https://pages.github.com/versions.json
I wrote a blog post a while back about staying up to date by using that endpoint. Not sure how well it works today but you could add to your gemfile:
ruby versions["ruby"]This will tell bundler to use the ruby version that GitHub Pages uses.
Reacted by Joseph Harriott and Andrew GerstReacted by Andrew GerstReacted by Pradyun Gedam, Jason Taylor, Bryan Braun, Andrew Gerst and Jan BrasnaReacted by Andrew GerstIf anyone would like to submit a PR to update the README, I'd be happy to review. I'll try to update the README soon if not.
- added 2 commits that reference this issue
on May 22, 2021 As suggested in imagej/imagej.github.io#133, adding
gem 'webrick'toGemfilefixed the problem on my end. Thank you!42 remaining items
- added 2 commits that reference this issue
on Nov 13, 2023 - added a commit that references this issue
on Nov 27, 2023 - added a commit that references this issue
on Dec 29, 2023 - added a commit that references this issue
on Jan 13, 2024 - added 2 commits that reference this issue
on Feb 5, 2024 - added a commit that references this issue
on Feb 9, 2024 - added a commit that references this issue
on Mar 22, 2024 - added a commit that references this issue
on Jun 2, 2024 - added a commit that references this issue
on Apr 15, 2025 This issue affects
- The site generated by GitHub Pages
- Building sites locally
What did you do (e.g., steps to reproduce)
bundle exec jekyll serveOn macOS 10.15 with Ruby 3.0.0 from Homebrew, using the latest github-pages in a Gemfile.
# Gemfile gem "github-pages" # Gemfile.lock: github-pages (209) jekyll (= 3.9.0) …What happened instead?
bundler: failed to load command: jekyll (/usr/local/lib/ruby/gems/3.0.0/bin/jekyll) /usr/local/lib/ruby/gems/3.0.0/gems/jekyll-3.9.0/lib/jekyll/commands/serve/servlet.rb:3:in `require': cannot load such file -- webrick (LoadError) from /usr/local/lib/ruby/gems/3.0.0/gems/jekyll-3.9.0/lib/jekyll/commands/serve/servlet.rb:3:in `<top (required)>' from /usr/local/lib/ruby/gems/3.0.0/gems/jekyll-3.9.0/lib/jekyll/commands/serve.rb:184:in `require_relative' from /usr/local/lib/ruby/gems/3.0.0/gems/jekyll-3.9.0/lib/jekyll/commands/serve.rb:184:in `setup' from /usr/local/lib/ruby/gems/3.0.0/gems/jekyll-3.9.0/lib/jekyll/commands/serve.rb:102:in `process' from /usr/local/lib/ruby/gems/3.0.0/gems/jekyll-3.9.0/lib/jekyll/commands/serve.rb:93:in `block in start' from /usr/local/lib/ruby/gems/3.0.0/gems/jekyll-3.9.0/lib/jekyll/commands/serve.rb:93:in `each' from /usr/local/lib/ruby/gems/3.0.0/gems/jekyll-3.9.0/lib/jekyll/commands/serve.rb:93:in `start' from /usr/local/lib/ruby/gems/3.0.0/gems/jekyll-3.9.0/lib/jekyll/commands/serve.rb:75:in `block (2 levels) in init_with_program' from /usr/local/lib/ruby/gems/3.0.0/gems/mercenary-0.3.6/lib/mercenary/command.rb:220:in `block in execute' from /usr/local/lib/ruby/gems/3.0.0/gems/mercenary-0.3.6/lib/mercenary/command.rb:220:in `each' from /usr/local/lib/ruby/gems/3.0.0/gems/mercenary-0.3.6/lib/mercenary/command.rb:220:in `execute' from /usr/local/lib/ruby/gems/3.0.0/gems/mercenary-0.3.6/lib/mercenary/program.rb:42:in `go' from /usr/local/lib/ruby/gems/3.0.0/gems/mercenary-0.3.6/lib/mercenary.rb:19:in `program' from /usr/local/lib/ruby/gems/3.0.0/gems/jekyll-3.9.0/exe/jekyll:15:in `<top (required)>' from /usr/local/lib/ruby/gems/3.0.0/bin/jekyll:23:in `load' from /usr/local/lib/ruby/gems/3.0.0/bin/jekyll:23:in `<top (required)>' from /usr/local/Cellar/ruby/3.0.0_1/lib/ruby/3.0.0/bundler/cli/exec.rb:63:in `load' from /usr/local/Cellar/ruby/3.0.0_1/lib/ruby/3.0.0/bundler/cli/exec.rb:63:in `kernel_load' from /usr/local/Cellar/ruby/3.0.0_1/lib/ruby/3.0.0/bundler/cli/exec.rb:28:in `run' from /usr/local/Cellar/ruby/3.0.0_1/lib/ruby/3.0.0/bundler/cli.rb:497:in `exec' from /usr/local/Cellar/ruby/3.0.0_1/lib/ruby/3.0.0/bundler/vendor/thor/lib/thor/command.rb:27:in `run' from /usr/local/Cellar/ruby/3.0.0_1/lib/ruby/3.0.0/bundler/vendor/thor/lib/thor/invocation.rb:127:in `invoke_command' from /usr/local/Cellar/ruby/3.0.0_1/lib/ruby/3.0.0/bundler/vendor/thor/lib/thor.rb:392:in `dispatch' from /usr/local/Cellar/ruby/3.0.0_1/lib/ruby/3.0.0/bundler/cli.rb:30:in `dispatch' from /usr/local/Cellar/ruby/3.0.0_1/lib/ruby/3.0.0/bundler/vendor/thor/lib/thor/base.rb:485:in `start' from /usr/local/Cellar/ruby/3.0.0_1/lib/ruby/3.0.0/bundler/cli.rb:24:in `start' from /usr/local/Cellar/ruby/3.0.0_1/lib/ruby/gems/3.0.0/gems/bundler-2.2.3/exe/bundle:49:in `block in <top (required)>' from /usr/local/Cellar/ruby/3.0.0_1/lib/ruby/3.0.0/bundler/friendly_errors.rb:130:in `with_friendly_errors' from /usr/local/Cellar/ruby/3.0.0_1/lib/ruby/gems/3.0.0/gems/bundler-2.2.3/exe/bundle:37:in `<top (required)>' from /usr/local/lib/ruby/gems/3.0.0/bin/bundle:23:in `load' from /usr/local/lib/ruby/gems/3.0.0/bin/bundle:23:in `<main>'Additional information
Reported upstream at jekyll/jekyll#8523. Upstream has fixed this in the main branch for the next Jekyll 4 release, however this is unlikely to benefit GitHub Pages anytime soon, so it might be good to add this here for the time being.
- added a commit that references this issue
on Oct 2, 2026
This issue affects
What did you do (e.g., steps to reproduce)
On macOS 10.15 with Ruby 3.0.0 from Homebrew, using the latest github-pages in a Gemfile.
What happened instead?
Additional information
Reported upstream at jekyll/jekyll#8523. Upstream has fixed this in the main branch for the next Jekyll 4 release, however this is unlikely to benefit GitHub Pages anytime soon, so it might be good to add this here for the time being.