diff --git a/.ruby-version b/.ruby-version index 2c9b4ef4..15a27998 100644 --- a/.ruby-version +++ b/.ruby-version @@ -1 +1 @@ -2.7.3 +3.3.0 diff --git a/Dockerfile b/Dockerfile index 7fca990c..2c315ce8 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM ruby:2.7 +FROM ruby:3.3 ENV GLOBAL_GEMS=true diff --git a/Gemfile b/Gemfile index 05161448..ba26298c 100644 --- a/Gemfile +++ b/Gemfile @@ -6,11 +6,11 @@ gem 'kramdown' # jekyll depends on kramdown-parser-gfm, but fails to declare it gem 'kramdown-parser-gfm' # Pin to the version used on GitHub Pages -gem 'jekyll', 3.9 +gem 'jekyll', '~> 3' gem 'jekyll-redirect-from' # For testing output -gem 'html-proofer' +gem 'html-proofer', '~> 4' # Avoid polling on windows gem 'wdm', '>= 0.1.0' diff --git a/Gemfile.lock b/Gemfile.lock index 030b2f6a..5b916926 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -1,19 +1,20 @@ GEM remote: https://rubygems.org/ specs: - addressable (2.8.1) - public_suffix (>= 2.0.2, < 6.0) + addressable (2.8.7) + public_suffix (>= 2.0.2, < 7.0) colorator (1.1.0) - concurrent-ruby (1.1.8) - em-websocket (0.5.2) + concurrent-ruby (1.3.4) + csv (3.3.0) + em-websocket (0.5.3) eventmachine (>= 0.12.9) - http_parser.rb (~> 0.6.0) - ethon (0.15.0) + http_parser.rb (~> 0) + ethon (0.16.0) ffi (>= 1.15.0) eventmachine (1.2.7) eventmachine (1.2.7-x64-mingw32) - ffi (1.15.5) - ffi (1.15.5-x64-mingw32) + ffi (1.17.0) + ffi (1.17.0-x64-mingw32) forwardable-extended (2.6.0) html-proofer (4.4.3) addressable (~> 2.3) @@ -24,14 +25,15 @@ GEM typhoeus (~> 1.3) yell (~> 2.0) zeitwerk (~> 2.5) - http_parser.rb (0.6.0) - i18n (0.9.5) + http_parser.rb (0.8.0) + i18n (1.14.5) concurrent-ruby (~> 1.0) - jekyll (3.9.0) + jekyll (3.10.0) addressable (~> 2.4) colorator (~> 1.0) + csv (~> 3.0) em-websocket (~> 0.5) - i18n (~> 0.7) + i18n (>= 0.7, < 2) jekyll-sass-converter (~> 1.0) jekyll-watch (~> 2.0) kramdown (>= 1.17, < 3) @@ -40,43 +42,43 @@ GEM pathutil (~> 0.9) rouge (>= 1.7, < 4) safe_yaml (~> 1.0) + webrick (>= 1.0) jekyll-redirect-from (0.16.0) jekyll (>= 3.3, < 5.0) jekyll-sass-converter (1.5.2) sass (~> 3.4) jekyll-watch (2.2.1) listen (~> 3.0) - kramdown (2.3.1) + kramdown (2.4.0) rexml kramdown-parser-gfm (1.1.0) kramdown (~> 2.0) - liquid (4.0.3) - listen (3.7.1) + liquid (4.0.4) + listen (3.9.0) rb-fsevent (~> 0.10, >= 0.10.3) rb-inotify (~> 0.9, >= 0.9.10) mercenary (0.3.6) - mini_portile2 (2.8.5) - neat (3.0.0) - sass (~> 3.4) + mini_portile2 (2.8.7) + neat (4.0.0) thor (~> 0.19) nokogiri (1.15.6) mini_portile2 (~> 2.8.2) racc (~> 1.4) nokogiri (1.15.6-x64-mingw32) racc (~> 1.4) - parallel (1.22.1) + parallel (1.26.3) pathutil (0.16.2) forwardable-extended (~> 2.6) - public_suffix (5.0.0) - racc (1.7.3) + public_suffix (5.1.1) + racc (1.8.1) rainbow (3.1.1) - rake (12.3.3) - rb-fsevent (0.11.0) - rb-inotify (0.10.1) + rake (13.2.1) + rb-fsevent (0.11.2) + rb-inotify (0.11.1) ffi (~> 1.0) - rexml (3.3.3) + rexml (3.3.5) strscan - rouge (3.26.0) + rouge (3.30.0) safe_yaml (1.0.5) sass (3.7.4) sass-listen (~> 4.0.0) @@ -85,20 +87,20 @@ GEM rb-inotify (~> 0.9, >= 0.9.7) strscan (3.1.0) thor (0.20.3) - typhoeus (1.4.0) + typhoeus (1.4.1) ethon (>= 0.9.0) - wdm (0.1.1) - webrick (1.7.0) + wdm (0.2.0) + webrick (1.8.1) yell (2.2.2) - zeitwerk (2.6.1) + zeitwerk (2.6.17) PLATFORMS ruby x64-mingw32 DEPENDENCIES - html-proofer - jekyll (= 3.9) + html-proofer (~> 4) + jekyll (~> 3) jekyll-redirect-from kramdown kramdown-parser-gfm @@ -108,4 +110,4 @@ DEPENDENCIES webrick (~> 1.7) BUNDLED WITH - 2.1.4 + 2.3.6 diff --git a/README.md b/README.md index d9014fe7..2e3daa02 100644 --- a/README.md +++ b/README.md @@ -14,7 +14,7 @@ Once setup, the site will be accessible on http://localhost:4000/docs/ 1. [Install Ruby][install-ruby] -2. Install Bundler (2.x) and Rake +2. Install Bundler (2.3 or above) and Rake ``` shell $ gem install bundler rake diff --git a/Rakefile b/Rakefile index 5f58afea..337d3ebd 100644 --- a/Rakefile +++ b/Rakefile @@ -1,3 +1,4 @@ +require 'date' require 'fileutils' require 'set' require 'yaml' @@ -44,7 +45,7 @@ end task :build_spellings => [:build, :spelling_dependencies] task :validate_kit_versions do - data = YAML.load_file('_data/kit_versions.yml') + data = YAML.load_file('_data/kit_versions.yml', permitted_classes: [Date]) data.each do |entry| actual = entry.keys.to_set expected = ['version', 'released', 'link', 'changelog'].to_set