git: 3426627ccab3 - main - security/rubygem-devise-two-factor-rails61: Allow build with rubygem-attr_encrypted 4.*
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Sun, 07 May 2023 21:21:14 UTC
The branch main has been updated by sunpoet: URL: https://cgit.FreeBSD.org/ports/commit/?id=3426627ccab3d9331bfa903579b5f15d1020e5c7 commit 3426627ccab3d9331bfa903579b5f15d1020e5c7 Author: Po-Chuan Hsieh <sunpoet@FreeBSD.org> AuthorDate: 2023-05-07 21:14:28 +0000 Commit: Po-Chuan Hsieh <sunpoet@FreeBSD.org> CommitDate: 2023-05-07 21:14:28 +0000 security/rubygem-devise-two-factor-rails61: Allow build with rubygem-attr_encrypted 4.* - Bump PORTREVISION for package change Obtained from: https://github.com/tinfoil/devise-two-factor/commit/e685f91ce62d036259885fbe31fcb4fa930bcfcb --- .../rubygem-devise-two-factor-rails61/Makefile | 3 +- .../files/patch-attr_encrypted | 48 ++++++++++++++++++++++ 2 files changed, 50 insertions(+), 1 deletion(-) diff --git a/security/rubygem-devise-two-factor-rails61/Makefile b/security/rubygem-devise-two-factor-rails61/Makefile index 21274cc41f27..560958696121 100644 --- a/security/rubygem-devise-two-factor-rails61/Makefile +++ b/security/rubygem-devise-two-factor-rails61/Makefile @@ -1,5 +1,6 @@ PORTNAME= devise-two-factor PORTVERSION= 4.0.2 +PORTREVISION= 1 CATEGORIES= security rubygems MASTER_SITES= RG PKGNAMESUFFIX= -rails61 @@ -12,7 +13,7 @@ LICENSE= MIT LICENSE_FILE= ${WRKSRC}/LICENSE RUN_DEPENDS= rubygem-activesupport61>=0<7.1:devel/rubygem-activesupport61 \ - rubygem-attr_encrypted>=3<4:security/rubygem-attr_encrypted \ + rubygem-attr_encrypted>=3<5:security/rubygem-attr_encrypted \ rubygem-devise-rails61>=4.0<5:devel/rubygem-devise-rails61 \ rubygem-railties61>=0<7.1:www/rubygem-railties61 \ rubygem-rotp>=6.0<7:devel/rubygem-rotp diff --git a/security/rubygem-devise-two-factor-rails61/files/patch-attr_encrypted b/security/rubygem-devise-two-factor-rails61/files/patch-attr_encrypted new file mode 100644 index 000000000000..10b05cbe309f --- /dev/null +++ b/security/rubygem-devise-two-factor-rails61/files/patch-attr_encrypted @@ -0,0 +1,48 @@ +--- devise-two-factor.gemspec.orig 2023-05-07 17:19:51 UTC ++++ devise-two-factor.gemspec +@@ -23,7 +23,7 @@ Gem::Specification.new do |s| + + s.add_runtime_dependency(%q<railties>.freeze, ["< 7.1"]) + s.add_runtime_dependency(%q<activesupport>.freeze, ["< 7.1"]) +- s.add_runtime_dependency(%q<attr_encrypted>.freeze, [">= 1.3", "< 4", "!= 2"]) ++ s.add_runtime_dependency(%q<attr_encrypted>.freeze, [">= 1.3", "< 5", "!= 2"]) + s.add_runtime_dependency(%q<devise>.freeze, ["~> 4.0"]) + s.add_runtime_dependency(%q<rotp>.freeze, ["~> 6.0"]) + s.add_development_dependency(%q<activemodel>.freeze, [">= 0"]) +--- spec/devise/models/two_factor_authenticatable_spec.rb.orig 2023-05-07 17:23:37 UTC ++++ spec/devise/models/two_factor_authenticatable_spec.rb +@@ -64,15 +64,31 @@ describe ::Devise::Models::TwoFactorAuthenticatable do + + describe 'otp_secret options' do + it 'should be of the key' do +- expect(subject.encrypted_attributes[:otp_secret][:key]).to eq('test-key'*8) ++ if attr_encrypted_is_rails_seven_compatible? ++ expect(subject.attr_encrypted_encrypted_attributes[:otp_secret][:key]).to eq('test-key'*8) ++ else ++ expect(subject.encrypted_attributes[:otp_secret][:key]).to eq('test-key'*8) ++ end + end + + it 'should be of the mode' do +- expect(subject.encrypted_attributes[:otp_secret][:mode]).to eq(:per_attribute_iv_and_salt) ++ if attr_encrypted_is_rails_seven_compatible? ++ expect(subject.attr_encrypted_encrypted_attributes[:otp_secret][:mode]).to eq(:per_attribute_iv_and_salt) ++ else ++ expect(subject.encrypted_attributes[:otp_secret][:mode]).to eq(:per_attribute_iv_and_salt) ++ end + end + + it 'should be of the mode' do +- expect(subject.encrypted_attributes[:otp_secret][:algorithm]).to eq('aes-256-cbc') ++ if attr_encrypted_is_rails_seven_compatible? ++ expect(subject.attr_encrypted_encrypted_attributes[:otp_secret][:algorithm]).to eq('aes-256-cbc') ++ else ++ expect(subject.encrypted_attributes[:otp_secret][:algorithm]).to eq('aes-256-cbc') ++ end ++ end ++ ++ def attr_encrypted_is_rails_seven_compatible? ++ Gem::Version.new(AttrEncrypted::Version.string) >= Gem::Version.new('4.0.0') + end + end + end