From 3f7cc794f14290a28e78836c20e745c096deb3dc Mon Sep 17 00:00:00 2001 From: Senem Soy Date: Wed, 30 Apr 2025 13:30:00 -0700 Subject: [PATCH 1/3] Use email regexp configured on Solidus This is to prevent a situation where an email is valid on the User, but invalid on the Order. This ensures that when an email is being copied from the User when an order is being created, there are no validation errors. Co-authored-by: Jared Norman --- .../solidus/auth/install/templates/config/initializers/devise.rb | 1 + 1 file changed, 1 insertion(+) diff --git a/lib/generators/solidus/auth/install/templates/config/initializers/devise.rb b/lib/generators/solidus/auth/install/templates/config/initializers/devise.rb index ffe0f494..fb67406c 100644 --- a/lib/generators/solidus/auth/install/templates/config/initializers/devise.rb +++ b/lib/generators/solidus/auth/install/templates/config/initializers/devise.rb @@ -1,3 +1,4 @@ # frozen_string_literal: true Devise.secret_key = SecureRandom.hex(50).inspect +Devise.email_regexp = Spree::Config[:default_email_regexp] From ab212014b4dc7ecc7411d7ca53e1d417c41d515c Mon Sep 17 00:00:00 2001 From: Senem Soy Date: Thu, 1 May 2025 15:29:43 -0700 Subject: [PATCH 2/3] Fix default configuration for `Devise.secret_key` This is the default configuration Devise uses. What we had previously sets the `Devise.secret_key` to a random value at application boot that is not known across different instances of the same application. --- .../auth/install/templates/config/initializers/devise.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/generators/solidus/auth/install/templates/config/initializers/devise.rb b/lib/generators/solidus/auth/install/templates/config/initializers/devise.rb index fb67406c..3e1a9b0d 100644 --- a/lib/generators/solidus/auth/install/templates/config/initializers/devise.rb +++ b/lib/generators/solidus/auth/install/templates/config/initializers/devise.rb @@ -1,4 +1,4 @@ # frozen_string_literal: true -Devise.secret_key = SecureRandom.hex(50).inspect +Devise.secret_key = '<%= SecureRandom.hex(64) %>' Devise.email_regexp = Spree::Config[:default_email_regexp] From 3eadb065d2624ed844d396578495264c930083e8 Mon Sep 17 00:00:00 2001 From: Senem Soy Date: Wed, 7 May 2025 13:19:51 -0700 Subject: [PATCH 3/3] Rename Devise initializer template This makes it obvious that this is an ERB template. Co-authored-by: Jared Norman --- lib/generators/solidus/auth/install/install_generator.rb | 2 +- .../templates/config/initializers/{devise.rb => devise.rb.erb} | 0 2 files changed, 1 insertion(+), 1 deletion(-) rename lib/generators/solidus/auth/install/templates/config/initializers/{devise.rb => devise.rb.erb} (100%) diff --git a/lib/generators/solidus/auth/install/install_generator.rb b/lib/generators/solidus/auth/install/install_generator.rb index c6ef547e..a569bc6a 100644 --- a/lib/generators/solidus/auth/install/install_generator.rb +++ b/lib/generators/solidus/auth/install/install_generator.rb @@ -14,7 +14,7 @@ class InstallGenerator < Rails::Generators::Base source_root "#{__dir__}/templates" def generate_devise_key - template 'config/initializers/devise.rb', 'config/initializers/devise.rb', skip: true + template 'config/initializers/devise.rb.erb', 'config/initializers/devise.rb', skip: true end def add_migrations diff --git a/lib/generators/solidus/auth/install/templates/config/initializers/devise.rb b/lib/generators/solidus/auth/install/templates/config/initializers/devise.rb.erb similarity index 100% rename from lib/generators/solidus/auth/install/templates/config/initializers/devise.rb rename to lib/generators/solidus/auth/install/templates/config/initializers/devise.rb.erb