docker-containers icon indicating copy to clipboard operation
docker-containers copied to clipboard

Jekyll image uses Ruby 3.0 which is not compatable with Jekyll

Open jtmiclat opened this issue 2 years ago • 0 comments

I was getting the following errors when using https://github.com/fastai/nbdev/blob/master/docker-compose.yml

jekyll_1    | Thank you for installing html-pipeline!
jekyll_1    | You must bundle Filter gem dependencies.
jekyll_1    | See html-pipeline README.md for more details.
jekyll_1    | https://github.com/jch/html-pipeline#dependencies
jekyll_1    | -------------------------------------------------
jekyll_1    | Configuration file: /data/docs/_config.yml
jekyll_1    |             Source: /data/docs
jekyll_1    |        Destination: /data/docs/_site
jekyll_1    |  Incremental build: disabled. Enable with --incremental
jekyll_1    |       Generating... 
jekyll_1    |       Remote Theme: Using theme fastai/nbdev-jekyll-theme
jekyll_1    |    GitHub Metadata: No GitHub API authentication could be found. Some fields may be missing or have incorrect data.
jekyll_1    |                     done in 1.239 seconds.
jekyll_1    | jekyll 3.9.0 | Error:  no implicit conversion of Hash into Integer
jekyll_1    | /var/lib/gems/3.0.0/gems/pathutil-0.16.2/lib/pathutil.rb:502:in `read': no implicit conversion of Hash into Integer (TypeError)
jekyll_1    |   from /var/lib/gems/3.0.0/gems/pathutil-0.16.2/lib/pathutil.rb:502:in `read'
jekyll_1    |   from /var/lib/gems/3.0.0/gems/jekyll-3.9.0/lib/jekyll/utils/platforms.rb:75:in `proc_version'
jekyll_1    |   from /var/lib/gems/3.0.0/gems/jekyll-3.9.0/lib/jekyll/utils/platforms.rb:40:in `bash_on_windows?'
jekyll_1    |   from /var/lib/gems/3.0.0/gems/jekyll-3.9.0/lib/jekyll/commands/build.rb:77:in `watch'
jekyll_1    |   from /var/lib/gems/3.0.0/gems/jekyll-3.9.0/lib/jekyll/commands/build.rb:43:in `process'
jekyll_1    |   from /var/lib/gems/3.0.0/gems/jekyll-3.9.0/lib/jekyll/commands/serve.rb:93:in `block in start'
jekyll_1    |   from /var/lib/gems/3.0.0/gems/jekyll-3.9.0/lib/jekyll/commands/serve.rb:93:in `each'
jekyll_1    |   from /var/lib/gems/3.0.0/gems/jekyll-3.9.0/lib/jekyll/commands/serve.rb:93:in `start'
jekyll_1    |   from /var/lib/gems/3.0.0/gems/jekyll-3.9.0/lib/jekyll/commands/serve.rb:75:in `block (2 levels) in init_with_program'
jekyll_1    |   from /var/lib/gems/3.0.0/gems/mercenary-0.3.6/lib/mercenary/command.rb:220:in `block in execute'
jekyll_1    |   from /var/lib/gems/3.0.0/gems/mercenary-0.3.6/lib/mercenary/command.rb:220:in `each'
jekyll_1    |   from /var/lib/gems/3.0.0/gems/mercenary-0.3.6/lib/mercenary/command.rb:220:in `execute'
jekyll_1    |   from /var/lib/gems/3.0.0/gems/mercenary-0.3.6/lib/mercenary/program.rb:42:in `go'
jekyll_1    |   from /var/lib/gems/3.0.0/gems/mercenary-0.3.6/lib/mercenary.rb:19:in `program'
jekyll_1    |   from /var/lib/gems/3.0.0/gems/jekyll-3.9.0/exe/jekyll:15:in `<top (required)>'
jekyll_1    |   from /usr/local/bin/jekyll:25:in `load'
jekyll_1    |   from /usr/local/bin/jekyll:25:in `<main>'

Based on this post, Ruby3 is not compatible with Jekyll.

https://talk.jekyllrb.com/t/error-no-implicit-conversion-of-hash-into-integer/5890

Exact version of ruby fastai/jekyll was using:

 docker run -it --rm  fastai/jekyll:latest
root@fddbcff7d3ad:~# ruby --version
ruby 3.0.2p107 (2021-07-07 revision 0db68f0233) [x86_64-linux-gnu]
root@fddbcff7d3ad:~#

jtmiclat avatar May 19 '22 09:05 jtmiclat