This may not be the place for the question, but I am a Jekyll user and not a Ruby user (outside of Jekyll), so the issue is most likely related to something within my versioning.
While running bundle exec jekyll serve
a few days ago was properly serving a static site locally, it stopped working when I tried it today. Instead, I received this error:
Could not find minitest-5.14.1 in any of the sources
Run `bundle install` to install missing gems.
When running bundle install
, I receive this one:
Fetching gem metadata from https://rubygems.org/.........
zeitwerk-2.3.0 requires ruby version >= 2.4.4, which is incompatible with the current version, ruby 2.3.7p456
I know that I have some older versions here, but I am working with the system I know and it has been stable up until now. I have no updated Ruby or otherwise made any changes to these systems (that I'm aware of...). I run macOS 10.14.6 and have not made any updates to the OS recently, either.
The beginning of bundle env
returns:
Bundler 2.2.15
Platforms ruby, universal-darwin-18
Ruby 2.3.7p456 (2018-03-28 revision 63024) [universal.x86_64-darwin18]
Full Path /System/Library/Frameworks/Ruby.framework/Versions/2.3/usr/bin/ruby
After looking at a number of sites, it is hard to know what to try changing without falling into rabbit holes that require either (1) learning more about Ruby environments than I would like to or (2) upgrading things that may otherwise break my older Jekyll installation.
Thanks for any advice.
Update...
I had two versions installed, one was the macOS system version (2.3) and the other was from Homeborew (2.7). To solve the problem, I followed advice from elsewhere and setup rvm according to the given directions, and installed 3.0. I set that as default and still received the same errors.
Answering myself in case someone ends up here:
Using RVM solved the problem, but I had installed 3.0 instead of Ruby 2.7. This caused a different set of incompatibilities. Once I also added 2.7 and ran bundle install
, bundle exec jekyll serve
was able to start up properly.