From 251acd28be532652fda552e808757b95b2d545cc Mon Sep 17 00:00:00 2001 From: Parker Lougheed Date: Fri, 12 Jan 2024 23:32:52 -0600 Subject: [PATCH] Update site to use Ruby 3.3, yjit, and latest gems (#5430) - Updates to Ruby 3.3 for latest bug fixes and performance improvements. - Updates to use the YJIT compiler as suggested by Ruby and Shopify. - Update Jekyll for compatibility with Ruby 3.3. - Update to latest bundler and gems. --- Dockerfile | 5 +++-- Gemfile | 2 +- Gemfile.lock | 46 ++++++++++++++++++++++------------------------ 3 files changed, 26 insertions(+), 27 deletions(-) diff --git a/Dockerfile b/Dockerfile index beeb749d1e..3cbc1cca43 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM ruby:3.2-slim-bookworm@sha256:75f884a28c1337d744a42b006d864d3ba161c6b1980d2414910e660d2034b14e as base +FROM ruby:3.3-slim-bookworm@sha256:540e94266a7509bba7b50d5194eb63f51197ffbe5c203c5c81aa956c377ec4e8 as base ENV DEBIAN_FRONTEND=noninteractive ENV TZ=US/Pacific @@ -11,7 +11,6 @@ RUN apt update && apt install -yq --no-install-recommends \ lsof \ make \ unzip \ - vim-nox \ && rm -rf /var/lib/apt/lists/* RUN echo "alias lla='ls -lAhG --color=auto'" >> ~/.bashrc @@ -95,6 +94,7 @@ FROM node as dev WORKDIR /app ENV JEKYLL_ENV=development +ENV RUBY_YJIT_ENABLE=1 COPY Gemfile Gemfile.lock ./ RUN gem update --system && gem install bundler RUN BUNDLE_WITHOUT="test production" bundle install --jobs=4 --retry=2 @@ -137,6 +137,7 @@ FROM node AS build WORKDIR /app ENV JEKYLL_ENV=production +ENV RUBY_YJIT_ENABLE=1 COPY Gemfile Gemfile.lock ./ RUN gem update --system && gem install bundler RUN BUNDLE_WITHOUT="test development" bundle install --jobs=4 --retry=2 --quiet diff --git a/Gemfile b/Gemfile index 5256034ade..9a874a0a05 100644 --- a/Gemfile +++ b/Gemfile @@ -1,7 +1,7 @@ source "https://rubygems.org" gem 'activesupport', '~> 7.1.2' -gem 'jekyll', '4.3.2' +gem 'jekyll', '4.3.3' gem 'jekyll-sass-converter', '~> 3.0.0' gem 'kramdown-parser-gfm' gem 'liquid-tag-parser', '~> 2.0.2' diff --git a/Gemfile.lock b/Gemfile.lock index 69a17a29aa..3c423919bd 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -11,10 +11,10 @@ GEM minitest (>= 5.1) mutex_m tzinfo (~> 2.0) - addressable (2.8.5) + addressable (2.8.6) public_suffix (>= 2.0.2, < 6.0) base64 (0.2.0) - bigdecimal (3.1.4) + bigdecimal (3.1.5) colorator (1.1.0) concurrent-ruby (1.2.2) connection_pool (2.4.1) @@ -26,15 +26,13 @@ GEM eventmachine (1.2.7) extras (0.3.0) forwardable-extended (~> 2.5) - ffi (1.15.5) + ffi (1.16.3) forwardable-extended (2.6.0) - google-protobuf (3.24.3) - google-protobuf (3.24.3-aarch64-linux) - google-protobuf (3.24.3-x86_64-linux) + google-protobuf (3.25.2) http_parser.rb (0.8.0) i18n (1.14.1) concurrent-ruby (~> 1.0) - jekyll (4.3.2) + jekyll (4.3.3) addressable (~> 2.4) colorator (~> 1.0) em-websocket (~> 0.5) @@ -69,40 +67,40 @@ GEM rb-fsevent (~> 0.10, >= 0.10.3) rb-inotify (~> 0.9, >= 0.9.10) mercenary (0.4.0) - mini_portile2 (2.8.4) + mini_portile2 (2.8.5) minitest (5.20.0) mutex_m (0.2.0) - nokogiri (1.15.4) + nokogiri (1.16.0) mini_portile2 (~> 2.8.2) racc (~> 1.4) - nokogiri (1.15.4-aarch64-linux) + nokogiri (1.16.0-aarch64-linux) racc (~> 1.4) - nokogiri (1.15.4-x86_64-linux) + nokogiri (1.16.0-x86_64-linux) racc (~> 1.4) pathutil (0.16.2) forwardable-extended (~> 2.6) - public_suffix (5.0.3) - racc (1.7.1) - rake (13.0.6) + public_suffix (5.0.4) + racc (1.7.3) + rake (13.1.0) rb-fsevent (0.11.2) rb-inotify (0.10.1) ffi (~> 1.0) rexml (3.2.6) - rouge (4.1.3) + rouge (4.2.0) ruby2_keywords (0.0.5) safe_yaml (1.0.5) - sass-embedded (1.67.0) - google-protobuf (~> 3.23) + sass-embedded (1.69.7) + google-protobuf (~> 3.25) rake (>= 13.0.0) - sass-embedded (1.67.0-aarch64-linux-gnu) - google-protobuf (~> 3.23) - sass-embedded (1.67.0-x86_64-linux-gnu) - google-protobuf (~> 3.23) + sass-embedded (1.69.7-aarch64-linux-gnu) + google-protobuf (~> 3.25) + sass-embedded (1.69.7-x86_64-linux-gnu) + google-protobuf (~> 3.25) terminal-table (3.0.2) unicode-display_width (>= 1.1.1, < 3) tzinfo (2.0.6) concurrent-ruby (~> 1.0) - unicode-display_width (2.4.2) + unicode-display_width (2.5.0) webrick (1.8.1) PLATFORMS @@ -112,7 +110,7 @@ PLATFORMS DEPENDENCIES activesupport (~> 7.1.2) - jekyll (= 4.3.2) + jekyll (= 4.3.3) jekyll-sass-converter (~> 3.0.0) jekyll-toc (~> 0.18.0) kramdown-parser-gfm @@ -120,4 +118,4 @@ DEPENDENCIES webrick BUNDLED WITH - 2.4.19 + 2.5.4