diff --git a/.gitignore b/.gitignore index 80299374..68969a29 100644 --- a/.gitignore +++ b/.gitignore @@ -17,3 +17,5 @@ coverage/ .ruby-version .ruby-gemset +Gemfile.lock +gemfiles/*.lock diff --git a/Gemfile.lock b/Gemfile.lock deleted file mode 100644 index c975de51..00000000 --- a/Gemfile.lock +++ /dev/null @@ -1,372 +0,0 @@ -PATH - remote: . - specs: - rails_performance (1.6.0) - browser - railties - redis - -GEM - remote: https://rubygems.org/ - specs: - actioncable (8.0.0) - actionpack (= 8.0.0) - activesupport (= 8.0.0) - nio4r (~> 2.0) - websocket-driver (>= 0.6.1) - zeitwerk (~> 2.6) - 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 (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 (8.0.0) - actionview (= 8.0.0) - activesupport (= 8.0.0) - nokogiri (>= 1.8.5) - rack (>= 2.2.4) - rack-session (>= 1.0.1) - rack-test (>= 0.6.3) - rails-dom-testing (~> 2.2) - rails-html-sanitizer (~> 1.6) - useragent (~> 0.16) - 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 (8.0.0) - activesupport (= 8.0.0) - builder (~> 3.1) - erubi (~> 1.11) - rails-dom-testing (~> 2.2) - rails-html-sanitizer (~> 1.6) - activejob (8.0.0) - activesupport (= 8.0.0) - globalid (>= 0.3.6) - 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 (8.0.0) - actionpack (= 8.0.0) - activejob (= 8.0.0) - activerecord (= 8.0.0) - activesupport (= 8.0.0) - marcel (~> 1.0) - activesupport (8.0.0) - base64 - benchmark (>= 0.3) - bigdecimal - concurrent-ruby (~> 1.0, >= 1.3.1) - connection_pool (>= 2.2.5) - drb - i18n (>= 1.6, < 2) - logger (>= 1.4.2) - minitest (>= 5.1) - securerandom (>= 0.3) - tzinfo (~> 2.0, >= 2.0.5) - uri (>= 0.13.1) - appraisal (2.5.0) - bundler - rake - thor (>= 0.14.0) - ast (2.4.3) - base64 (0.3.0) - bcrypt (3.1.20) - benchmark (0.4.1) - bigdecimal (3.3.1) - browser (6.2.0) - builder (3.3.0) - concurrent-ruby (1.3.5) - connection_pool (2.5.4) - crass (1.0.6) - csv (3.3.5) - daemons (1.4.1) - date (3.4.1) - debug (1.11.0) - irb (~> 1.10) - reline (>= 0.3.8) - delayed_job (4.1.13) - activesupport (>= 3.0, < 9.0) - delayed_job_active_record (4.1.11) - activerecord (>= 3.0, < 9.0) - delayed_job (>= 3.0, < 5) - devise (4.9.4) - bcrypt (~> 3.0) - orm_adapter (~> 0.1) - railties (>= 4.1.0) - responders - warden (~> 1.2.3) - docile (1.4.1) - drb (2.2.3) - dry-core (1.1.0) - concurrent-ruby (~> 1.0) - logger - zeitwerk (~> 2.6) - dry-inflector (1.2.0) - dry-logic (1.6.0) - bigdecimal - concurrent-ruby (~> 1.0) - dry-core (~> 1.1) - zeitwerk (~> 2.6) - dry-types (1.8.3) - bigdecimal (~> 3.0) - concurrent-ruby (~> 1.0) - dry-core (~> 1.0) - dry-inflector (~> 1.0) - dry-logic (~> 1.4) - zeitwerk (~> 2.6) - erb (5.1.1) - erubi (1.13.1) - ffi (1.17.2) - get_process_mem (1.0.0) - bigdecimal (>= 2.0) - ffi (~> 1.0) - globalid (1.3.0) - activesupport (>= 6.1) - grape (2.4.0) - activesupport (>= 6.1) - dry-types (>= 1.1) - mustermann-grape (~> 1.1.0) - rack (>= 2) - zeitwerk - i18n (1.14.7) - concurrent-ruby (~> 1.0) - io-console (0.8.1) - irb (1.15.2) - pp (>= 0.6.0) - rdoc (>= 4.0.0) - reline (>= 0.4.2) - json (2.15.1) - language_server-protocol (3.17.0.5) - lint_roller (1.1.0) - logger (1.7.0) - loofah (2.24.1) - crass (~> 1.0.2) - nokogiri (>= 1.12.0) - mail (2.8.1) - mini_mime (>= 0.1.1) - net-imap - net-pop - net-smtp - marcel (1.1.0) - mimemagic (0.4.3) - nokogiri (~> 1) - rake - mini_mime (1.1.5) - mini_portile2 (2.8.9) - minitest (5.26.0) - mustermann (3.0.4) - ruby2_keywords (~> 0.0.1) - mustermann-grape (1.1.0) - mustermann (>= 1.0.0) - net-imap (0.5.12) - date - net-protocol - net-pop (0.1.2) - net-protocol - net-protocol (0.2.2) - timeout - net-smtp (0.5.1) - net-protocol - nio4r (2.7.4) - nokogiri (1.18.10) - mini_portile2 (~> 2.8.2) - racc (~> 1.4) - orm_adapter (0.5.0) - ostruct (0.6.3) - parallel (1.27.0) - parser (3.3.9.0) - ast (~> 2.4.1) - racc - pp (0.6.3) - prettyprint - prettyprint (0.2.0) - prism (1.5.2) - psych (5.2.6) - date - stringio - puma (7.0.4) - nio4r (~> 2.0) - racc (1.8.1) - rack (3.2.3) - rack-session (2.1.1) - base64 (>= 0.1.0) - rack (>= 3.0.0) - rack-test (2.2.0) - rack (>= 1.3) - rackup (2.2.1) - rack (>= 3) - 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 (= 8.0.0) - rails-dom-testing (2.3.0) - activesupport (>= 5.0.0) - minitest - nokogiri (>= 1.6) - rails-html-sanitizer (1.6.2) - loofah (~> 2.21) - nokogiri (>= 1.15.7, != 1.16.7, != 1.16.6, != 1.16.5, != 1.16.4, != 1.16.3, != 1.16.2, != 1.16.1, != 1.16.0.rc1, != 1.16.0) - railties (8.0.0) - actionpack (= 8.0.0) - activesupport (= 8.0.0) - irb (~> 1.13) - rackup (>= 1.0.0) - rake (>= 12.2) - thor (~> 1.0, >= 1.2.2) - zeitwerk (~> 2.6) - rainbow (3.1.1) - rake (13.3.0) - rdoc (6.15.0) - erb - psych (>= 4.0.0) - tsort - redis (5.4.1) - redis-client (>= 0.22.0) - redis-client (0.26.1) - connection_pool - regexp_parser (2.11.3) - reline (0.6.2) - io-console (~> 0.5) - responders (3.2.0) - actionpack (>= 7.0) - railties (>= 7.0) - rubocop (1.80.2) - json (~> 2.3) - language_server-protocol (~> 3.17.0.2) - lint_roller (~> 1.1.0) - parallel (~> 1.10) - parser (>= 3.3.0.2) - rainbow (>= 2.2.2, < 4.0) - regexp_parser (>= 2.9.3, < 3.0) - rubocop-ast (>= 1.46.0, < 2.0) - ruby-progressbar (~> 1.7) - unicode-display_width (>= 2.4.0, < 4.0) - rubocop-ast (1.47.1) - parser (>= 3.3.7.2) - prism (~> 1.4) - rubocop-performance (1.25.0) - lint_roller (~> 1.1) - rubocop (>= 1.75.0, < 2.0) - rubocop-ast (>= 1.38.0, < 2.0) - ruby-progressbar (1.13.0) - ruby2_keywords (0.0.5) - securerandom (0.4.1) - sidekiq (8.0.8) - connection_pool (>= 2.5.0) - json (>= 2.9.0) - logger (>= 1.6.2) - rack (>= 3.1.0) - redis-client (>= 0.23.2) - simplecov (0.22.0) - docile (~> 1.1) - simplecov-html (~> 0.11) - simplecov_json_formatter (~> 0.1) - simplecov-html (0.13.2) - simplecov_json_formatter (0.1.4) - sprockets (4.2.2) - concurrent-ruby (~> 1.0) - logger - rack (>= 2.2.4, < 4) - sprockets-rails (3.5.2) - actionpack (>= 6.1) - activesupport (>= 6.1) - sprockets (>= 3.0.0) - sqlite3 (2.7.4) - mini_portile2 (~> 2.8.0) - standard (1.51.1) - language_server-protocol (~> 3.17.0.2) - lint_roller (~> 1.0) - rubocop (~> 1.80.2) - standard-custom (~> 1.0.0) - standard-performance (~> 1.8) - standard-custom (1.0.2) - lint_roller (~> 1.0) - rubocop (~> 1.50) - standard-performance (1.8.0) - lint_roller (~> 1.1) - rubocop-performance (~> 1.25.0) - standardrb (1.0.1) - standard - stringio (3.1.7) - sys-cpu (1.1.0) - ffi (~> 1.1) - sys-filesystem (1.5.4) - ffi (~> 1.1) - thor (1.4.0) - timeout (0.4.3) - tsort (0.2.0) - tzinfo (2.0.6) - concurrent-ruby (~> 1.0) - unicode-display_width (3.2.0) - unicode-emoji (~> 4.1) - unicode-emoji (4.1.0) - uri (1.0.4) - useragent (0.16.11) - warden (1.2.9) - rack (>= 2.0.9) - websocket-driver (0.8.0) - base64 - websocket-extensions (>= 0.1.0) - websocket-extensions (0.1.5) - wrapped_print (0.1.1) - activesupport - zeitwerk (2.7.3) - -PLATFORMS - ruby - -DEPENDENCIES - actionmailer - activestorage - appraisal - csv - daemons - debug - delayed_job_active_record - devise - get_process_mem - grape - mimemagic (>= 0, = 0.4.3) - minitest (~> 5.0) - ostruct - puma - rails (= 8.0.0) - rails_performance! - sidekiq - simplecov - sprockets-rails - sqlite3 - standard - standardrb - sys-cpu - sys-filesystem - wrapped_print - -BUNDLED WITH - 2.7.2 diff --git a/app/controllers/rails_performance/base_controller.rb b/app/controllers/rails_performance/base_controller.rb index 46898935..6dff9ebd 100644 --- a/app/controllers/rails_performance/base_controller.rb +++ b/app/controllers/rails_performance/base_controller.rb @@ -4,8 +4,6 @@ class BaseController < ActionController::Base layout "rails_performance/layouts/rails_performance" - helper RailsPerformance.engine_assets.helper - before_action :verify_access after_action :set_permissive_csp diff --git a/app/views/rails_performance/layouts/rails_performance.html.erb b/app/views/rails_performance/layouts/rails_performance.html.erb index e069dd43..875c2af9 100644 --- a/app/views/rails_performance/layouts/rails_performance.html.erb +++ b/app/views/rails_performance/layouts/rails_performance.html.erb @@ -8,13 +8,13 @@ <%= csp_meta_tag if ::Rails::VERSION::STRING.to_f >= 5.2 %> - <%= engine_stylesheet_link_tag "style" %> - <%= engine_stylesheet_link_tag "panel" %> - <%= engine_stylesheet_link_tag "responsive" %> + <%= RailsPerformance.stylesheet_link_tag "style" %> + <%= RailsPerformance.stylesheet_link_tag "panel" %> + <%= RailsPerformance.stylesheet_link_tag "responsive" %> - <%= engine_javascript_importmap_tags "application", { + <%= RailsPerformance.javascript_importmap_tags "application", { "@rails/ujs" => "https://cdn.jsdelivr.net/npm/@rails/ujs@7.1.3-4/+esm", "jquery" => "https://cdn.jsdelivr.net/npm/jquery@3.7.1/+esm", "apexcharts" => "https://cdn.jsdelivr.net/npm/apexcharts@3.45.0/+esm", diff --git a/gemfiles/rails_7.2.gemfile.lock b/gemfiles/rails_7.2.gemfile.lock deleted file mode 100644 index a2968413..00000000 --- a/gemfiles/rails_7.2.gemfile.lock +++ /dev/null @@ -1,414 +0,0 @@ -PATH - remote: .. - specs: - rails_performance (1.6.0) - browser - railties - redis - -GEM - remote: https://rubygems.org/ - specs: - actioncable (7.2.3) - actionpack (= 7.2.3) - activesupport (= 7.2.3) - nio4r (~> 2.0) - websocket-driver (>= 0.6.1) - zeitwerk (~> 2.6) - actionmailbox (7.2.3) - actionpack (= 7.2.3) - activejob (= 7.2.3) - activerecord (= 7.2.3) - activestorage (= 7.2.3) - activesupport (= 7.2.3) - mail (>= 2.8.0) - actionmailer (7.2.3) - actionpack (= 7.2.3) - actionview (= 7.2.3) - activejob (= 7.2.3) - activesupport (= 7.2.3) - mail (>= 2.8.0) - rails-dom-testing (~> 2.2) - actionpack (7.2.3) - actionview (= 7.2.3) - activesupport (= 7.2.3) - cgi - nokogiri (>= 1.8.5) - racc - rack (>= 2.2.4, < 3.3) - rack-session (>= 1.0.1) - rack-test (>= 0.6.3) - rails-dom-testing (~> 2.2) - rails-html-sanitizer (~> 1.6) - useragent (~> 0.16) - actiontext (7.2.3) - actionpack (= 7.2.3) - activerecord (= 7.2.3) - activestorage (= 7.2.3) - activesupport (= 7.2.3) - globalid (>= 0.6.0) - nokogiri (>= 1.8.5) - actionview (7.2.3) - activesupport (= 7.2.3) - builder (~> 3.1) - cgi - erubi (~> 1.11) - rails-dom-testing (~> 2.2) - rails-html-sanitizer (~> 1.6) - activejob (7.2.3) - activesupport (= 7.2.3) - globalid (>= 0.3.6) - activemodel (7.2.3) - activesupport (= 7.2.3) - activerecord (7.2.3) - activemodel (= 7.2.3) - activesupport (= 7.2.3) - timeout (>= 0.4.0) - activestorage (7.2.3) - actionpack (= 7.2.3) - activejob (= 7.2.3) - activerecord (= 7.2.3) - activesupport (= 7.2.3) - marcel (~> 1.0) - activesupport (7.2.3) - base64 - benchmark (>= 0.3) - bigdecimal - concurrent-ruby (~> 1.0, >= 1.3.1) - connection_pool (>= 2.2.5) - drb - i18n (>= 1.6, < 2) - logger (>= 1.4.2) - minitest (>= 5.1) - securerandom (>= 0.3) - tzinfo (~> 2.0, >= 2.0.5) - appraisal (2.5.0) - bundler - rake - thor (>= 0.14.0) - ast (2.4.3) - base64 (0.3.0) - bcrypt (3.1.21) - benchmark (0.5.0) - bigdecimal (4.0.1) - browser (6.2.0) - builder (3.3.0) - cgi (0.5.1) - concurrent-ruby (1.3.6) - connection_pool (3.0.2) - crass (1.0.6) - csv (3.3.5) - daemons (1.4.1) - date (3.5.1) - debug (1.11.1) - irb (~> 1.10) - reline (>= 0.3.8) - delayed_job (4.2.0) - activesupport (>= 3.0, < 9.0) - benchmark - logger - delayed_job_active_record (4.1.11) - activerecord (>= 3.0, < 9.0) - delayed_job (>= 3.0, < 5) - devise (4.9.4) - bcrypt (~> 3.0) - orm_adapter (~> 0.1) - railties (>= 4.1.0) - responders - warden (~> 1.2.3) - docile (1.4.1) - drb (2.2.3) - dry-configurable (1.3.0) - dry-core (~> 1.1) - zeitwerk (~> 2.6) - dry-core (1.2.0) - concurrent-ruby (~> 1.0) - logger - zeitwerk (~> 2.6) - dry-inflector (1.2.0) - dry-logic (1.6.0) - bigdecimal - concurrent-ruby (~> 1.0) - dry-core (~> 1.1) - zeitwerk (~> 2.6) - dry-types (1.7.1) - concurrent-ruby (~> 1.0) - dry-core (~> 1.0) - dry-inflector (~> 1.0) - dry-logic (~> 1.4) - zeitwerk (~> 2.6) - erb (6.0.1) - erubi (1.13.1) - ffi (1.17.3-aarch64-linux-gnu) - ffi (1.17.3-aarch64-linux-musl) - ffi (1.17.3-arm-linux-gnu) - ffi (1.17.3-arm-linux-musl) - ffi (1.17.3-arm64-darwin) - ffi (1.17.3-x86_64-darwin) - ffi (1.17.3-x86_64-linux-gnu) - ffi (1.17.3-x86_64-linux-musl) - get_process_mem (1.0.0) - bigdecimal (>= 2.0) - ffi (~> 1.0) - globalid (1.3.0) - activesupport (>= 6.1) - grape (3.0.1) - activesupport (>= 7.0) - dry-configurable - dry-types (>= 1.1) - mustermann-grape (~> 1.1.0) - rack (>= 2) - zeitwerk - i18n (1.14.8) - concurrent-ruby (~> 1.0) - io-console (0.8.2) - irb (1.16.0) - pp (>= 0.6.0) - rdoc (>= 4.0.0) - reline (>= 0.4.2) - json (2.18.0) - language_server-protocol (3.17.0.5) - lint_roller (1.1.0) - logger (1.7.0) - loofah (2.25.0) - crass (~> 1.0.2) - nokogiri (>= 1.12.0) - mail (2.9.0) - logger - mini_mime (>= 0.1.1) - net-imap - net-pop - net-smtp - marcel (1.1.0) - mimemagic (0.4.3) - nokogiri (~> 1) - rake - mini_mime (1.1.5) - minitest (5.27.0) - mustermann (3.0.4) - ruby2_keywords (~> 0.0.1) - mustermann-grape (1.1.0) - mustermann (>= 1.0.0) - net-imap (0.6.2) - date - net-protocol - net-pop (0.1.2) - net-protocol - net-protocol (0.2.2) - timeout - net-smtp (0.5.1) - net-protocol - nio4r (2.7.5) - nokogiri (1.19.0-aarch64-linux-gnu) - racc (~> 1.4) - nokogiri (1.19.0-aarch64-linux-musl) - racc (~> 1.4) - nokogiri (1.19.0-arm-linux-gnu) - racc (~> 1.4) - nokogiri (1.19.0-arm-linux-musl) - racc (~> 1.4) - nokogiri (1.19.0-arm64-darwin) - racc (~> 1.4) - nokogiri (1.19.0-x86_64-darwin) - racc (~> 1.4) - nokogiri (1.19.0-x86_64-linux-gnu) - racc (~> 1.4) - nokogiri (1.19.0-x86_64-linux-musl) - racc (~> 1.4) - orm_adapter (0.5.0) - ostruct (0.6.3) - parallel (1.27.0) - parser (3.3.10.0) - ast (~> 2.4.1) - racc - pp (0.6.3) - prettyprint - prettyprint (0.2.0) - prism (1.7.0) - psych (5.3.1) - date - stringio - puma (7.1.0) - nio4r (~> 2.0) - racc (1.8.1) - rack (3.2.4) - rack-session (2.1.1) - base64 (>= 0.1.0) - rack (>= 3.0.0) - rack-test (2.2.0) - rack (>= 1.3) - rackup (2.3.1) - rack (>= 3) - rails (7.2.3) - actioncable (= 7.2.3) - actionmailbox (= 7.2.3) - actionmailer (= 7.2.3) - actionpack (= 7.2.3) - actiontext (= 7.2.3) - actionview (= 7.2.3) - activejob (= 7.2.3) - activemodel (= 7.2.3) - activerecord (= 7.2.3) - activestorage (= 7.2.3) - activesupport (= 7.2.3) - bundler (>= 1.15.0) - railties (= 7.2.3) - rails-dom-testing (2.3.0) - activesupport (>= 5.0.0) - minitest - nokogiri (>= 1.6) - rails-html-sanitizer (1.6.2) - loofah (~> 2.21) - nokogiri (>= 1.15.7, != 1.16.7, != 1.16.6, != 1.16.5, != 1.16.4, != 1.16.3, != 1.16.2, != 1.16.1, != 1.16.0.rc1, != 1.16.0) - railties (7.2.3) - actionpack (= 7.2.3) - activesupport (= 7.2.3) - cgi - irb (~> 1.13) - rackup (>= 1.0.0) - rake (>= 12.2) - thor (~> 1.0, >= 1.2.2) - tsort (>= 0.2) - zeitwerk (~> 2.6) - rainbow (3.1.1) - rake (13.3.1) - rdoc (7.0.3) - erb - psych (>= 4.0.0) - tsort - redis (5.4.1) - redis-client (>= 0.22.0) - redis-client (0.26.3) - connection_pool - regexp_parser (2.11.3) - reline (0.6.3) - io-console (~> 0.5) - responders (3.2.0) - actionpack (>= 7.0) - railties (>= 7.0) - rubocop (1.81.7) - json (~> 2.3) - language_server-protocol (~> 3.17.0.2) - lint_roller (~> 1.1.0) - parallel (~> 1.10) - parser (>= 3.3.0.2) - rainbow (>= 2.2.2, < 4.0) - regexp_parser (>= 2.9.3, < 3.0) - rubocop-ast (>= 1.47.1, < 2.0) - ruby-progressbar (~> 1.7) - unicode-display_width (>= 2.4.0, < 4.0) - rubocop-ast (1.49.0) - parser (>= 3.3.7.2) - prism (~> 1.7) - rubocop-performance (1.26.1) - lint_roller (~> 1.1) - rubocop (>= 1.75.0, < 2.0) - rubocop-ast (>= 1.47.1, < 2.0) - ruby-progressbar (1.13.0) - ruby2_keywords (0.0.5) - securerandom (0.4.1) - sidekiq (8.1.0) - connection_pool (>= 3.0.0) - json (>= 2.16.0) - logger (>= 1.7.0) - rack (>= 3.2.0) - redis-client (>= 0.26.0) - simplecov (0.22.0) - docile (~> 1.1) - simplecov-html (~> 0.11) - simplecov_json_formatter (~> 0.1) - simplecov-html (0.13.2) - simplecov_json_formatter (0.1.4) - sprockets (4.2.2) - concurrent-ruby (~> 1.0) - logger - rack (>= 2.2.4, < 4) - sprockets-rails (3.5.2) - actionpack (>= 6.1) - activesupport (>= 6.1) - sprockets (>= 3.0.0) - sqlite3 (2.9.0-aarch64-linux-gnu) - sqlite3 (2.9.0-aarch64-linux-musl) - sqlite3 (2.9.0-arm-linux-gnu) - sqlite3 (2.9.0-arm-linux-musl) - sqlite3 (2.9.0-arm64-darwin) - sqlite3 (2.9.0-x86_64-darwin) - sqlite3 (2.9.0-x86_64-linux-gnu) - sqlite3 (2.9.0-x86_64-linux-musl) - standard (1.52.0) - language_server-protocol (~> 3.17.0.2) - lint_roller (~> 1.0) - rubocop (~> 1.81.7) - standard-custom (~> 1.0.0) - standard-performance (~> 1.8) - standard-custom (1.0.2) - lint_roller (~> 1.0) - rubocop (~> 1.50) - standard-performance (1.9.0) - lint_roller (~> 1.1) - rubocop-performance (~> 1.26.0) - standardrb (1.0.1) - standard - stringio (3.2.0) - sys-cpu (1.1.0) - ffi (~> 1.1) - sys-filesystem (1.5.5) - ffi (~> 1.1) - thor (1.5.0) - timeout (0.6.0) - tsort (0.2.0) - tzinfo (2.0.6) - concurrent-ruby (~> 1.0) - unicode-display_width (3.2.0) - unicode-emoji (~> 4.1) - unicode-emoji (4.2.0) - useragent (0.16.11) - warden (1.2.9) - rack (>= 2.0.9) - websocket-driver (0.8.0) - base64 - websocket-extensions (>= 0.1.0) - websocket-extensions (0.1.5) - wrapped_print (0.1.1) - activesupport - zeitwerk (2.7.4) - -PLATFORMS - aarch64-linux-gnu - aarch64-linux-musl - arm-linux-gnu - arm-linux-musl - arm64-darwin - x86_64-darwin - x86_64-linux-gnu - x86_64-linux-musl - -DEPENDENCIES - actionmailer - activestorage - appraisal - csv - daemons - debug - delayed_job_active_record - devise - get_process_mem - grape - mimemagic (= 0.4.3) - minitest (~> 5.0) - ostruct - puma - rails (~> 7.2.0) - rails_performance! - sidekiq - simplecov - sprockets-rails - sqlite3 - standard - standardrb - sys-cpu - sys-filesystem - wrapped_print - -BUNDLED WITH - 2.7.2 diff --git a/gemfiles/rails_8.0.gemfile.lock b/gemfiles/rails_8.0.gemfile.lock deleted file mode 100644 index bc920da2..00000000 --- a/gemfiles/rails_8.0.gemfile.lock +++ /dev/null @@ -1,411 +0,0 @@ -PATH - remote: .. - specs: - rails_performance (1.6.0) - browser - railties - redis - -GEM - remote: https://rubygems.org/ - specs: - actioncable (8.0.4) - actionpack (= 8.0.4) - activesupport (= 8.0.4) - nio4r (~> 2.0) - websocket-driver (>= 0.6.1) - zeitwerk (~> 2.6) - actionmailbox (8.0.4) - actionpack (= 8.0.4) - activejob (= 8.0.4) - activerecord (= 8.0.4) - activestorage (= 8.0.4) - activesupport (= 8.0.4) - mail (>= 2.8.0) - actionmailer (8.0.4) - actionpack (= 8.0.4) - actionview (= 8.0.4) - activejob (= 8.0.4) - activesupport (= 8.0.4) - mail (>= 2.8.0) - rails-dom-testing (~> 2.2) - actionpack (8.0.4) - actionview (= 8.0.4) - activesupport (= 8.0.4) - nokogiri (>= 1.8.5) - rack (>= 2.2.4) - rack-session (>= 1.0.1) - rack-test (>= 0.6.3) - rails-dom-testing (~> 2.2) - rails-html-sanitizer (~> 1.6) - useragent (~> 0.16) - actiontext (8.0.4) - actionpack (= 8.0.4) - activerecord (= 8.0.4) - activestorage (= 8.0.4) - activesupport (= 8.0.4) - globalid (>= 0.6.0) - nokogiri (>= 1.8.5) - actionview (8.0.4) - activesupport (= 8.0.4) - builder (~> 3.1) - erubi (~> 1.11) - rails-dom-testing (~> 2.2) - rails-html-sanitizer (~> 1.6) - activejob (8.0.4) - activesupport (= 8.0.4) - globalid (>= 0.3.6) - activemodel (8.0.4) - activesupport (= 8.0.4) - activerecord (8.0.4) - activemodel (= 8.0.4) - activesupport (= 8.0.4) - timeout (>= 0.4.0) - activestorage (8.0.4) - actionpack (= 8.0.4) - activejob (= 8.0.4) - activerecord (= 8.0.4) - activesupport (= 8.0.4) - marcel (~> 1.0) - activesupport (8.0.4) - base64 - benchmark (>= 0.3) - bigdecimal - concurrent-ruby (~> 1.0, >= 1.3.1) - connection_pool (>= 2.2.5) - drb - i18n (>= 1.6, < 2) - logger (>= 1.4.2) - minitest (>= 5.1) - securerandom (>= 0.3) - tzinfo (~> 2.0, >= 2.0.5) - uri (>= 0.13.1) - appraisal (2.5.0) - bundler - rake - thor (>= 0.14.0) - ast (2.4.3) - base64 (0.3.0) - bcrypt (3.1.21) - benchmark (0.5.0) - bigdecimal (4.0.1) - browser (6.2.0) - builder (3.3.0) - concurrent-ruby (1.3.6) - connection_pool (3.0.2) - crass (1.0.6) - csv (3.3.5) - daemons (1.4.1) - date (3.5.1) - debug (1.11.1) - irb (~> 1.10) - reline (>= 0.3.8) - delayed_job (4.2.0) - activesupport (>= 3.0, < 9.0) - benchmark - logger - delayed_job_active_record (4.1.11) - activerecord (>= 3.0, < 9.0) - delayed_job (>= 3.0, < 5) - devise (4.9.4) - bcrypt (~> 3.0) - orm_adapter (~> 0.1) - railties (>= 4.1.0) - responders - warden (~> 1.2.3) - docile (1.4.1) - drb (2.2.3) - dry-configurable (1.3.0) - dry-core (~> 1.1) - zeitwerk (~> 2.6) - dry-core (1.2.0) - concurrent-ruby (~> 1.0) - logger - zeitwerk (~> 2.6) - dry-inflector (1.2.0) - dry-logic (1.6.0) - bigdecimal - concurrent-ruby (~> 1.0) - dry-core (~> 1.1) - zeitwerk (~> 2.6) - dry-types (1.7.1) - concurrent-ruby (~> 1.0) - dry-core (~> 1.0) - dry-inflector (~> 1.0) - dry-logic (~> 1.4) - zeitwerk (~> 2.6) - erb (6.0.1) - erubi (1.13.1) - ffi (1.17.3-aarch64-linux-gnu) - ffi (1.17.3-aarch64-linux-musl) - ffi (1.17.3-arm-linux-gnu) - ffi (1.17.3-arm-linux-musl) - ffi (1.17.3-arm64-darwin) - ffi (1.17.3-x86_64-darwin) - ffi (1.17.3-x86_64-linux-gnu) - ffi (1.17.3-x86_64-linux-musl) - get_process_mem (1.0.0) - bigdecimal (>= 2.0) - ffi (~> 1.0) - globalid (1.3.0) - activesupport (>= 6.1) - grape (3.0.1) - activesupport (>= 7.0) - dry-configurable - dry-types (>= 1.1) - mustermann-grape (~> 1.1.0) - rack (>= 2) - zeitwerk - i18n (1.14.8) - concurrent-ruby (~> 1.0) - io-console (0.8.2) - irb (1.16.0) - pp (>= 0.6.0) - rdoc (>= 4.0.0) - reline (>= 0.4.2) - json (2.18.0) - language_server-protocol (3.17.0.5) - lint_roller (1.1.0) - logger (1.7.0) - loofah (2.25.0) - crass (~> 1.0.2) - nokogiri (>= 1.12.0) - mail (2.9.0) - logger - mini_mime (>= 0.1.1) - net-imap - net-pop - net-smtp - marcel (1.1.0) - mimemagic (0.4.3) - nokogiri (~> 1) - rake - mini_mime (1.1.5) - minitest (5.27.0) - mustermann (3.0.4) - ruby2_keywords (~> 0.0.1) - mustermann-grape (1.1.0) - mustermann (>= 1.0.0) - net-imap (0.6.2) - date - net-protocol - net-pop (0.1.2) - net-protocol - net-protocol (0.2.2) - timeout - net-smtp (0.5.1) - net-protocol - nio4r (2.7.5) - nokogiri (1.19.0-aarch64-linux-gnu) - racc (~> 1.4) - nokogiri (1.19.0-aarch64-linux-musl) - racc (~> 1.4) - nokogiri (1.19.0-arm-linux-gnu) - racc (~> 1.4) - nokogiri (1.19.0-arm-linux-musl) - racc (~> 1.4) - nokogiri (1.19.0-arm64-darwin) - racc (~> 1.4) - nokogiri (1.19.0-x86_64-darwin) - racc (~> 1.4) - nokogiri (1.19.0-x86_64-linux-gnu) - racc (~> 1.4) - nokogiri (1.19.0-x86_64-linux-musl) - racc (~> 1.4) - orm_adapter (0.5.0) - ostruct (0.6.3) - parallel (1.27.0) - parser (3.3.10.0) - ast (~> 2.4.1) - racc - pp (0.6.3) - prettyprint - prettyprint (0.2.0) - prism (1.7.0) - psych (5.3.1) - date - stringio - puma (7.1.0) - nio4r (~> 2.0) - racc (1.8.1) - rack (3.2.4) - rack-session (2.1.1) - base64 (>= 0.1.0) - rack (>= 3.0.0) - rack-test (2.2.0) - rack (>= 1.3) - rackup (2.3.1) - rack (>= 3) - rails (8.0.4) - actioncable (= 8.0.4) - actionmailbox (= 8.0.4) - actionmailer (= 8.0.4) - actionpack (= 8.0.4) - actiontext (= 8.0.4) - actionview (= 8.0.4) - activejob (= 8.0.4) - activemodel (= 8.0.4) - activerecord (= 8.0.4) - activestorage (= 8.0.4) - activesupport (= 8.0.4) - bundler (>= 1.15.0) - railties (= 8.0.4) - rails-dom-testing (2.3.0) - activesupport (>= 5.0.0) - minitest - nokogiri (>= 1.6) - rails-html-sanitizer (1.6.2) - loofah (~> 2.21) - nokogiri (>= 1.15.7, != 1.16.7, != 1.16.6, != 1.16.5, != 1.16.4, != 1.16.3, != 1.16.2, != 1.16.1, != 1.16.0.rc1, != 1.16.0) - railties (8.0.4) - actionpack (= 8.0.4) - activesupport (= 8.0.4) - irb (~> 1.13) - rackup (>= 1.0.0) - rake (>= 12.2) - thor (~> 1.0, >= 1.2.2) - tsort (>= 0.2) - zeitwerk (~> 2.6) - rainbow (3.1.1) - rake (13.3.1) - rdoc (7.0.3) - erb - psych (>= 4.0.0) - tsort - redis (5.4.1) - redis-client (>= 0.22.0) - redis-client (0.26.3) - connection_pool - regexp_parser (2.11.3) - reline (0.6.3) - io-console (~> 0.5) - responders (3.2.0) - actionpack (>= 7.0) - railties (>= 7.0) - rubocop (1.81.7) - json (~> 2.3) - language_server-protocol (~> 3.17.0.2) - lint_roller (~> 1.1.0) - parallel (~> 1.10) - parser (>= 3.3.0.2) - rainbow (>= 2.2.2, < 4.0) - regexp_parser (>= 2.9.3, < 3.0) - rubocop-ast (>= 1.47.1, < 2.0) - ruby-progressbar (~> 1.7) - unicode-display_width (>= 2.4.0, < 4.0) - rubocop-ast (1.49.0) - parser (>= 3.3.7.2) - prism (~> 1.7) - rubocop-performance (1.26.1) - lint_roller (~> 1.1) - rubocop (>= 1.75.0, < 2.0) - rubocop-ast (>= 1.47.1, < 2.0) - ruby-progressbar (1.13.0) - ruby2_keywords (0.0.5) - securerandom (0.4.1) - sidekiq (8.1.0) - connection_pool (>= 3.0.0) - json (>= 2.16.0) - logger (>= 1.7.0) - rack (>= 3.2.0) - redis-client (>= 0.26.0) - simplecov (0.22.0) - docile (~> 1.1) - simplecov-html (~> 0.11) - simplecov_json_formatter (~> 0.1) - simplecov-html (0.13.2) - simplecov_json_formatter (0.1.4) - sprockets (4.2.2) - concurrent-ruby (~> 1.0) - logger - rack (>= 2.2.4, < 4) - sprockets-rails (3.5.2) - actionpack (>= 6.1) - activesupport (>= 6.1) - sprockets (>= 3.0.0) - sqlite3 (2.9.0-aarch64-linux-gnu) - sqlite3 (2.9.0-aarch64-linux-musl) - sqlite3 (2.9.0-arm-linux-gnu) - sqlite3 (2.9.0-arm-linux-musl) - sqlite3 (2.9.0-arm64-darwin) - sqlite3 (2.9.0-x86_64-darwin) - sqlite3 (2.9.0-x86_64-linux-gnu) - sqlite3 (2.9.0-x86_64-linux-musl) - standard (1.52.0) - language_server-protocol (~> 3.17.0.2) - lint_roller (~> 1.0) - rubocop (~> 1.81.7) - standard-custom (~> 1.0.0) - standard-performance (~> 1.8) - standard-custom (1.0.2) - lint_roller (~> 1.0) - rubocop (~> 1.50) - standard-performance (1.9.0) - lint_roller (~> 1.1) - rubocop-performance (~> 1.26.0) - standardrb (1.0.1) - standard - stringio (3.2.0) - sys-cpu (1.1.0) - ffi (~> 1.1) - sys-filesystem (1.5.5) - ffi (~> 1.1) - thor (1.5.0) - timeout (0.6.0) - tsort (0.2.0) - tzinfo (2.0.6) - concurrent-ruby (~> 1.0) - unicode-display_width (3.2.0) - unicode-emoji (~> 4.1) - unicode-emoji (4.2.0) - uri (1.1.1) - useragent (0.16.11) - warden (1.2.9) - rack (>= 2.0.9) - websocket-driver (0.8.0) - base64 - websocket-extensions (>= 0.1.0) - websocket-extensions (0.1.5) - wrapped_print (0.1.1) - activesupport - zeitwerk (2.7.4) - -PLATFORMS - aarch64-linux-gnu - aarch64-linux-musl - arm-linux-gnu - arm-linux-musl - arm64-darwin - x86_64-darwin - x86_64-linux-gnu - x86_64-linux-musl - -DEPENDENCIES - actionmailer - activestorage - appraisal - csv - daemons - debug - delayed_job_active_record - devise - get_process_mem - grape - mimemagic (= 0.4.3) - minitest (~> 5.0) - ostruct - puma - rails (~> 8.0.0) - rails_performance! - sidekiq - simplecov - sprockets-rails - sqlite3 - standard - standardrb - sys-cpu - sys-filesystem - wrapped_print - -BUNDLED WITH - 2.7.2 diff --git a/gemfiles/rails_8.1.gemfile.lock b/gemfiles/rails_8.1.gemfile.lock deleted file mode 100644 index c8955206..00000000 --- a/gemfiles/rails_8.1.gemfile.lock +++ /dev/null @@ -1,414 +0,0 @@ -PATH - remote: .. - specs: - rails_performance (1.6.0) - browser - railties - redis - -GEM - remote: https://rubygems.org/ - specs: - action_text-trix (2.1.16) - railties - actioncable (8.1.1) - actionpack (= 8.1.1) - activesupport (= 8.1.1) - nio4r (~> 2.0) - websocket-driver (>= 0.6.1) - zeitwerk (~> 2.6) - actionmailbox (8.1.1) - actionpack (= 8.1.1) - activejob (= 8.1.1) - activerecord (= 8.1.1) - activestorage (= 8.1.1) - activesupport (= 8.1.1) - mail (>= 2.8.0) - actionmailer (8.1.1) - actionpack (= 8.1.1) - actionview (= 8.1.1) - activejob (= 8.1.1) - activesupport (= 8.1.1) - mail (>= 2.8.0) - rails-dom-testing (~> 2.2) - actionpack (8.1.1) - actionview (= 8.1.1) - activesupport (= 8.1.1) - nokogiri (>= 1.8.5) - rack (>= 2.2.4) - rack-session (>= 1.0.1) - rack-test (>= 0.6.3) - rails-dom-testing (~> 2.2) - rails-html-sanitizer (~> 1.6) - useragent (~> 0.16) - actiontext (8.1.1) - action_text-trix (~> 2.1.15) - actionpack (= 8.1.1) - activerecord (= 8.1.1) - activestorage (= 8.1.1) - activesupport (= 8.1.1) - globalid (>= 0.6.0) - nokogiri (>= 1.8.5) - actionview (8.1.1) - activesupport (= 8.1.1) - builder (~> 3.1) - erubi (~> 1.11) - rails-dom-testing (~> 2.2) - rails-html-sanitizer (~> 1.6) - activejob (8.1.1) - activesupport (= 8.1.1) - globalid (>= 0.3.6) - activemodel (8.1.1) - activesupport (= 8.1.1) - activerecord (8.1.1) - activemodel (= 8.1.1) - activesupport (= 8.1.1) - timeout (>= 0.4.0) - activestorage (8.1.1) - actionpack (= 8.1.1) - activejob (= 8.1.1) - activerecord (= 8.1.1) - activesupport (= 8.1.1) - marcel (~> 1.0) - activesupport (8.1.1) - base64 - bigdecimal - concurrent-ruby (~> 1.0, >= 1.3.1) - connection_pool (>= 2.2.5) - drb - i18n (>= 1.6, < 2) - json - logger (>= 1.4.2) - minitest (>= 5.1) - securerandom (>= 0.3) - tzinfo (~> 2.0, >= 2.0.5) - uri (>= 0.13.1) - appraisal (2.5.0) - bundler - rake - thor (>= 0.14.0) - ast (2.4.3) - base64 (0.3.0) - bcrypt (3.1.21) - benchmark (0.5.0) - bigdecimal (4.0.1) - browser (6.2.0) - builder (3.3.0) - concurrent-ruby (1.3.6) - connection_pool (3.0.2) - crass (1.0.6) - csv (3.3.5) - daemons (1.4.1) - date (3.5.1) - debug (1.11.1) - irb (~> 1.10) - reline (>= 0.3.8) - delayed_job (4.2.0) - activesupport (>= 3.0, < 9.0) - benchmark - logger - delayed_job_active_record (4.1.11) - activerecord (>= 3.0, < 9.0) - delayed_job (>= 3.0, < 5) - devise (4.9.4) - bcrypt (~> 3.0) - orm_adapter (~> 0.1) - railties (>= 4.1.0) - responders - warden (~> 1.2.3) - docile (1.4.1) - drb (2.2.3) - dry-configurable (1.3.0) - dry-core (~> 1.1) - zeitwerk (~> 2.6) - dry-core (1.2.0) - concurrent-ruby (~> 1.0) - logger - zeitwerk (~> 2.6) - dry-inflector (1.2.0) - dry-logic (1.6.0) - bigdecimal - concurrent-ruby (~> 1.0) - dry-core (~> 1.1) - zeitwerk (~> 2.6) - dry-types (1.7.1) - concurrent-ruby (~> 1.0) - dry-core (~> 1.0) - dry-inflector (~> 1.0) - dry-logic (~> 1.4) - zeitwerk (~> 2.6) - erb (6.0.1) - erubi (1.13.1) - ffi (1.17.3-aarch64-linux-gnu) - ffi (1.17.3-aarch64-linux-musl) - ffi (1.17.3-arm-linux-gnu) - ffi (1.17.3-arm-linux-musl) - ffi (1.17.3-arm64-darwin) - ffi (1.17.3-x86_64-darwin) - ffi (1.17.3-x86_64-linux-gnu) - ffi (1.17.3-x86_64-linux-musl) - get_process_mem (1.0.0) - bigdecimal (>= 2.0) - ffi (~> 1.0) - globalid (1.3.0) - activesupport (>= 6.1) - grape (3.0.1) - activesupport (>= 7.0) - dry-configurable - dry-types (>= 1.1) - mustermann-grape (~> 1.1.0) - rack (>= 2) - zeitwerk - i18n (1.14.8) - concurrent-ruby (~> 1.0) - io-console (0.8.2) - irb (1.16.0) - pp (>= 0.6.0) - rdoc (>= 4.0.0) - reline (>= 0.4.2) - json (2.18.0) - language_server-protocol (3.17.0.5) - lint_roller (1.1.0) - logger (1.7.0) - loofah (2.25.0) - crass (~> 1.0.2) - nokogiri (>= 1.12.0) - mail (2.9.0) - logger - mini_mime (>= 0.1.1) - net-imap - net-pop - net-smtp - marcel (1.1.0) - mimemagic (0.4.3) - nokogiri (~> 1) - rake - mini_mime (1.1.5) - minitest (5.27.0) - mustermann (3.0.4) - ruby2_keywords (~> 0.0.1) - mustermann-grape (1.1.0) - mustermann (>= 1.0.0) - net-imap (0.6.2) - date - net-protocol - net-pop (0.1.2) - net-protocol - net-protocol (0.2.2) - timeout - net-smtp (0.5.1) - net-protocol - nio4r (2.7.5) - nokogiri (1.19.0-aarch64-linux-gnu) - racc (~> 1.4) - nokogiri (1.19.0-aarch64-linux-musl) - racc (~> 1.4) - nokogiri (1.19.0-arm-linux-gnu) - racc (~> 1.4) - nokogiri (1.19.0-arm-linux-musl) - racc (~> 1.4) - nokogiri (1.19.0-arm64-darwin) - racc (~> 1.4) - nokogiri (1.19.0-x86_64-darwin) - racc (~> 1.4) - nokogiri (1.19.0-x86_64-linux-gnu) - racc (~> 1.4) - nokogiri (1.19.0-x86_64-linux-musl) - racc (~> 1.4) - orm_adapter (0.5.0) - ostruct (0.6.3) - parallel (1.27.0) - parser (3.3.10.0) - ast (~> 2.4.1) - racc - pp (0.6.3) - prettyprint - prettyprint (0.2.0) - prism (1.7.0) - psych (5.3.1) - date - stringio - puma (7.1.0) - nio4r (~> 2.0) - racc (1.8.1) - rack (3.2.4) - rack-session (2.1.1) - base64 (>= 0.1.0) - rack (>= 3.0.0) - rack-test (2.2.0) - rack (>= 1.3) - rackup (2.3.1) - rack (>= 3) - rails (8.1.1) - actioncable (= 8.1.1) - actionmailbox (= 8.1.1) - actionmailer (= 8.1.1) - actionpack (= 8.1.1) - actiontext (= 8.1.1) - actionview (= 8.1.1) - activejob (= 8.1.1) - activemodel (= 8.1.1) - activerecord (= 8.1.1) - activestorage (= 8.1.1) - activesupport (= 8.1.1) - bundler (>= 1.15.0) - railties (= 8.1.1) - rails-dom-testing (2.3.0) - activesupport (>= 5.0.0) - minitest - nokogiri (>= 1.6) - rails-html-sanitizer (1.6.2) - loofah (~> 2.21) - nokogiri (>= 1.15.7, != 1.16.7, != 1.16.6, != 1.16.5, != 1.16.4, != 1.16.3, != 1.16.2, != 1.16.1, != 1.16.0.rc1, != 1.16.0) - railties (8.1.1) - actionpack (= 8.1.1) - activesupport (= 8.1.1) - irb (~> 1.13) - rackup (>= 1.0.0) - rake (>= 12.2) - thor (~> 1.0, >= 1.2.2) - tsort (>= 0.2) - zeitwerk (~> 2.6) - rainbow (3.1.1) - rake (13.3.1) - rdoc (7.0.3) - erb - psych (>= 4.0.0) - tsort - redis (5.4.1) - redis-client (>= 0.22.0) - redis-client (0.26.3) - connection_pool - regexp_parser (2.11.3) - reline (0.6.3) - io-console (~> 0.5) - responders (3.2.0) - actionpack (>= 7.0) - railties (>= 7.0) - rubocop (1.81.7) - json (~> 2.3) - language_server-protocol (~> 3.17.0.2) - lint_roller (~> 1.1.0) - parallel (~> 1.10) - parser (>= 3.3.0.2) - rainbow (>= 2.2.2, < 4.0) - regexp_parser (>= 2.9.3, < 3.0) - rubocop-ast (>= 1.47.1, < 2.0) - ruby-progressbar (~> 1.7) - unicode-display_width (>= 2.4.0, < 4.0) - rubocop-ast (1.49.0) - parser (>= 3.3.7.2) - prism (~> 1.7) - rubocop-performance (1.26.1) - lint_roller (~> 1.1) - rubocop (>= 1.75.0, < 2.0) - rubocop-ast (>= 1.47.1, < 2.0) - ruby-progressbar (1.13.0) - ruby2_keywords (0.0.5) - securerandom (0.4.1) - sidekiq (8.1.0) - connection_pool (>= 3.0.0) - json (>= 2.16.0) - logger (>= 1.7.0) - rack (>= 3.2.0) - redis-client (>= 0.26.0) - simplecov (0.22.0) - docile (~> 1.1) - simplecov-html (~> 0.11) - simplecov_json_formatter (~> 0.1) - simplecov-html (0.13.2) - simplecov_json_formatter (0.1.4) - sprockets (4.2.2) - concurrent-ruby (~> 1.0) - logger - rack (>= 2.2.4, < 4) - sprockets-rails (3.5.2) - actionpack (>= 6.1) - activesupport (>= 6.1) - sprockets (>= 3.0.0) - sqlite3 (2.9.0-aarch64-linux-gnu) - sqlite3 (2.9.0-aarch64-linux-musl) - sqlite3 (2.9.0-arm-linux-gnu) - sqlite3 (2.9.0-arm-linux-musl) - sqlite3 (2.9.0-arm64-darwin) - sqlite3 (2.9.0-x86_64-darwin) - sqlite3 (2.9.0-x86_64-linux-gnu) - sqlite3 (2.9.0-x86_64-linux-musl) - standard (1.52.0) - language_server-protocol (~> 3.17.0.2) - lint_roller (~> 1.0) - rubocop (~> 1.81.7) - standard-custom (~> 1.0.0) - standard-performance (~> 1.8) - standard-custom (1.0.2) - lint_roller (~> 1.0) - rubocop (~> 1.50) - standard-performance (1.9.0) - lint_roller (~> 1.1) - rubocop-performance (~> 1.26.0) - standardrb (1.0.1) - standard - stringio (3.2.0) - sys-cpu (1.1.0) - ffi (~> 1.1) - sys-filesystem (1.5.5) - ffi (~> 1.1) - thor (1.5.0) - timeout (0.6.0) - tsort (0.2.0) - tzinfo (2.0.6) - concurrent-ruby (~> 1.0) - unicode-display_width (3.2.0) - unicode-emoji (~> 4.1) - unicode-emoji (4.2.0) - uri (1.1.1) - useragent (0.16.11) - warden (1.2.9) - rack (>= 2.0.9) - websocket-driver (0.8.0) - base64 - websocket-extensions (>= 0.1.0) - websocket-extensions (0.1.5) - wrapped_print (0.1.1) - activesupport - zeitwerk (2.7.4) - -PLATFORMS - aarch64-linux-gnu - aarch64-linux-musl - arm-linux-gnu - arm-linux-musl - arm64-darwin - x86_64-darwin - x86_64-linux-gnu - x86_64-linux-musl - -DEPENDENCIES - actionmailer - activestorage - appraisal - csv - daemons - debug - delayed_job_active_record - devise - get_process_mem - grape - mimemagic (= 0.4.3) - minitest (~> 5.0) - ostruct - puma - rails (~> 8.1.0) - rails_performance! - sidekiq - simplecov - sprockets-rails - sqlite3 - standard - standardrb - sys-cpu - sys-filesystem - wrapped_print - -BUNDLED WITH - 2.7.2 diff --git a/lib/rails_performance.rb b/lib/rails_performance.rb index 78f01821..19e10a45 100644 --- a/lib/rails_performance.rb +++ b/lib/rails_performance.rb @@ -38,7 +38,7 @@ require_relative "rails_performance/extensions/trace" require_relative "rails_performance/thread/current_request" require_relative "rails_performance/interface" -require_relative "rails_performance/engine_assets" +require "isolate_assets" module RailsPerformance extend RailsPerformance::Interface @@ -168,8 +168,6 @@ def self.ignored_paths=(paths) mattr_accessor :_resource_monitor_enabled @@_resource_monitor_enabled = false - mattr_accessor :engine_assets - def self.setup yield(self) end diff --git a/lib/rails_performance/engine.rb b/lib/rails_performance/engine.rb index 75f6f04f..e3348810 100644 --- a/lib/rails_performance/engine.rb +++ b/lib/rails_performance/engine.rb @@ -8,9 +8,7 @@ module RailsPerformance class Engine < ::Rails::Engine isolate_namespace RailsPerformance - initializer "rails_performance.engine_assets", before: :set_routes_reloader do - RailsPerformance.engine_assets = EngineAssets.new(engine: self) - end + isolate_assets assets_subdir: "engine_assets" initializer "rails_performance.resource_monitor" do # check required gems are available diff --git a/lib/rails_performance/engine_assets.rb b/lib/rails_performance/engine_assets.rb deleted file mode 100644 index ba07b3e8..00000000 --- a/lib/rails_performance/engine_assets.rb +++ /dev/null @@ -1,90 +0,0 @@ -require "digest/sha2" -require_relative "engine_assets/controller" -require_relative "engine_assets/helper" - -module RailsPerformance - class EngineAssets - attr_reader :engine, :assets_subdir - - def initialize(engine:, assets_subdir: "engine_assets") - @engine = engine - @assets_subdir = assets_subdir - @fingerprints = {} - draw_routes - end - - def asset_path(source, type) - case type.to_s - when "js", "javascript" - engine.root.join("app/#{assets_subdir}/javascripts", "#{source}.js") - when "css", "stylesheet" - engine.root.join("app/#{assets_subdir}/stylesheets", "#{source}.css") - end - end - - def asset_url(source, type) - fingerprint_value = fingerprint(source, type) - engine.routes.url_helpers.engine_asset_path("#{source}.#{normalize_type(type)}", v: fingerprint_value) - end - - def fingerprint(source, type) - cache_key = "#{source}.#{type}" - - if ::Rails.env.production? - @fingerprints[cache_key] ||= calculate_fingerprint(source, type) - else - calculate_fingerprint(source, type) - end - end - - def content_type(type) - case type.to_s - when "js", "javascript" - "application/javascript" - when "css", "stylesheet" - "text/css" - else - "application/octet-stream" - end - end - - def javascript_files - engine.root.glob("app/#{assets_subdir}/javascripts/**/*.js") - end - - def helper - Helper.engine_assets = self - Helper - end - - private - - def draw_routes - Controller.engine_assets = self - engine.routes.prepend do - get "/assets/*file", to: Controller.action(:show), as: :engine_asset - end - end - - def normalize_type(type) - case type.to_s - when "javascript" - "js" - when "stylesheet" - "css" - else - type.to_s - end - end - - def calculate_fingerprint(source, type) - file_path = asset_path(source, type) - - if file_path && File.exist?(file_path) - Digest::SHA256.file(file_path).hexdigest[0...8] - else - "missing" - end - end - end -end diff --git a/lib/rails_performance/engine_assets/controller.rb b/lib/rails_performance/engine_assets/controller.rb deleted file mode 100644 index bd9a8983..00000000 --- a/lib/rails_performance/engine_assets/controller.rb +++ /dev/null @@ -1,42 +0,0 @@ -module RailsPerformance - class EngineAssets - class Controller < ActionController::Base - def show - file_path = safe_file_path - - if file_path && File.exist?(file_path) - send_file file_path, - type: content_type, - disposition: "inline" - - fresh_when(etag: File.mtime(file_path), public: true) - expires_in 1.year, public: true - else - head :not_found - end - end - - private - - cattr_accessor :engine_assets - - def safe_file_path - requested = params[:file].gsub("..", "") - format = params[:format] || request.format.symbol.to_s - engine_assets.asset_path(requested, format) - end - - def content_type - format = params[:format] || request.format.symbol.to_s - engine_assets.content_type(format) - end - - # Override to allow cross-origin JavaScript embedding - # This is really dumb because it IS the same origin, but Chrome's import apparently doesn't send the Origin header. - # Is there a better way to resolve this? - def verify_same_origin_request - # no-op - end - end - end -end diff --git a/lib/rails_performance/engine_assets/helper.rb b/lib/rails_performance/engine_assets/helper.rb deleted file mode 100644 index 5f555e7f..00000000 --- a/lib/rails_performance/engine_assets/helper.rb +++ /dev/null @@ -1,49 +0,0 @@ -module RailsPerformance - class EngineAssets - module Helper - mattr_accessor :engine_assets - - def engine_asset_url(source, type) - fingerprint_value = engine_assets.fingerprint(source, type) - normalized_type = case type.to_s - when "javascript" then "js" - when "stylesheet" then "css" - else type.to_s - end - engine_asset_path("#{source}.#{normalized_type}", v: fingerprint_value) - end - - def engine_stylesheet_link_tag(source, **options) - tag.link( - rel: "stylesheet", - href: engine_asset_url(source, "css"), - **options - ) - end - - def engine_javascript_include_tag(source, **options) - tag.script( - src: engine_asset_url(source, "js"), - **options - ) - end - - def engine_javascript_importmap_tags(entry_point = "application", imports = {}) - assets_root = engine_assets.engine.root.join("app/#{engine_assets.assets_subdir}/javascripts") - engine_imports = engine_assets.javascript_files.each_with_object({}) do |path, hash| - relative_path = path.relative_path_from(assets_root).to_s - key = "#{engine_assets.engine.engine_name}/#{relative_path.sub(/\.js\z/, "")}" - hash[key] = engine_asset_url(relative_path.sub(/\.js\z/, ""), "js") - end - [ - tag.script(type: "importmap") do - JSON.pretty_generate({"imports" => imports.merge(engine_imports)}).html_safe - end, - tag.script(<<~JS.html_safe, type: "module") - import "#{engine_assets.engine.engine_name}/#{entry_point}" - JS - ].join("\n").html_safe - end - end - end -end diff --git a/rails_performance.gemspec b/rails_performance.gemspec index 4578450a..f8a2514a 100644 --- a/rails_performance.gemspec +++ b/rails_performance.gemspec @@ -19,6 +19,7 @@ Gem::Specification.new do |spec| spec.add_dependency "railties" spec.add_dependency "redis" spec.add_dependency "browser" + spec.add_dependency "isolate_assets", "~> 0.3.0" spec.add_development_dependency "activestorage" spec.add_development_dependency "actionmailer" diff --git a/test/dummy/.ruby-version b/test/dummy/.ruby-version deleted file mode 100644 index 9e79f6c4..00000000 --- a/test/dummy/.ruby-version +++ /dev/null @@ -1 +0,0 @@ -ruby-3.2.2