Jekyll is giving me an error after updating Ubuntu to 22.04

Hi all,

Yesterday, I had a running system and I upgraded my OS to Ubuntu 22.04f(yes this was mistake number 1). Today when I try to run my jekyll site locally, which was working yesterday I get this error:

	bundle exec jekyll serve
	Configuration file: /home/matchday/dev/libero/main-website/_config.yml
	            Source: /home/matchday/dev/libero/main-website/app
	       Destination: /home/matchday/dev/libero/main-website/_site
	 Incremental build: disabled. Enable with --incremental
	       Jekyll Feed: Generating feed for posts
	      Jekyll 4.2.2   Please append `--trace` to the `serve` command 
	                     for any additional information or backtrace. 
	/home/matchday/gems/bundler/gems/jekyll-assets-056d2c88719e/lib/jekyll/assets/patches/writer.rb:53:in `after_hook': wrong number of arguments (given 2, expected 1; required keywords: asset, env) (ArgumentError)
		from /home/matchday/gems/bundler/gems/jekyll-assets-056d2c88719e/lib/jekyll/assets/patches/writer.rb:28:in `call'
		from /home/matchday/gems/gems/sprockets-4.0.3/lib/sprockets/manifest.rb:196:in `block (3 levels) in compile'
		from /home/matchday/gems/gems/concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/safe_task_executor.rb:24:in `block in execute'
		from /home/matchday/gems/gems/concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/mutex_lockable_object.rb:47:in `block in synchronize'
		from /home/matchday/gems/gems/concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/mutex_lockable_object.rb:47:in `synchronize'
		from /home/matchday/gems/gems/concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/mutex_lockable_object.rb:47:in `synchronize'
		from /home/matchday/gems/gems/concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/safe_task_executor.rb:22:in `execute'
		from /home/matchday/gems/gems/concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promise.rb:564:in `block in realize'
		from /home/matchday/gems/gems/concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:352:in `run_task'
		from /home/matchday/gems/gems/concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:343:in `block (3 levels) in create_worker'
		from /home/matchday/gems/gems/concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:334:in `loop'
		from /home/matchday/gems/gems/concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:334:in `block (2 levels) in create_worker'
		from /home/matchday/gems/gems/concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:333:in `catch'
		from /home/matchday/gems/gems/concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:333:in `block in create_worker'

I went to look at the environment settings and see this:

ruby -v
ruby 3.0.2p107 (2021-07-07 revision 0db68f0233) [x86_64-linux-gnu]

bundle -v
Bundler version 2.3.12

jekyll -v
jekyll 4.2.2

Any suggestion or help would be appreciated as I’d rather not have to downgrade my system. If there’s more info I should provide or some docs I should read, please let me know

Since you posted your question there, I know that you are aware, so this is mainly for everybody else facing the same problem: It’s being discussed on StackOverflow.

Also, in case this forum is monitored by any jekyll developers: “This” (see link) is not a sustainable solution (at all), so I believe jekyll shoul just support Ruby >= 3.

Hi, I have a similar problem.
Same thing, upgraded to Ubuntu 22.04 from 21.10 where Jekyll and associated utilities worked fine.
Now, I do such things as:

gem install jekyll bundler

and get

<internal:/usr/lib/ruby/vendor_ruby/rubygems/core_ext/kernel_require.rb>:85:in `require': incompatible library version - /home/richard/gems/gems/psych-3.3.1/lib/ (LoadError)
	from <internal:/usr/lib/ruby/vendor_ruby/rubygems/core_ext/kernel_require.rb>:85:in `require'
	from /home/richard/gems/gems/psych-3.3.1/lib/psych.rb:13:in `<top (required)>'
	from <internal:/usr/lib/ruby/vendor_ruby/rubygems/core_ext/kernel_require.rb>:85:in `require'
	from <internal:/usr/lib/ruby/vendor_ruby/rubygems/core_ext/kernel_require.rb>:85:in `require'
	from /usr/lib/ruby/vendor_ruby/rubygems.rb:609:in `load_yaml'
	from /usr/lib/ruby/vendor_ruby/rubygems/config_file.rb:346:in `load_file'
	from /usr/lib/ruby/vendor_ruby/rubygems/config_file.rb:189:in `initialize'
	from /usr/lib/ruby/vendor_ruby/rubygems/gem_runner.rb:73:in `new'
	from /usr/lib/ruby/vendor_ruby/rubygems/gem_runner.rb:73:in `do_configuration'
	from /usr/lib/ruby/vendor_ruby/rubygems/gem_runner.rb:38:in `run'
	from /usr/bin/gem:13:in `<main>'

It’s saying psych-3.3.1/lib/ is an “incompatible version” - is that version number hard-coded? Could I perhaps just change it to match my upgraded version?

@Eoin-Murphy Did you manage to get it going?

I just installed fired-up Ubuntu (my first time, actually) and was able to use Jekyll. I do not know the differences in different version numbers because this is a new install, not an upgrade.

My Ruby and Jekyll version info is the same, other than the Ruby architecture used, however Bundler is different:

ruby -v
ruby 3.0.2p107 (2021-07-07 revision 0db68f0233) [aarch64-linux-gnu]

bundle -v
Bundler version 2.3.19

jekyll -v
jekyll 4.2.2

While I doubt this is a resolution to your issue, you could update the bundler:

bundle update --bundler
bundle install
bundle update

I am not sure if I have any other great solutions. If you have a public repo, maybe share that and I can try to see if I can build it locally.

Dear BillRaymond:
I apologize for my off-topic remark, but you are amazing in the lengths to which you go to help here. Fantastic, thank you!

1 Like

Thanks @michaelbach! I appreciate it!

We just saw a member’s resolution for a potentially similar Ubuntu issue here that might be helpful to those on this thread: