diff --git a/.github/Dockerfile.base b/.github/Dockerfile.base index 5fae1efe..39557d77 100644 --- a/.github/Dockerfile.base +++ b/.github/Dockerfile.base @@ -3,7 +3,7 @@ # call this from rails root: podman build -t mapforge-base -f .github/Dockerfile.base . # Make sure RUBY_VERSION matches the Ruby version in .ruby-version and Gemfile -ARG RUBY_VERSION=3.4.5 +ARG RUBY_VERSION=4.0.0 FROM registry.docker.com/library/ruby:$RUBY_VERSION-slim as base LABEL org.opencontainers.image.source="https://github.com/mapforge-org/mapforge" diff --git a/.rubocop.yml b/.rubocop.yml index 437af5cd..e8f37347 100644 --- a/.rubocop.yml +++ b/.rubocop.yml @@ -5,7 +5,7 @@ inherit_gem: inherit_from: .rubocop_todo.yml AllCops: - TargetRubyVersion: 3.4 + TargetRubyVersion: 4.0 DisplayCopNames: true DisplayStyleGuide: true ExtraDetails: true diff --git a/.ruby-version b/.ruby-version index 4f5e6973..fcdb2e10 100644 --- a/.ruby-version +++ b/.ruby-version @@ -1 +1 @@ -3.4.5 +4.0.0 diff --git a/Gemfile b/Gemfile index 25ab22ad..b89f2bd0 100644 --- a/Gemfile +++ b/Gemfile @@ -1,5 +1,5 @@ source "https://rubygems.org" -ruby "3.4.5" +ruby "4.0.0" gem "rails" @@ -58,7 +58,8 @@ gem "rszr" gem "rgeo" gem "rgeo-geojson" gem "rgeo-proj4" -gem "gpx" +gem "gpx", git: "https://github.com/digitaltom/gpx" +gem "csv" # required by gpx, and not part of Ruby 4.0 standard lib anymore # resolving request IP addresses to coordinates gem "maxminddb" diff --git a/Gemfile.lock b/Gemfile.lock index 4cbd9bf1..daca775a 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -1,3 +1,12 @@ +GIT + remote: https://github.com/digitaltom/gpx + revision: 2c2dd533da977ce2a45f77a625a8974cf653dd40 + specs: + gpx (1.2.1) + csv + nokogiri (~> 1.7) + rake + GIT remote: https://github.com/ruby/net-pop.git revision: 30d89b359c940610d84ecd1fed0dba4003508fde @@ -125,7 +134,7 @@ GEM connection_pool (3.0.2) cookiejar (0.3.4) crass (1.0.6) - csv (3.3.3) + csv (3.3.5) database_cleaner-core (2.0.1) database_cleaner-mongoid (2.0.1) database_cleaner-core (~> 2.0.0) @@ -220,10 +229,6 @@ GEM i18n (>= 0.7) multi_json request_store (>= 1.0) - gpx (1.2.1) - csv - nokogiri (~> 1.7) - rake haml (7.1.0) temple (>= 0.8.2) thor @@ -280,6 +285,7 @@ GEM mini_magick (5.3.1) logger mini_mime (1.1.5) + mini_portile2 (2.8.9) minitest (6.0.0) prism (~> 1.5) mongo (2.21.3) @@ -319,6 +325,9 @@ GEM net-smtp (0.5.1) net-protocol nio4r (2.7.5) + nokogiri (1.18.10) + mini_portile2 (~> 2.8.2) + racc (~> 1.4) nokogiri (1.18.10-x86_64-linux-gnu) racc (~> 1.4) oauth2 (2.0.9) @@ -520,7 +529,7 @@ GEM rubocop-ast (>= 1.44.0, < 2.0) ruby-next-core (1.1.2) ruby-progressbar (1.13.0) - ruby_parser (3.21.1) + ruby_parser (3.22.0) racc (~> 1.5) sexp_processor (~> 4.16) rubycritic (4.11.0) @@ -543,7 +552,7 @@ GEM rexml (~> 3.2, >= 3.2.5) rubyzip (>= 1.2.2, < 4.0) websocket (~> 1.0) - sexp_processor (4.17.4) + sexp_processor (4.17.5) simplecov (0.22.0) docile (~> 1.1) simplecov-html (~> 0.11) @@ -629,13 +638,14 @@ DEPENDENCIES byebug capybara capybara-screenshot + csv database_cleaner-mongoid debug dotenv-rails dragonfly factory_bot_rails gon - gpx + gpx! haml hotwire-spark importmap-rails @@ -690,7 +700,7 @@ DEPENDENCIES yabeda-rails RUBY VERSION - ruby 3.4.5 + ruby 4.0.0p0 BUNDLED WITH - 2.7.1 + 4.0.3