diff --git a/gemfiles/5_0_stable.gemfile b/gemfiles/5_0_stable.gemfile index 0355dc6..5824520 100644 --- a/gemfiles/5_0_stable.gemfile +++ b/gemfiles/5_0_stable.gemfile @@ -6,5 +6,6 @@ source 'https://rubygems.org' gem 'activerecord', '~> 5.0' gem 'sqlite3', '~> 1.3.6' +gem 'concurrent-ruby', '1.3.4', require: false gemspec path: '../' diff --git a/gemfiles/5_1_stable.gemfile b/gemfiles/5_1_stable.gemfile index 8136a1e..dac824d 100644 --- a/gemfiles/5_1_stable.gemfile +++ b/gemfiles/5_1_stable.gemfile @@ -5,5 +5,6 @@ source 'https://rubygems.org' gem 'activerecord', '~> 5.1' +gem 'concurrent-ruby', '1.3.4', require: false gemspec path: '../' diff --git a/gemfiles/5_2_stable.gemfile b/gemfiles/5_2_stable.gemfile index 0581ddb..0046544 100644 --- a/gemfiles/5_2_stable.gemfile +++ b/gemfiles/5_2_stable.gemfile @@ -5,5 +5,6 @@ source 'https://rubygems.org' gem 'activerecord', '~> 5.2' +gem 'concurrent-ruby', '1.3.4', require: false gemspec path: '../' diff --git a/gemfiles/6_0_stable.gemfile b/gemfiles/6_0_stable.gemfile index 852b24f..5cff700 100644 --- a/gemfiles/6_0_stable.gemfile +++ b/gemfiles/6_0_stable.gemfile @@ -5,5 +5,6 @@ source 'https://rubygems.org' gem 'activerecord', '~> 6.0' +gem 'concurrent-ruby', '1.3.4', require: false gemspec path: '../' diff --git a/gemfiles/6_1_stable.gemfile b/gemfiles/6_1_stable.gemfile index 3e16a96..bd42223 100644 --- a/gemfiles/6_1_stable.gemfile +++ b/gemfiles/6_1_stable.gemfile @@ -5,5 +5,6 @@ source 'https://rubygems.org' gem 'activerecord', '~> 6.1' +gem 'concurrent-ruby', '1.3.4', require: false gemspec path: '../' diff --git a/gemfiles/7_0_stable.gemfile b/gemfiles/7_0_stable.gemfile index cffa6d1..f112bd2 100644 --- a/gemfiles/7_0_stable.gemfile +++ b/gemfiles/7_0_stable.gemfile @@ -5,5 +5,6 @@ source 'https://rubygems.org' gem 'activerecord', '~> 7.0' +gem 'concurrent-ruby', '1.3.4', require: false gemspec path: '../' diff --git a/lib/active_record_encrypted_string/type.rb b/lib/active_record_encrypted_string/type.rb index 4e369d2..64a56bb 100644 --- a/lib/active_record_encrypted_string/type.rb +++ b/lib/active_record_encrypted_string/type.rb @@ -36,7 +36,8 @@ def changed_in_place?(raw_old_value, new_value) def encryptor # TODO: rotate - ActiveSupport::MessageEncryptor.new(secret, cipher: ActiveRecordEncryptedString.configuration.cipher_alg) + @encryptor ||= + ActiveSupport::MessageEncryptor.new(secret, cipher: ActiveRecordEncryptedString.configuration.cipher_alg) end def secret