Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package rubygem-hoe for openSUSE:Factory 
checked in at 2026-01-15 16:48:49
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/rubygem-hoe (Old)
 and      /work/SRC/openSUSE:Factory/.rubygem-hoe.new.1928 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "rubygem-hoe"

Thu Jan 15 16:48:49 2026 rev:59 rq:1327396 version:4.5.1

Changes:
--------
--- /work/SRC/openSUSE:Factory/rubygem-hoe/rubygem-hoe.changes  2024-11-07 
16:27:39.434321714 +0100
+++ /work/SRC/openSUSE:Factory/.rubygem-hoe.new.1928/rubygem-hoe.changes        
2026-01-15 16:49:58.705473368 +0100
@@ -1,0 +2,5 @@
+Tue Jan 13 11:41:55 UTC 2026 - Hendrik Vogelsang <[email protected]>
+
+- Update to version 4.5.1, see bundled History.rdoc
+
+-------------------------------------------------------------------

Old:
----
  gem2rpm.yml
  hoe-4.2.2.gem

New:
----
  hoe-4.5.1.gem

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ rubygem-hoe.spec ++++++
--- /var/tmp/diff_new_pack.mIpM1g/_old  2026-01-15 16:49:59.393501993 +0100
+++ /var/tmp/diff_new_pack.mIpM1g/_new  2026-01-15 16:49:59.401502326 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package rubygem-hoe
 #
-# Copyright (c) 2024 SUSE LLC
+# Copyright (c) 2026 SUSE LLC and contributors
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -16,27 +16,18 @@
 #
 
 
-#
-# This file was generated with a gem2rpm.yml and not just plain gem2rpm.
-# All sections marked as MANUAL, license headers, summaries and descriptions
-# can be maintained in that file. Please consult this file before editing any
-# of those fields
-#
-
 Name:           rubygem-hoe
-Version:        4.2.2
+Version:        4.5.1
 Release:        0
 %define mod_name hoe
 %define mod_full_name %{mod_name}-%{version}
-BuildRequires:  %{ruby < 4}
-BuildRequires:  %{ruby >= 2.7}
+BuildRequires:  %{ruby >= 3.2}
 BuildRequires:  %{rubygem gem2rpm}
 BuildRequires:  %{rubygem rdoc > 3.10}
 BuildRequires:  ruby-macros >= 5
 BuildRequires:  update-alternatives
 URL:            http://www.zenspider.com/projects/hoe.html
 Source:         https://rubygems.org/gems/%{mod_full_name}.gem
-Source1:        gem2rpm.yml
 Summary:        Hoe is a rake/rubygems helper for project Rakefiles
 License:        MIT
 
@@ -56,6 +47,7 @@
 
 %install
 %gem_install \
+  --no-rdoc --no-ri \
   --symlink-binaries \
   --doc-files="History.rdoc README.rdoc" \
   -f

++++++ hoe-4.2.2.gem -> hoe-4.5.1.gem ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/History.rdoc new/History.rdoc
--- old/History.rdoc    2024-06-29 22:48:48.000000000 +0200
+++ new/History.rdoc    1980-01-02 01:00:00.000000000 +0100
@@ -1,3 +1,44 @@
+=== 4.5.1 / 2026-01-02
+
+* 2 bug fixes:
+
+  * Bump rdoc dependency to include 7.x.
+  * Fix to load hoe plugins w/ camel-case.
+
+=== 4.5.0 / 2025-12-24
+
+* 3 minor enhancements:
+
+  * Added Hoe::Git plugin, forked from jbarnette/hoe-git + halostatue/hoe-git2
+  * Bumped ruby version to 3.2+.
+  * Clarified dependency on rake to ~> 13.0.
+
+=== 4.4.0 / 2025-12-22
+
+* 1 minor enhancement:
+
+  * Added rdoc_options accessor to expose it so you can add more.
+
+* 1 bug fix:
+
+  * Updated File.read_utf to assume String encoding support. (wtn)
+
+=== 4.3.0 / 2025-06-17
+
+* 4 bug fixes:
+
+  * Fix Gem index inflation. (halostatue)
+  * Fix known_plugins task for Gem::SpecFetcher API changes. (segiddins)
+  * Removed defunct deps:email task.
+  * Update list of known plugins. (segiddins)
+
+=== 4.2.3 / 2025-03-25
+
+* 2 minor enhancements:
+
+  * Added alias required_rubygems_version to spec.
+  * Added clean as a prepended prerequisite to task gem.
+
 === 4.2.2 / 2024-06-29
 
 * 1 bug fix:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Manifest.txt new/Manifest.txt
--- old/Manifest.txt    2024-06-29 22:48:48.000000000 +0200
+++ new/Manifest.txt    1980-01-02 01:00:00.000000000 +0100
@@ -15,6 +15,7 @@
 lib/hoe/flog.rb
 lib/hoe/gem_prelude_sucks.rb
 lib/hoe/gemcutter.rb
+lib/hoe/git.rb
 lib/hoe/inline.rb
 lib/hoe/newb.rb
 lib/hoe/package.rb
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/README.rdoc new/README.rdoc
--- old/README.rdoc     2024-06-29 22:48:48.000000000 +0200
+++ new/README.rdoc     1980-01-02 01:00:00.000000000 +0100
@@ -167,6 +167,7 @@
 * Hoe::Flog
 * Hoe::GemPreludeSucks
 * Hoe::Gemcutter
+* Hoe::Git
 * Hoe::Inline
 * Hoe::Newb
 * Hoe::Package
@@ -178,30 +179,35 @@
 
 === Known 3rd-Party Plugins:
 
-* hoe-bundler    - Generates a Gemfile based on a Hoe's declared dependencies.
-* hoe-debugging  - A Hoe plugin to help you debug your codes.
-* hoe-deveiate   - A collection of Rake tasks and utility functions.
-* hoe-doofus     - A Hoe plugin that helps me keep from messing up gem 
releases.
-* hoe-gemcutter  - Adds gemcutter release automation to Hoe.
-* hoe-geminabox  - Allows you to push your gems to geminabox
-* hoe-gemspec    - Generate a prerelease gemspec based on a Hoe spec.
-* hoe-gemspec2   - ??? submit a PR to add description
-* hoe-git        - A set of Hoe plugins for tighter Git integration.
-* hoe-heroku     - Helps you get your stuff on Heroku.
-* hoe-hg         - A Hoe plugin for Mercurial integration.
-* hoe-highline   - A Hoe plugin for building interactive Rake tasks
-* hoe-ignore     - ??? submit a PR to add description
-* hoe-manifest   - ??? submit a PR to add description
-* hoe-manualgen  - A manual-generation plugin for Hoe
-* hoe-mercurial  - A Hoe plugin for Mercurial integration.
-* hoe-reek       - Integrates the reek code smell engine into your hoe 
projects.
-* hoe-roodi      - Integrates the roodi code smell tool into your hoe projects.
-* hoe-rubygems   - Additional RubyGems tasks.
-* hoe-seattlerb  - Minitest, email announcements, release branching.
-* hoe-telicopter - Provides tasks used by hotelicopter.
-* hoe-travis     - Allows your gem to gain maximum benefit from 
<http://travis-ci.org>.
-* hoe-version    - ??? submit a PR to add description
-* hoe-yard       - A Hoe plugin for generating YARD documentation.
+* hoe-bundler    - Generate a Gemfile based on a Hoe spec's declared 
dependencies. (Mike Dalessio)
+* hoe-debugging  - A Hoe plugin to help you debug your C extensions (John 
Barnette)
+* hoe-deveiate   - A collection of Rake tasks and utility functions I use to 
maintain my Open Source projects (Michael Granger)
+* hoe-doofus     - A Hoe plugin that helps me (and you, maybe?) keep from 
messing up gem releases (John Barnette)
+* hoe-gemcutter  - Adds gemcutter release automation to Hoe. (James Tucker)
+* hoe-geminabox  - A small hoe plugin that allows you to push your gems to 
geminabox (Ben Bleything)
+* hoe-gemspec    - Generate a prerelease gemspec based on a Hoe spec. (Mike 
Dalessio)
+* hoe-gemspec2   - Adds support for generation of gemspec files to Hoe (raggi)
+* hoe-git        - A set of Hoe plugins for tighter Git integration (John 
Barnette)
+* hoe-git2       - A set of Hoe plugins for tighter Git integration (John 
Barnette)
+* hoe-halostatue - Hoe::Halostatue is a Hoe meta-plugin that provides improved 
support for Markdown README files, provides features from other plugins, and 
enables improved support for trusted publishing. (Austin Ziegler)
+* hoe-heroku     - A Hoe plugin that helps you get your stuff on Heroku (Ben 
Bleything)
+* hoe-hg         - A Hoe plugin for Mercurial integration (McClain Looney)
+* hoe-highline   - A Hoe plugin for building interactive Rake tasks (Michael 
Granger)
+* hoe-ignore     - FIX (describe your package) (Evan Phoenix)
+* hoe-manns      - Collection of some personal used tasks (Sascha Manns)
+* hoe-manualgen  - A manual-generation plugin for Hoe (Michael Granger)
+* hoe-markdown   - Hoe plugin with helpers for markdown documentation files. 
(Mike Dalessio)
+* hoe-mercurial  - This is a fork of the hoe-hg  plugin (Michael Granger)
+* hoe-packaging  - Collection of some personal used tasks for creating and 
deploying RPM and DEB packages. (Sascha Manns)
+* hoe-reek       - Tasks to integrate the reek code smell engine into your hoe 
projects (Sascha Manns)
+* hoe-roodi      - hoe-roodi is a Hoe plugin to integrate the roodi code smell 
tool into your hoe projects. (Erik Hollensbe)
+* hoe-rubocop    - This hoe plugin extends hoe for using some rake tasks to 
control rubocop. (Sascha Manns)
+* hoe-rubygems   - A Hoe plugin with additional RubyGems tasks (John Barnette)
+* hoe-seattlerb  - Hoe plugins providing tasks used by seattle.rb including 
minitest, perforce, and email providing full front-to-back release/announce 
automation. (Ryan Davis)
+* hoe-telicopter - Hoe plugin providing tasks used by hotelicopter, currently 
just the email plugin from the seattlerb plugin by Ryan Davis (jim nist)
+* hoe-travis     - hoe-travis is a Hoe plugin that allows your gem to gain 
maximum benefit from http://travis-ci.org (Eric Hodel)
+* hoe-version    - Hoe plugin to provide rake tasks to bump version 
(bhenderson)
+* hoe-yard       - A Hoe plugin for generating YARD documentation (Postmodern)
 
 === Writing Plugins:
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Rakefile new/Rakefile
--- old/Rakefile        2024-06-29 22:48:48.000000000 +0200
+++ new/Rakefile        1980-01-02 01:00:00.000000000 +0100
@@ -19,9 +19,9 @@
 
   pluggable!
   require_rubygems_version ">= 3.0"
-  require_ruby_version [">= 2.7", "< 4"]
+  require_ruby_version ">= 3.2"
 
-  dependency "rake", [">= 0.8", "< 15.0"] # FIX: to force it to exist 
pre-isolate
+  dependency "rake", "~> 13.0" # FIX: to force it to exist pre-isolate
 end
 
 task :plugins do
@@ -32,13 +32,17 @@
 task :known_plugins do
   dep         = Gem::Dependency.new(/^hoe-/, Gem::Requirement.default)
   fetcher     = Gem::SpecFetcher.fetcher
-  spec_tuples = fetcher.find_matching dep
+  spec_tuples = fetcher.search_for_dependency(dep).flatten(1)
 
-  max = spec_tuples.map { |(tuple, _source)| tuple.first.size }.max
+  max = spec_tuples.map { |(tuple, _source)| tuple.name.size }.max
 
-  spec_tuples.each do |(tuple, source)|
-    spec = Gem::SpecFetcher.fetcher.fetch_spec(tuple, URI.parse(source))
-    puts "* %-#{max}s - %s (%s)" % [spec.name, spec.summary, 
spec.authors.first]
+  spec_tuples.sort_by { |(tuple, _source)| tuple.name }.each do |(tuple, 
source)|
+    spec = source.fetch_spec(tuple)
+    summary = spec
+                .summary
+                .gsub(/\[([^\]]+)\](?:[\[\(].*?[\]\)])?/, '\1')
+
+    puts "* %-#{max}s - %s (%s)" % [spec.name, summary, spec.authors.first]
   end
 end
 
Binary files old/checksums.yaml.gz and new/checksums.yaml.gz differ
Binary files old/checksums.yaml.gz.sig and new/checksums.yaml.gz.sig differ
Binary files old/data.tar.gz.sig and new/data.tar.gz.sig differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/hoe/deps.rb new/lib/hoe/deps.rb
--- old/lib/hoe/deps.rb 2024-06-29 22:48:48.000000000 +0200
+++ new/lib/hoe/deps.rb 1980-01-02 01:00:00.000000000 +0100
@@ -82,30 +82,6 @@
     end
   end
 
-  def deps_email_task # :nodoc:
-    gems = self.get_gems_by_name
-    gem  = gems[self.name]
-
-    abort "Couldn't find gem: #{self.name}" unless gem
-
-    deps = self.dependent_upon self.name
-    email = deps.map(&:email).compact.flatten.sort.uniq
-    email = email.map { |s| s.split(/,\s*/) }.flatten.sort.uniq
-
-    email.map! { |s| # don't you people realize how easy this is?
-      s.gsub(/ at | _at_ 
|\s*(atmark|@nospam@|-at?-|@at?@|<at?>|\[at?\]|\(at?\))\s*/i, 
"@").gsub(/\s*(dot|\[d(ot)?\]|\.dot\.)\s*/i, ".").gsub(/\s+com$/, ".com")
-    }
-
-    bad, good = email.partition { |e| e !~ /^[\w.+-]+\@[\w.+-]+$/ }
-
-    warn "Rejecting #{bad.size} email. I couldn't unmunge them." unless
-      bad.empty?
-
-    puts good.join(", ")
-
-    warn "Warning: couldn't extract any email addresses" if good.empty?
-  end
-
   def deps_fetch_task # :nodoc:
     deps = self.dependent_upon self.name
 
@@ -154,7 +130,7 @@
              warn "Fetching full index and caching. This can take a while."
              url = GEMURL + "Marshal.#{Gem.marshal_version}.Z"
              dump = Gem::RemoteFetcher.fetcher.fetch_path url
-             dump = Gem.inflate dump
+             dump = Gem::Util.inflate dump
 
              warn "stripping index to latest gems"
              ary = Marshal.load dump
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/hoe/git.rb new/lib/hoe/git.rb
--- old/lib/hoe/git.rb  1970-01-01 01:00:00.000000000 +0100
+++ new/lib/hoe/git.rb  1980-01-02 01:00:00.000000000 +0100
@@ -0,0 +1,186 @@
+class Hoe # :nodoc:
+
+  ##
+  # This module is a Hoe plugin. You can set its attributes in your
+  # Rakefile Hoe spec, like this:
+  #
+  #    Hoe.plugin :git
+  #
+  #    Hoe.spec "myproj" do
+  #      self.git_release_tag_prefix  = "REL_"
+  #      self.git_remotes            << "myremote"
+  #    end
+  #
+  #
+  # === Tasks
+  #
+  # git:changelog:: Print the current changelog.
+  # git:manifest::  Update the manifest with Git's file list.
+  # git:tag::       Create and push a tag.
+
+  module Git
+
+    ##
+    # What do you want at the front of your release tags?
+    # [default: <tt>"v"</tt>]
+
+    attr_accessor :git_release_tag_prefix
+
+    ##
+    # Which remotes do you want to push tags, etc. to?
+    # [default: <tt>%w[ origin ]</tt>]
+
+    attr_accessor :git_remotes
+
+    attr_accessor :git_changes # :nodoc:
+
+    def initialize_git # :nodoc:
+      self.git_release_tag_prefix = "v"
+      self.git_remotes            = %w[ origin ]
+    end
+
+    def define_git_tasks # :nodoc:
+      return unless File.exist? ".git"
+
+      desc "Print the current changelog."
+      task "git:changelog" do
+        tag   = ENV["FROM"] || git_tags.last
+        range = [tag, "HEAD"].compact.join ".."
+
+        changes = `git log #{range} --format="tformat:%B|||%aN|||%aE|||"`
+          .split("|||")
+          .each_slice(3)
+          .map { |msg, author, email|
+            msg.lines(chomp: true).reject(&:empty?)
+          }
+          .flatten
+
+        next if changes.empty?
+
+        self.git_changes = Hash.new { |h, k| h[k] = [] }
+
+        codes = {
+          "!" => :major,
+          "+" => :minor,
+          "*" => :minor,
+          "-" => :bug,
+          "?" => :unknown,
+        }
+
+        codes_re = Regexp.escape codes.keys.join
+
+        changes.each do |change|
+          if change =~ /^\s*([#{codes_re}])\s*(.*)/ then
+            code, line = codes[$1], $2
+          else
+            code, line = codes["?"], change.chomp
+          end
+
+          git_changes[code] << line
+        end
+
+        now = Time.new.strftime "%Y-%m-%d"
+
+        puts "=== #{ENV["VERSION"] || "NEXT"} / #{now}"
+        puts
+        changelog_section :major
+        changelog_section :minor
+        changelog_section :bug
+        changelog_section :unknown
+        puts
+      end
+
+      desc "Update the manifest with Git's file list. Use Hoe's excludes."
+      task "git:manifest" do
+        with_config do |config, _|
+          files = `git ls-files`
+            .lines(chomp:true)
+            .grep_v(config["exclude"])
+
+          File.write "Manifest.txt", files.sort.join("\n")
+        end
+      end
+
+      desc "Create and push a TAG " +
+           "(default #{git_release_tag_prefix}#{version})."
+
+      task "git:tag" do
+        tag = ENV["TAG"]
+        ver = ENV["VERSION"] || version
+        pre = ENV["PRERELEASE"] || ENV["PRE"]
+        ver += ".#{pre}" if pre
+        tag ||= "#{git_release_tag_prefix}#{ver}"
+
+        git_tag_and_push tag
+      end
+
+      task "git:tags" do
+        p git_tags
+      end
+
+      task :release_sanity do
+        unless ENV["DIRTY"] or `git status --porcelain`.empty?
+          abort "Won't release: Dirty index or untracked files present!"
+        end
+      end
+
+      task :release_to => "git:tag"
+    end
+
+    ##
+    # Generate a tag and push it to all remotes.
+
+    def git_tag_and_push tag
+      msg = "Tagging #{tag}."
+
+      flags = " -s" unless `git config --get user.signingkey`.empty?
+
+      sh %Q(git tag#{flags} -f #{tag} -m "#{msg}")
+      git_remotes.each { |remote| sh "git push -f #{remote} tag #{tag}" }
+    end
+
+    ##
+    # Return all git tags massaged down to readable versions.
+
+    def git_tags
+      flags  = %w[--date-order
+                  --reverse
+                  --simplify-by-decoration
+                  --pretty=format:%H].join " "
+      shas = `git log #{flags}`.lines(chomp: true)
+
+      `git name-rev --tags #{shas.join " "}`
+        .lines
+        .map { |s| s[/tags\/(#{git_release_tag_prefix}.+)/, 1] }
+        .compact
+        .map { |s| s.sub(/\^0$/, "") } # v1.2.3^0 -> v1.2.3 (why?)
+        .grep(%r{^#{git_release_tag_prefix}}) # TODO: remove?
+    end
+
+    ##
+    # Generate and print a changelog section based on the +code+.
+
+    def changelog_section code
+      name = +{
+        :major   => "major enhancement",
+        :minor   => "minor enhancement",
+        :bug     => "bug fix",
+        :unknown => "unknown",
+      }[code]
+
+      changes = git_changes[code]
+      count = changes.size
+      name += "s" if count > 1
+      name.sub!(/fixs/, "fixes")
+
+      return if count < 1
+
+      puts "* #{count} #{name}:"
+      puts
+      changes.sort.each do |line|
+        puts "  * #{line}"
+      end
+      puts
+    end
+  end
+end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/hoe/package.rb new/lib/hoe/package.rb
--- old/lib/hoe/package.rb      2024-06-29 22:48:48.000000000 +0200
+++ new/lib/hoe/package.rb      1980-01-02 01:00:00.000000000 +0100
@@ -47,6 +47,8 @@
       pkg.need_zip = @need_zip
     end
 
+    task(:gem).prerequisites.prepend :clean
+
     desc "Install the package as a gem. (opt. NOSUDO=1)"
     task :install_gem => [:clean, :package, :check_extra_deps] do
       install_gem Dir["pkg/*.gem"].first
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/hoe/publish.rb new/lib/hoe/publish.rb
--- old/lib/hoe/publish.rb      2024-06-29 22:48:48.000000000 +0200
+++ new/lib/hoe/publish.rb      1980-01-02 01:00:00.000000000 +0100
@@ -100,7 +100,7 @@
   # Declare a dependency on rdoc, IF NEEDED.
 
   def activate_publish_deps
-    dependency "rdoc", [">= 4.0", "< 7"], :developer if need_rdoc
+    dependency "rdoc", [">= 6.0", "< 8"], :developer if need_rdoc
   end
 
   ##
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/hoe.rb new/lib/hoe.rb
--- old/lib/hoe.rb      2024-06-29 22:48:48.000000000 +0200
+++ new/lib/hoe.rb      1980-01-02 01:00:00.000000000 +0100
@@ -87,7 +87,7 @@
   include Rake::DSL if defined?(Rake::DSL)
 
   # duh
-  VERSION = "4.2.2"
+  VERSION = "4.5.1"
 
   @@plugins = [:clean, :debug, :deps, :flay, :flog, :newb, :package,
                :publish, :gemcutter, :signing, :test]
@@ -182,6 +182,11 @@
   attr_accessor :extra_dev_deps
 
   ##
+  # Optional: rdoc arguments to be used when generating rdoc.
+
+  attr_accessor :rdoc_options
+
+  ##
   # Optional: Extra files you want to add to RDoc.
   #
   # .txt files are automatically included (excluding the obvious).
@@ -423,7 +428,8 @@
     names.reject! { |n| n =~ /^[A-Z_]+$/ }
 
     names.each do |name|
-      next unless Hoe.plugins.include? name.downcase.intern
+      underscored = name.gsub(/(?<!^)(?=[A-Z])/, "_").downcase.intern
+      next unless Hoe.plugins.include? underscored
       warn "extend #{name}" if $DEBUG
       self.extend Hoe.const_get(name)
     end
@@ -544,7 +550,7 @@
       s.bindir               = bindir || "bin"
       s.executables          = s.files.grep(/^#{s.bindir}/) { |f| 
File.basename(f) }
       s.require_paths        = dirs unless dirs.empty?
-      s.rdoc_options         = ["--main", readme_file]
+      s.rdoc_options         = rdoc_options
       s.post_install_message = post_install_message
       s.metadata             = (urls.keys & URLS_TO_META_MAP.keys).map { |name|
         [URLS_TO_META_MAP[name], urls[name]]
@@ -663,6 +669,9 @@
     self.history_file ||= Dir.glob("History.{rdoc,txt,md}").first || 
"History.txt"
     self.readme_file  ||= Dir.glob("README.{rdoc,txt,md}").first || 
"README.txt"
 
+    # delayed to set readme_file first
+    self.rdoc_options = ["--main", readme_file]
+
     abort "Hoe.new {...} removed. Switch to Hoe.spec." if block_given?
   end
 
@@ -848,6 +857,8 @@
     spec_extras[:required_rubygems_version] = versions
   end
 
+  alias required_rubygems_version require_rubygems_version
+
   ##
   # Declare that your gem requires a specific ruby version. Last one wins.
 
@@ -951,15 +962,8 @@
 class File # :nodoc:
   # Like File::read, but strips out a BOM marker if it exists.
   def self.read_utf path
-    r19 = "<3".respond_to? :encoding
-    opt = r19 ? "r:bom|utf-8" : "rb"
-
-    open path, opt do |f|
-      if r19 then
-        f.read
-      else
-        f.read.sub %r%\A\xEF\xBB\xBF%, ""
-      end
+    open path, "r:bom|utf-8" do |f|
+      f.read
     end
   end
 end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/metadata new/metadata
--- old/metadata        2024-06-29 22:48:48.000000000 +0200
+++ new/metadata        1980-01-02 01:00:00.000000000 +0100
@@ -1,18 +1,17 @@
 --- !ruby/object:Gem::Specification
 name: hoe
 version: !ruby/object:Gem::Version
-  version: 4.2.2
+  version: 4.5.1
 platform: ruby
 authors:
 - Ryan Davis
-autorequire:
 bindir: bin
 cert_chain:
 - |
   -----BEGIN CERTIFICATE-----
-  MIIDPjCCAiagAwIBAgIBCDANBgkqhkiG9w0BAQsFADBFMRMwEQYDVQQDDApyeWFu
+  MIIDPjCCAiagAwIBAgIBCTANBgkqhkiG9w0BAQsFADBFMRMwEQYDVQQDDApyeWFu
   ZC1ydWJ5MRkwFwYKCZImiZPyLGQBGRYJemVuc3BpZGVyMRMwEQYKCZImiZPyLGQB
-  GRYDY29tMB4XDTI0MDEwMjIxMjEyM1oXDTI1MDEwMTIxMjEyM1owRTETMBEGA1UE
+  GRYDY29tMB4XDTI1MDEwNjIzMjcwMVoXDTI2MDEwNjIzMjcwMVowRTETMBEGA1UE
   AwwKcnlhbmQtcnVieTEZMBcGCgmSJomT8ixkARkWCXplbnNwaWRlcjETMBEGCgmS
   JomT8ixkARkWA2NvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALda
   b9DCgK+627gPJkB6XfjZ1itoOQvpqH1EXScSaba9/S2VF22VYQbXU1xQXL/WzCkx
@@ -22,55 +21,49 @@
   qhtV7HJxNKuPj/JFH0D2cswvzznE/a5FOYO68g+YCuFi5L8wZuuM8zzdwjrWHqSV
   gBEfoTEGr7Zii72cx+sCAwEAAaM5MDcwCQYDVR0TBAIwADALBgNVHQ8EBAMCBLAw
   HQYDVR0OBBYEFEfFe9md/r/tj/Wmwpy+MI8d9k/hMA0GCSqGSIb3DQEBCwUAA4IB
-  AQCygvpmncmkiSs9r/Kceo4bBPDszhTv6iBi4LwMReqnFrpNLMOWJw7xi8x+3eL2
-  XS09ZPNOt2zm70KmFouBMgOysnDY4k2dE8uF6B8JbZOO8QfalW+CoNBliefOTcn2
-  bg5IOP7UoGM5lC174/cbDJrJnRG9bzig5FAP0mvsgA8zgTRXQzIUAZEo92D5K7p4
-  B4/O998ho6BSOgYBI9Yk1ttdCtti6Y+8N9+fZESsjtWMykA+WXWeGUScHqiU+gH8
-  S7043fq9EbQdBr2AXdj92+CDwuTfHI6/Hj5FVBDULufrJaan4xUgL70Hvc6pTTeW
-  deKfBjgVAq7EYHu1AczzlUly
+  AQAC0WQJcPOWPFwkojhzweilRVjTJ19UiLhiBTw3C1wJO3LVdBkWDmnnhAmKuX4D
+  r7vjQvESlABGIPdutI1Yl7mrHQzTkfLfXvNN6MT0nLChPyIYauT6SZZxubwJrUfA
+  7R0c2CJTIboZ0XaGpLsXqHEF1c29H7TV1QvVuqKAN2mCjh4N82QVn+ZKtys28AwT
+  6GfQX2fqLoi4KSc7xIzHKaNzqxeOICmJofk9w5VZ2rRN6yes8jvFYwz9HR41wdj8
+  bwfinv7Yp5fA6AysuZLhCykyfDuZVRrUp0Vb68YCKsLjJly/Theak+euNTxvHsB+
+  al9oSgPPHICMEX65qvLywitx
   -----END CERTIFICATE-----
-date: 2024-06-29 00:00:00.000000000 Z
+date: 1980-01-02 00:00:00.000000000 Z
 dependencies:
 - !ruby/object:Gem::Dependency
   name: rake
   requirement: !ruby/object:Gem::Requirement
     requirements:
-    - - ">="
-      - !ruby/object:Gem::Version
-        version: '0.8'
-    - - "<"
+    - - "~>"
       - !ruby/object:Gem::Version
-        version: '15.0'
+        version: '13.0'
   type: :runtime
   prerelease: false
   version_requirements: !ruby/object:Gem::Requirement
     requirements:
-    - - ">="
-      - !ruby/object:Gem::Version
-        version: '0.8'
-    - - "<"
+    - - "~>"
       - !ruby/object:Gem::Version
-        version: '15.0'
+        version: '13.0'
 - !ruby/object:Gem::Dependency
   name: rdoc
   requirement: !ruby/object:Gem::Requirement
     requirements:
     - - ">="
       - !ruby/object:Gem::Version
-        version: '4.0'
+        version: '6.0'
     - - "<"
       - !ruby/object:Gem::Version
-        version: '7'
+        version: '8'
   type: :development
   prerelease: false
   version_requirements: !ruby/object:Gem::Requirement
     requirements:
     - - ">="
       - !ruby/object:Gem::Version
-        version: '4.0'
+        version: '6.0'
     - - "<"
       - !ruby/object:Gem::Version
-        version: '7'
+        version: '8'
 - !ruby/object:Gem::Dependency
   name: simplecov
   requirement: !ruby/object:Gem::Requirement
@@ -123,6 +116,7 @@
 - lib/hoe/flog.rb
 - lib/hoe/gem_prelude_sucks.rb
 - lib/hoe/gemcutter.rb
+- lib/hoe/git.rb
 - lib/hoe/inline.rb
 - lib/hoe/newb.rb
 - lib/hoe/package.rb
@@ -155,7 +149,6 @@
   bug_tracker_uri: https://github.com/seattlerb/hoe/issues
   documentation_uri: http://docs.seattlerb.org/hoe/Hoe.pdf
   changelog_uri: https://github.com/seattlerb/hoe/blob/master/History.rdoc
-post_install_message:
 rdoc_options:
 - "--main"
 - README.rdoc
@@ -165,18 +158,14 @@
   requirements:
   - - ">="
     - !ruby/object:Gem::Version
-      version: '2.7'
-  - - "<"
-    - !ruby/object:Gem::Version
-      version: '4'
+      version: '3.2'
 required_rubygems_version: !ruby/object:Gem::Requirement
   requirements:
   - - ">="
     - !ruby/object:Gem::Version
       version: '3.0'
 requirements: []
-rubygems_version: 3.5.14
-signing_key:
+rubygems_version: 3.7.2
 specification_version: 4
 summary: Hoe is a rake/rubygems helper for project Rakefiles
 test_files: []
Binary files old/metadata.gz.sig and new/metadata.gz.sig differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/test/test_hoe.rb new/test/test_hoe.rb
--- old/test/test_hoe.rb        2024-06-29 22:48:48.000000000 +0200
+++ new/test/test_hoe.rb        1980-01-02 01:00:00.000000000 +0100
@@ -192,10 +192,7 @@
 
       content = File.read_utf io.path
       assert_equal "BOM", content
-
-      if content.respond_to? :encoding then
-        assert_equal Encoding::UTF_8, content.encoding
-      end
+      assert_equal Encoding::UTF_8, content.encoding
     end
   end
 
@@ -365,6 +362,7 @@
     files = File.read("Manifest.txt").split(/\n/)
 
     spec = hoe.spec
+    spec.date = nil # forces Date.today. default switched to 1980 for some 
reason
 
     urls = {
       "home"  => "http://www.zenspider.com/projects/hoe.html";,
@@ -401,7 +399,7 @@
 
     expected = [
       ["hoe",  :development, "~> #{Hoe::VERSION.sub(/\.\d+$/, "")}"],
-      ["rdoc", :development, "< 7", ">= 4.0"],
+      ["rdoc", :development, "< 8", ">= 6.0"],
     ]
 
     assert_equal expected, deps.map { |dep|
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/test/test_hoe_test.rb new/test/test_hoe_test.rb
--- old/test/test_hoe_test.rb   2024-06-29 22:48:48.000000000 +0200
+++ new/test/test_hoe_test.rb   1980-01-02 01:00:00.000000000 +0100
@@ -28,11 +28,9 @@
 
   MT_EXPECTED = %W[-I#{mt_path} -w
                    -e '%srequire "test/test_hoe_test.rb"'
-                   --].join(" ") + " "
+                   -- %s].join(" ")
 
   def test_make_test_cmd_for_minitest
-    skip "Using TESTOPTS... skipping" if ENV["TESTOPTS"]
-
     framework = %(require "minitest/autorun"; )
 
     @tester = Minitest::TestTask.create :testtest do |t|
@@ -40,12 +38,12 @@
       t.test_globs = ["test/test_hoe_test.rb"]
     end
 
-    assert_equal MT_EXPECTED % [framework].join("; "), @tester.make_test_cmd
+    fw = [framework].join("; ")
+    env = ENV["A"]
+    assert_equal MT_EXPECTED % [fw, env], @tester.make_test_cmd
   end
 
   def test_make_test_cmd_for_minitest_prelude
-    skip "Using TESTOPTS... skipping" if ENV["TESTOPTS"]
-
     prelude = %(require "other/file")
     framework = %(require "minitest/autorun"; )
 
@@ -55,6 +53,8 @@
       t.test_globs = ["test/test_hoe_test.rb"]
     end
 
-    assert_equal MT_EXPECTED % [prelude, framework].join("; "), 
@tester.make_test_cmd
+    prelude = [prelude, framework].join("; ")
+    env = ENV["A"]
+    assert_equal MT_EXPECTED % [prelude, env], @tester.make_test_cmd
   end
 end

Reply via email to