timwis / jkan

A lightweight, backend-free open data portal, powered by Jekyll
https://jkan.io
MIT License
219 stars 309 forks source link

Add webrick to Gemfile for Ruby 3.x support #222

Closed timwis closed 1 year ago

timwis commented 1 year ago

Jekyll uses webrick in development mode, and expects it to ship with Ruby. But Ruby 3.0 stopped bundling webrick, which causes an error when you run jekyll serve using ruby 3.x. Jekyll 4.3.0—released Oct 2022—adds webrick as a dependency, but GitHub Pages still uses Jekyll 3.9.2 and has no immediate plans to upgrade to Jekyll 4. Adding webrick to our Gemfile (per this thread) solves this problem in the meantime.

BryanQuigley commented 1 year ago

but I think this should target v2 not gh-pages? Should we make v2 the new default branch?

In docker-compose.yml I had to switch: image: jekyll/jekyll:3.9 to 4.2.2

(could have also just done to 4 which links ot 4.2.2) .

We could also rebase the docker image off the Ruby ones so we can just load whatever is in the Gemfile. Thoughts?

Overall, +1 this change.

timwis commented 1 year ago

I pointed this at gh-pages because it's already an issue for the existing version. I figured, once merged, we'd merge/rebase it into the v2 branch.

Before we 'release' v2, I'd like to make sure the breaking changes are in (like #223) and update the docs so a new user stumbling upon the project can get up and running. I reckon we can do that this week.

Changing your docker image to that version probably just gave you a more recent version of ruby; the version of jekyll that gets used is likely still 3.9 because that's what the github-pages gem uses. I tried installing jekyll 4 alongside it and bundler throws an incompatibility error.

Our decision in #199 will actually make this PR unecessary, but it doesn't hurt to merge this until that is in place.

Regarding the docker image, I would use a ruby base image because that's closer to what build systems like GitHub Actions and Netlify will be using.