diff --git a/.idea/games.iml b/.idea/games.iml
index c10e138..ffabe9a 100644
--- a/.idea/games.iml
+++ b/.idea/games.iml
@@ -26,17 +26,17 @@
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
@@ -44,7 +44,7 @@
-
+
@@ -63,7 +63,7 @@
-
+
@@ -82,10 +82,10 @@
-
+
-
+
diff --git a/config/environments/production.rb b/config/environments/production.rb
index 2d92550..cfefdc7 100644
--- a/config/environments/production.rb
+++ b/config/environments/production.rb
@@ -43,6 +43,7 @@
# Force all access to the app over SSL, use Strict-Transport-Security, and use secure cookies.
config.force_ssl = true
+
# Skip http-to-https redirect for the default health check endpoint.
# config.ssl_options = { redirect: { exclude: ->(request) { request.path == "/up" } } }
diff --git a/config/puma.rb b/config/puma.rb
index 6392929..29b526a 100644
--- a/config/puma.rb
+++ b/config/puma.rb
@@ -27,23 +27,6 @@
rails_env = ENV.fetch("RAILS_ENV", "development")
environment rails_env
-case rails_env
-when "production"
- # If you are running more than 1 thread per process, the workers count
- # should be equal to the number of processors (CPU cores) in production.
- #
- # Automatically detect the number of available processors in production.
- require "concurrent-ruby"
- workers_count = Integer(ENV.fetch("WEB_CONCURRENCY") { Concurrent.available_processor_count })
- workers workers_count if workers_count > 1
-
- preload_app!
-when "development"
- # Specifies a very generous `worker_timeout` so that the worker
- # isn't killed by Puma when suspended by a debugger.
- worker_timeout 3600
-end
-
# Specifies the `port` that Puma will listen on to receive requests; default is 3000.
port ENV.fetch("PORT", 3000)
diff --git a/db/migrate/20240815040205_add_service_name_to_active_storage_blobs.active_storage.rb b/db/migrate/20240815040205_add_service_name_to_active_storage_blobs.active_storage.rb
new file mode 100644
index 0000000..a15c6ce
--- /dev/null
+++ b/db/migrate/20240815040205_add_service_name_to_active_storage_blobs.active_storage.rb
@@ -0,0 +1,22 @@
+# This migration comes from active_storage (originally 20190112182829)
+class AddServiceNameToActiveStorageBlobs < ActiveRecord::Migration[6.0]
+ def up
+ return unless table_exists?(:active_storage_blobs)
+
+ unless column_exists?(:active_storage_blobs, :service_name)
+ add_column :active_storage_blobs, :service_name, :string
+
+ if configured_service = ActiveStorage::Blob.service.name
+ ActiveStorage::Blob.unscoped.update_all(service_name: configured_service)
+ end
+
+ change_column :active_storage_blobs, :service_name, :string, null: false
+ end
+ end
+
+ def down
+ return unless table_exists?(:active_storage_blobs)
+
+ remove_column :active_storage_blobs, :service_name
+ end
+end
diff --git a/db/migrate/20240815040206_create_active_storage_variant_records.active_storage.rb b/db/migrate/20240815040206_create_active_storage_variant_records.active_storage.rb
new file mode 100644
index 0000000..94ac83a
--- /dev/null
+++ b/db/migrate/20240815040206_create_active_storage_variant_records.active_storage.rb
@@ -0,0 +1,27 @@
+# This migration comes from active_storage (originally 20191206030411)
+class CreateActiveStorageVariantRecords < ActiveRecord::Migration[6.0]
+ def change
+ return unless table_exists?(:active_storage_blobs)
+
+ # Use Active Record's configured type for primary key
+ create_table :active_storage_variant_records, id: primary_key_type, if_not_exists: true do |t|
+ t.belongs_to :blob, null: false, index: false, type: blobs_primary_key_type
+ t.string :variation_digest, null: false
+
+ t.index %i[ blob_id variation_digest ], name: "index_active_storage_variant_records_uniqueness", unique: true
+ t.foreign_key :active_storage_blobs, column: :blob_id
+ end
+ end
+
+ private
+ def primary_key_type
+ config = Rails.configuration.generators
+ config.options[config.orm][:primary_key_type] || :primary_key
+ end
+
+ def blobs_primary_key_type
+ pkey_name = connection.primary_key(:active_storage_blobs)
+ pkey_column = connection.columns(:active_storage_blobs).find { |c| c.name == pkey_name }
+ pkey_column.bigint? ? :bigint : pkey_column.type
+ end
+end
diff --git a/db/migrate/20240815040207_remove_not_null_on_active_storage_blobs_checksum.active_storage.rb b/db/migrate/20240815040207_remove_not_null_on_active_storage_blobs_checksum.active_storage.rb
new file mode 100644
index 0000000..93c8b85
--- /dev/null
+++ b/db/migrate/20240815040207_remove_not_null_on_active_storage_blobs_checksum.active_storage.rb
@@ -0,0 +1,8 @@
+# This migration comes from active_storage (originally 20211119233751)
+class RemoveNotNullOnActiveStorageBlobsChecksum < ActiveRecord::Migration[6.0]
+ def change
+ return unless table_exists?(:active_storage_blobs)
+
+ change_column_null(:active_storage_blobs, :checksum, true)
+ end
+end
diff --git a/db/schema.rb b/db/schema.rb
index 83701a2..923cc68 100644
--- a/db/schema.rb
+++ b/db/schema.rb
@@ -10,7 +10,7 @@
#
# It's strongly recommended that you check this file into your version control system.
-ActiveRecord::Schema[7.2].define(version: 0) do
+ActiveRecord::Schema[7.2].define(version: 2024_08_15_040207) do
# These are extensions that must be enabled in order to support this database
enable_extension "plpgsql"