maintainer-feedback requested: [Bug 262697] mail/rubygem-mail patch does not apply on quarterly 2022Q1

From: <bugzilla-noreply_at_freebsd.org>
Date: Mon, 21 Mar 2022 10:10:47 UTC
Bugzilla Automation <bugzilla@FreeBSD.org> has asked freebsd-ruby (Nobody)
<ruby@FreeBSD.org> for maintainer-feedback:
Bug 262697: mail/rubygem-mail patch does not apply on quarterly 2022Q1
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=262697



--- Description ---
Current version of rubygem-mail contains files/patch-mail.gemspec which does
not apply on quarterly ports tree.
I tried to update my repo in poudriere but it failed with the following error:

=======================<phase: patch	      >============================
===== env: NO_DEPENDS=yes USER=nobody UID=65534 GID=65534
===>  Patching for rubygem-mail-2.7.1_1,2
===>  Applying FreeBSD patches for rubygem-mail-2.7.1_1,2 from
/usr/ports/mail/rubygem-mail/files
1 out of 2 hunks failed--saving rejects to mail.gemspec.rej
===>  FAILED Applying FreeBSD patch-mail.gemspec
===> FAILED to apply cleanly FreeBSD patch(es)	patch-mail.gemspec
*** Error code 1

Stop.
make: stopped in /usr/ports/mail/rubygem-mail
=>> Cleaning up wrkdir
===>  Cleaning for rubygem-mail-2.7.1_1,2
build of mail/rubygem-mail | rubygem-mail-2.7.1_1,2 ended at Sun Mar 20
17:39:04 CET 2022
build time: 00:00:21
!!! build failure encountered !!!


patch-mail.gemspec seems to me like patch for a different version of
mail.gemspec because there is a different block of code:

patch from ports has this:

@@ -24,6 +24,7 @@ Gem::Specification.new do |s|
   end

   if s.respond_to? :add_runtime_dependency then
+    s.add_runtime_dependency(%q<net-smtp>.freeze, [">= 0"])
     s.add_runtime_dependency(%q<mini_mime>.freeze, [">= 0.1.1"])
     s.add_development_dependency(%q<bundler>.freeze, [">= 1.0.3"])
     s.add_development_dependency(%q<rake>.freeze, ["> 0.8.7"])
@@ -31,6 +32,7 @@ Gem::Specification.new do |s|
     s.add_development_dependency(%q<rdoc>.freeze, [">= 0"])
     s.add_development_dependency(%q<rufo>.freeze, [">= 0"])
   else
+    s.add_dependency(%q<net-smtp>.freeze, [">= 0"])
     s.add_dependency(%q<mini_mime>.freeze, [">= 0.1.1"])
     s.add_dependency(%q<bundler>.freeze, [">= 1.0.3"])
     s.add_dependency(%q<rake>.freeze, ["> 0.8.7"])



But the file mail.gemspec has this:

  if s.respond_to? :specification_version then
    s.specification_version = 4

    if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
      s.add_runtime_dependency(%q<mini_mime>.freeze, [">= 0.1.1"])
      s.add_development_dependency(%q<bundler>.freeze, [">= 1.0.3"])
      s.add_development_dependency(%q<rake>.freeze, ["> 0.8.7"])
      s.add_development_dependency(%q<rspec>.freeze, ["~> 3.0"])
      s.add_development_dependency(%q<rdoc>.freeze, [">= 0"])
      s.add_development_dependency(%q<rufo>.freeze, [">= 0"])
    else
      s.add_dependency(%q<mini_mime>.freeze, [">= 0.1.1"])
      s.add_dependency(%q<bundler>.freeze, [">= 1.0.3"])
      s.add_dependency(%q<rake>.freeze, ["> 0.8.7"])
      s.add_dependency(%q<rspec>.freeze, ["~> 3.0"])
      s.add_dependency(%q<rdoc>.freeze, [">= 0"])
      s.add_dependency(%q<rufo>.freeze, [">= 0"])
    end
  else
    s.add_dependency(%q<mini_mime>.freeze, [">= 0.1.1"])
    s.add_dependency(%q<bundler>.freeze, [">= 1.0.3"])
    s.add_dependency(%q<rake>.freeze, ["> 0.8.7"])
    s.add_dependency(%q<rspec>.freeze, ["~> 3.0"])
    s.add_dependency(%q<rdoc>.freeze, [">= 0"])
    s.add_dependency(%q<rufo>.freeze, [">= 0"])
  end
end


Attached is my quick fix to build it. I hope it is correct but I am not ruby
developer.