diff --git a/Gemfile b/Gemfile index 726014ca..e10c21dc 100644 --- a/Gemfile +++ b/Gemfile @@ -39,7 +39,7 @@ gem "waveform" gem "will_paginate" group :development do - gem "bullet" + # gem "bullet" TODO: Re-add when Rails 8 compatible gem "dotenv-rails" gem "rubocop-capybara" gem "rubocop-factory_bot" diff --git a/Gemfile.lock b/Gemfile.lock index 2f0788b0..171db6c5 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -1,32 +1,31 @@ GEM remote: https://rubygems.org/ specs: - actioncable (7.2.2) - actionpack (= 7.2.2) - activesupport (= 7.2.2) + actioncable (8.0.0) + actionpack (= 8.0.0) + activesupport (= 8.0.0) nio4r (~> 2.0) websocket-driver (>= 0.6.1) zeitwerk (~> 2.6) - actionmailbox (7.2.2) - actionpack (= 7.2.2) - activejob (= 7.2.2) - activerecord (= 7.2.2) - activestorage (= 7.2.2) - activesupport (= 7.2.2) + actionmailbox (8.0.0) + actionpack (= 8.0.0) + activejob (= 8.0.0) + activerecord (= 8.0.0) + activestorage (= 8.0.0) + activesupport (= 8.0.0) mail (>= 2.8.0) - actionmailer (7.2.2) - actionpack (= 7.2.2) - actionview (= 7.2.2) - activejob (= 7.2.2) - activesupport (= 7.2.2) + actionmailer (8.0.0) + actionpack (= 8.0.0) + actionview (= 8.0.0) + activejob (= 8.0.0) + activesupport (= 8.0.0) mail (>= 2.8.0) rails-dom-testing (~> 2.2) - actionpack (7.2.2) - actionview (= 7.2.2) - activesupport (= 7.2.2) + actionpack (8.0.0) + actionview (= 8.0.0) + activesupport (= 8.0.0) nokogiri (>= 1.8.5) - racc - rack (>= 2.2.4, < 3.2) + rack (>= 2.2.4) rack-session (>= 1.0.1) rack-test (>= 0.6.3) rails-dom-testing (~> 2.2) @@ -34,35 +33,35 @@ GEM useragent (~> 0.16) actionpack-action_caching (1.2.2) actionpack (>= 4.0.0) - actiontext (7.2.2) - actionpack (= 7.2.2) - activerecord (= 7.2.2) - activestorage (= 7.2.2) - activesupport (= 7.2.2) + actiontext (8.0.0) + actionpack (= 8.0.0) + activerecord (= 8.0.0) + activestorage (= 8.0.0) + activesupport (= 8.0.0) globalid (>= 0.6.0) nokogiri (>= 1.8.5) - actionview (7.2.2) - activesupport (= 7.2.2) + actionview (8.0.0) + activesupport (= 8.0.0) builder (~> 3.1) erubi (~> 1.11) rails-dom-testing (~> 2.2) rails-html-sanitizer (~> 1.6) - activejob (7.2.2) - activesupport (= 7.2.2) + activejob (8.0.0) + activesupport (= 8.0.0) globalid (>= 0.3.6) - activemodel (7.2.2) - activesupport (= 7.2.2) - activerecord (7.2.2) - activemodel (= 7.2.2) - activesupport (= 7.2.2) + activemodel (8.0.0) + activesupport (= 8.0.0) + activerecord (8.0.0) + activemodel (= 8.0.0) + activesupport (= 8.0.0) timeout (>= 0.4.0) - activestorage (7.2.2) - actionpack (= 7.2.2) - activejob (= 7.2.2) - activerecord (= 7.2.2) - activesupport (= 7.2.2) + activestorage (8.0.0) + actionpack (= 8.0.0) + activejob (= 8.0.0) + activerecord (= 8.0.0) + activesupport (= 8.0.0) marcel (~> 1.0) - activesupport (7.2.2) + activesupport (8.0.0) base64 benchmark (>= 0.3) bigdecimal @@ -74,17 +73,15 @@ GEM minitest (>= 5.1) securerandom (>= 0.3) tzinfo (~> 2.0, >= 2.0.5) + uri (>= 0.13.1) addressable (2.8.7) public_suffix (>= 2.0.2, < 7.0) ast (2.4.2) base64 (0.2.0) bcrypt (3.1.20) - benchmark (0.3.0) + benchmark (0.4.0) bigdecimal (3.1.8) builder (3.3.0) - bullet (7.2.0) - activesupport (>= 3.0.0) - uniform_notifier (~> 1.11) capybara (3.40.0) addressable matrix @@ -221,7 +218,7 @@ GEM irb (1.14.1) rdoc (>= 4.0.0) reline (>= 0.4.2) - json (2.7.5) + json (2.8.1) jwt (2.9.3) base64 language_server-protocol (3.17.0.3) @@ -250,7 +247,7 @@ GEM mustermann-grape (1.1.0) mustermann (>= 1.0.0) mutex_m (0.2.0) - net-http (0.4.1) + net-http (0.5.0) uri net-imap (0.5.0) date @@ -281,14 +278,14 @@ GEM os (1.1.4) package_json (0.1.0) parallel (1.26.3) - parser (3.3.5.1) + parser (3.3.6.0) ast (~> 2.4.1) racc pg (1.5.9) pg_search (2.3.7) activerecord (>= 6.1) activesupport (>= 6.1) - psych (5.1.2) + psych (5.2.0) stringio public_suffix (6.0.1) puma (6.4.3) @@ -306,20 +303,20 @@ GEM rack (>= 1.3) rackup (2.2.0) rack (>= 3) - rails (7.2.2) - actioncable (= 7.2.2) - actionmailbox (= 7.2.2) - actionmailer (= 7.2.2) - actionpack (= 7.2.2) - actiontext (= 7.2.2) - actionview (= 7.2.2) - activejob (= 7.2.2) - activemodel (= 7.2.2) - activerecord (= 7.2.2) - activestorage (= 7.2.2) - activesupport (= 7.2.2) + rails (8.0.0) + actioncable (= 8.0.0) + actionmailbox (= 8.0.0) + actionmailer (= 8.0.0) + actionpack (= 8.0.0) + actiontext (= 8.0.0) + actionview (= 8.0.0) + activejob (= 8.0.0) + activemodel (= 8.0.0) + activerecord (= 8.0.0) + activestorage (= 8.0.0) + activesupport (= 8.0.0) bundler (>= 1.15.0) - railties (= 7.2.2) + railties (= 8.0.0) rails-dom-testing (2.2.0) activesupport (>= 5.0.0) minitest @@ -327,9 +324,9 @@ GEM rails-html-sanitizer (1.6.0) loofah (~> 2.21) nokogiri (~> 1.14) - railties (7.2.2) - actionpack (= 7.2.2) - activesupport (= 7.2.2) + railties (8.0.0) + actionpack (= 8.0.0) + activesupport (= 8.0.0) irb (~> 1.13) rackup (>= 1.0.0) rake (>= 12.2) @@ -383,7 +380,7 @@ GEM rubocop-ast (>= 1.32.2, < 2.0) ruby-progressbar (~> 1.7) unicode-display_width (>= 2.4.0, < 3.0) - rubocop-ast (1.33.1) + rubocop-ast (1.34.1) parser (>= 3.3.1.0) rubocop-capybara (2.21.0) rubocop (~> 1.41) @@ -444,7 +441,7 @@ GEM semantic_range (>= 2.3.0) shoulda-matchers (6.4.0) activesupport (>= 5.2.0) - sidekiq (7.3.4) + sidekiq (7.3.5) connection_pool (>= 2.3.0) logger rack (>= 2.2.4) @@ -476,11 +473,11 @@ GEM bcrypt (~> 3.1) oauth (>= 0.6) oauth2 (~> 2.0) - stringio (3.1.1) + stringio (3.1.2) temple (0.10.3) thor (1.3.2) tilt (2.4.0) - timeout (0.4.1) + timeout (0.4.2) trailblazer-option (0.1.2) typhoeus (1.4.1) ethon (>= 0.9.0) @@ -488,8 +485,7 @@ GEM concurrent-ruby (~> 1.0) uber (0.1.0) unicode-display_width (2.6.0) - uniform_notifier (1.16.0) - uri (0.13.1) + uri (1.0.0) useragent (0.16.10) version_gem (1.1.4) waveform (0.1.3) @@ -510,7 +506,6 @@ PLATFORMS DEPENDENCIES actionpack-action_caching - bullet capybara capybara-email capybara-screenshot diff --git a/app/javascript/components/Eras.jsx b/app/javascript/components/Eras.jsx index 79db637d..4312d3ad 100644 --- a/app/javascript/components/Eras.jsx +++ b/app/javascript/components/Eras.jsx @@ -29,7 +29,7 @@ import GitHubButton from "./pages/GitHubButton"; import DiscordButton from "./pages/DiscordButton"; import CoverArt from "./CoverArt"; import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; -import { faList, faTh, faRss, faSortAmountDown, faSortAmountUp } from "@fortawesome/free-solid-svg-icons"; +import { faList, faTh, faSortAmountDown, faSortAmountUp } from "@fortawesome/free-solid-svg-icons"; const Eras = () => { const eras = useLoaderData(); @@ -138,13 +138,9 @@ const Eras = () => {
-

This project is open source

+

This project is open source

- - - RSS -
); diff --git a/app/javascript/components/layout/Navbar.jsx b/app/javascript/components/layout/Navbar.jsx index 3e89ccfc..b642cf1c 100644 --- a/app/javascript/components/layout/Navbar.jsx +++ b/app/javascript/components/layout/Navbar.jsx @@ -2,7 +2,7 @@ import React, { useRef, useState, useEffect } from "react"; import { Link, useNavigate } from "react-router-dom"; import logo from "../../images/logo-350.png"; import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; -import { faQuestionCircle, faBook, faTags, faAddressBook, faUserShield, faFileContract, faCalendar, faMicrophone, faMapMarkerAlt, faAward, faCalendarDay, faSearch, faAngleDown, faRecordVinyl, faGuitar, faChevronDown, faCircleXmark, faRightToBracket, faGear, faClipboardList, faListCheck, faListOl, faDiceFive, faLandmark } from "@fortawesome/free-solid-svg-icons"; +import { faQuestionCircle, faBook, faTags, faAddressBook, faUserShield, faFileContract, faCalendar, faMicrophone, faMapMarkerAlt, faAward, faCalendarDay, faSearch, faAngleDown, faRecordVinyl, faGuitar, faChevronDown, faCircleXmark, faRightToBracket, faGear, faClipboardList, faListCheck, faListOl, faDiceFive, faLandmark, faRss } from "@fortawesome/free-solid-svg-icons"; const Navbar = ({ user, handleLogout }) => { const [isMenuOpen, setIsMenuOpen] = useState(false); @@ -52,6 +52,7 @@ const Navbar = ({ user, handleLogout }) => { const staticLinks = [ { path: "/faq", label: "FAQ", icon: faQuestionCircle }, { path: "/api-docs", label: "API Docs", icon: faBook }, + { path: "/rss", label: "RSS Feed", icon: faRss }, { path: "/tagin-project", label: "Tagin' Project", icon: faTags }, { path: "/contact-info", label: "Contact Info", icon: faAddressBook }, { path: "/privacy", label: "Privacy Policy", icon: faUserShield }, diff --git a/config/application.rb b/config/application.rb index 155f3601..b13251c2 100644 --- a/config/application.rb +++ b/config/application.rb @@ -35,7 +35,7 @@ class Application < Rails::Application config.album_zip_disk_limit = 150.gigabytes # Rails config - config.load_defaults 7.2 + config.load_defaults 8.0 config.active_job.queue_adapter = :sidekiq config.action_mailer.default_url_options = { host: config.base_url } config.action_mailer.smtp_settings = { diff --git a/config/environments/development.rb b/config/environments/development.rb index 26e948b3..cd313150 100644 --- a/config/environments/development.rb +++ b/config/environments/development.rb @@ -15,9 +15,4 @@ config.consider_all_requests_local = true config.eager_load = false config.whiny_nils = true - - # Bullet gem (N+1 queries) - Bullet.enable = true - Bullet.bullet_logger = true - Bullet.rails_logger = true end diff --git a/spec/features/homepage_spec.rb b/spec/features/homepage_spec.rb index 304877ed..3be8a631 100644 --- a/spec/features/homepage_spec.rb +++ b/spec/features/homepage_spec.rb @@ -52,7 +52,6 @@ expect(page).to have_selector(".mobile-apps") expect(page).to have_link("GitHub") expect(page).to have_link("Discord") - expect(page).to have_link("RSS", href: "/feeds/rss") end within("#main-content") do