diff --git a/Gemfile b/Gemfile index 75dca1d6..b1134560 100644 --- a/Gemfile +++ b/Gemfile @@ -31,15 +31,12 @@ gem 'pg', '~> 1.5', group: :postgresql gem 'mini_racer', group: :therubyracer gem 'sprockets-rails' - -group :assets do - gem 'coffee-rails', '~> 5.0.0' - gem 'dartsass-sprockets' - gem 'bootstrap-sass', '3.4.1' - gem 'uglifier', '>=1.3.0' - gem 'listen' - gem 'tolk', '~> 6.0.0' -end +gem 'coffee-rails', '~> 5.0.0' +gem 'dartsass-sprockets' +gem 'bootstrap-sass', '3.4.1' +gem 'terser' +gem 'listen' +gem 'tolk', '~> 6.0.0' group :development, :optional => true do gem 'spring', '~> 4' diff --git a/Gemfile.lock b/Gemfile.lock index 28a4d5b6..7e807c18 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -192,7 +192,7 @@ GEM mime-types terrapin (~> 0.6.0) language_server-protocol (3.17.0.3) - libv8-node (21.7.2.0) + libv8-node (24.1.0.0) listen (3.9.0) rb-fsevent (~> 0.10, >= 0.10.3) rb-inotify (~> 0.9, >= 0.9.10) @@ -211,8 +211,8 @@ GEM mime-types-data (3.2023.0218.1) mini_mime (1.1.5) mini_portile2 (2.8.9) - mini_racer (0.12.0) - libv8-node (~> 21.7.2.0) + mini_racer (0.19.0) + libv8-node (~> 24.1.0.0) minitest (5.25.5) minitest-stub-const (0.6) mocha (2.7.1) @@ -383,6 +383,8 @@ GEM unicode-display_width (>= 1.1.1, < 4) terrapin (0.6.0) climate_control (>= 0.0.3, < 1.0) + terser (1.2.6) + execjs (>= 0.3.0, < 3) thor (1.3.2) tilt (2.6.0) timeout (0.4.3) @@ -393,8 +395,6 @@ GEM rails (>= 3.1) tzinfo (2.0.6) concurrent-ruby (~> 1.0) - uglifier (4.2.1) - execjs (>= 0.3.0, < 3) unicode-display_width (3.1.4) unicode-emoji (~> 4.0, >= 4.0.4) unicode-emoji (4.0.4) @@ -453,9 +453,9 @@ DEPENDENCIES sprockets-rails sqlite3 (~> 2.7) stripe + terser tolk (~> 6.0.0) tracks-chartjs-ror - uglifier (>= 1.3.0) will_paginate yard diff --git a/bin/rake b/bin/rake index 1dce1ede..64c64bc8 100755 --- a/bin/rake +++ b/bin/rake @@ -9,5 +9,5 @@ if [ -e $SCRIPTPATH/../.use-docker -a ! -e /etc/app-env ]; then $SCRIPTPATH/../script/docker-environment $0 "$@" else - $SCRIPTPATH/run-rake "$@" + bundle exec rake "$@" fi diff --git a/config/application.rb b/config/application.rb index 097daefb..5a2b86a8 100644 --- a/config/application.rb +++ b/config/application.rb @@ -12,7 +12,7 @@ SITE_CONFIG = YAML.load_file(File.join(File.dirname(__FILE__), 'site.yml')) module Tracksapp class Application < Rails::Application # Initialize configuration defaults for originally generated Rails version. - config.load_defaults 5.1 + config.load_defaults 7.0 # Settings in config/environments/* take precedence over those specified here. # Application configuration can go into files in config/initializers diff --git a/config/environments/production.rb b/config/environments/production.rb index bf31e9c4..40db435b 100644 --- a/config/environments/production.rb +++ b/config/environments/production.rb @@ -23,7 +23,7 @@ Rails.application.configure do config.public_file_server.enabled = ENV['RAILS_SERVE_STATIC_FILES'].present? # Compress JavaScripts and CSS. - config.assets.js_compressor = :uglifier + config.assets.js_compressor = Terser.new # config.assets.css_compressor = :sass # Do not fallback to assets pipeline if a precompiled asset is missed. diff --git a/docker-compose.yml b/docker-compose.yml index b60ecad3..9f2916f5 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1,10 +1,10 @@ version: '3' services: db: - image: mysql:5.7 + image: mariadb:lts environment: - MYSQL_ALLOW_EMPTY_PASSWORD: 1 - MYSQL_DATABASE: ${TRACKS_DB:-tracks} + MARIADB_ALLOW_EMPTY_ROOT_PASSWORD: 1 + MARIADB_DATABASE: ${TRACKS_DB:-tracks} volumes: - db-data:/var/lib/mysql web: diff --git a/script/poll-for-db b/script/poll-for-db index 2e8383ca..72ee5bed 100755 --- a/script/poll-for-db +++ b/script/poll-for-db @@ -2,7 +2,7 @@ echo "==> Polling DB…" -if [ "$1" == "mysql" ]; then +if [ -z "$1" ] || [ "$1" == "mysql" ]; then appdir=$(cd $(dirname "$0")/.. && pwd) [ -f /etc/app-env ] || exec "$appdir/script/docker-environment" $0 $@