Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package rubygem-pdf-core for 
openSUSE:Factory checked in at 2021-01-20 18:29:20
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/rubygem-pdf-core (Old)
 and      /work/SRC/openSUSE:Factory/.rubygem-pdf-core.new.28504 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "rubygem-pdf-core"

Wed Jan 20 18:29:20 2021 rev:2 rq:864994 version:0.9.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/rubygem-pdf-core/rubygem-pdf-core.changes        
2020-10-23 16:54:45.473287518 +0200
+++ 
/work/SRC/openSUSE:Factory/.rubygem-pdf-core.new.28504/rubygem-pdf-core.changes 
    2021-01-20 18:29:34.267635891 +0100
@@ -1,0 +2,6 @@
+Wed Jan 20 13:06:24 UTC 2021 - Stephan Kulow <[email protected]>
+
+updated to version 0.9.0
+  no changelog found
+
+-------------------------------------------------------------------

Old:
----
  pdf-core-0.8.1.gem

New:
----
  pdf-core-0.9.0.gem

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

Other differences:
------------------
++++++ rubygem-pdf-core.spec ++++++
--- /var/tmp/diff_new_pack.2UevL2/_old  2021-01-20 18:29:34.959636553 +0100
+++ /var/tmp/diff_new_pack.2UevL2/_new  2021-01-20 18:29:34.963636557 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package rubygem-pdf-core
 #
-# Copyright (c) 2020 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2021 SUSE LLC
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -12,7 +12,7 @@
 # license that conforms to the Open Source Definition (Version 1.9)
 # published by the Open Source Initiative.
 
-# Please submit bugfixes or comments via http://bugs.opensuse.org/
+# Please submit bugfixes or comments via https://bugs.opensuse.org/
 #
 
 
@@ -24,19 +24,19 @@
 #
 
 Name:           rubygem-pdf-core
-Version:        0.8.1
+Version:        0.9.0
 Release:        0
 %define mod_name pdf-core
 %define mod_full_name %{mod_name}-%{version}
 BuildRoot:      %{_tmppath}/%{name}-%{version}-build
-BuildRequires:  ruby-macros >= 5
-BuildRequires:  %{ruby >= 2.3}
+BuildRequires:  %{ruby >= 2.5}
 BuildRequires:  %{rubygem gem2rpm}
-Url:            http://prawn.majesticseacreature.com
+BuildRequires:  ruby-macros >= 5
+URL:            http://prawnpdf.org
 Source:         https://rubygems.org/gems/%{mod_full_name}.gem
 Source1:        gem2rpm.yml
 Summary:        PDF::Core is used by Prawn to render PDF documents
-License:        GPL-2.0 or GPL-3.0
+License:        GPL-2.0-only OR GPL-3.0-only
 Group:          Development/Languages/Ruby
 
 %description

++++++ pdf-core-0.8.1.gem -> pdf-core-0.9.0.gem ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Rakefile new/Rakefile
--- old/Rakefile        2018-04-28 09:46:31.000000000 +0200
+++ new/Rakefile        2020-10-24 17:26:29.000000000 +0200
@@ -1,8 +1,5 @@
 # frozen_string_literal: true
 
-require 'bundler'
-Bundler.setup
-
 require 'rake'
 require 'rspec/core/rake_task'
 
@@ -15,3 +12,18 @@
 
 require 'rubocop/rake_task'
 RuboCop::RakeTask.new
+
+require 'rubygems/package_task'
+spec = Gem::Specification.load 'pdf-core.gemspec'
+Gem::PackageTask.new(spec) do |pkg|
+  pkg.need_zip = true
+  pkg.need_tar = true
+end
+
+task :checksum do
+  require 'digest/sha2'
+  built_gem_path = "pkg/pdf-core-#{Prawn::VERSION}.gem"
+  checksum = Digest::SHA512.new.hexdigest(File.read(built_gem_path))
+  checksum_path = "checksums/#{built_gem_path}.sha512"
+  File.write(checksum_path, checksum)
+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/pdf/core/byte_string.rb 
new/lib/pdf/core/byte_string.rb
--- old/lib/pdf/core/byte_string.rb     2018-04-28 09:46:31.000000000 +0200
+++ new/lib/pdf/core/byte_string.rb     2020-10-24 17:26:29.000000000 +0200
@@ -1,4 +1,3 @@
-
 # frozen_string_literal: true
 
 module PDF
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/pdf/core/document_state.rb 
new/lib/pdf/core/document_state.rb
--- old/lib/pdf/core/document_state.rb  2018-04-28 09:46:31.000000000 +0200
+++ new/lib/pdf/core/document_state.rb  2020-10-24 17:26:29.000000000 +0200
@@ -28,18 +28,18 @@
         @on_page_create_callback = nil
       end
 
-      attr_accessor :store, :version, :pages, :page, :trailer, :compress,
-        :encrypt, :encryption_key, :skip_encoding,
-        :before_render_callbacks, :on_page_create_callback
+      attr_accessor :store, :version, :pages, :page, :trailer, :compress, 
:encrypt, :encryption_key, :skip_encoding
+      attr_accessor :before_render_callbacks, :on_page_create_callback
 
       def populate_pages_from_store(document)
         return 0 if @store.page_count <= 0 || [email protected]?
 
         count = ([email protected]_count)
-        @pages = count.map do |index|
-          orig_dict_id = @store.object_id_for_page(index)
-          PDF::Core::Page.new(document, object_id: orig_dict_id)
-        end
+        @pages =
+          count.map do |index|
+            orig_dict_id = @store.object_id_for_page(index)
+            PDF::Core::Page.new(document, object_id: orig_dict_id)
+          end
       end
 
       def normalize_metadata(options)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/pdf/core/filter_list.rb 
new/lib/pdf/core/filter_list.rb
--- old/lib/pdf/core/filter_list.rb     2018-04-28 09:46:31.000000000 +0200
+++ new/lib/pdf/core/filter_list.rb     2020-10-24 17:26:29.000000000 +0200
@@ -3,6 +3,18 @@
 module PDF
   module Core
     class FilterList
+      class NotFilter < StandardError
+        DEFAULT_MESSAGE = 'Can not interpret input as a filter'
+        MESSAGE_WITH_FILTER = 'Can not interpret input as a filter: %<filter>s'
+
+        def initialize(message = DEFAULT_MESSAGE, filter: nil)
+          if filter
+            super format(MESSAGE_WITH_FILTER, filter: filter)
+          else
+            super(message)
+          end
+        end
+      end
       def initialize
         @list = []
       end
@@ -16,7 +28,7 @@
             @list << [name, params]
           end
         else
-          raise "Can not interpret input as filter: #{filter.inspect}"
+          raise NotFilter.new(filter: filter)
         end
 
         self
@@ -43,10 +55,8 @@
         @list.inspect
       end
 
-      def each
-        @list.each do |filter|
-          yield(filter)
-        end
+      def each(&block)
+        @list.each(&block)
       end
     end
   end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/pdf/core/graphics_state.rb 
new/lib/pdf/core/graphics_state.rb
--- old/lib/pdf/core/graphics_state.rb  2018-04-28 09:46:31.000000000 +0200
+++ new/lib/pdf/core/graphics_state.rb  2020-10-24 17:26:29.000000000 +0200
@@ -1,4 +1,3 @@
-
 # frozen_string_literal: true
 
 #
@@ -45,8 +44,7 @@
 
     # NOTE: This class may be a good candidate for a copy-on-write hash.
     class GraphicState
-      attr_accessor :color_space, :dash, :cap_style, :join_style, :line_width,
-        :fill_color, :stroke_color
+      attr_accessor :color_space, :dash, :cap_style, :join_style, :line_width, 
:fill_color, :stroke_color
 
       def initialize(previous_state = nil)
         if previous_state
@@ -65,11 +63,12 @@
       def dash_setting
         return '[] 0 d' unless @dash[:dash]
 
-        array = if @dash[:dash].is_a?(Array)
-                  @dash[:dash]
-                else
-                  [@dash[:dash], @dash[:space]]
-                end
+        array =
+          if @dash[:dash].is_a?(Array)
+            @dash[:dash]
+          else
+            [@dash[:dash], @dash[:space]]
+          end
 
         "[#{PDF::Core.real_params(array)}] "\
           "#{PDF::Core.real(@dash[:phase])} d"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/pdf/core/literal_string.rb 
new/lib/pdf/core/literal_string.rb
--- old/lib/pdf/core/literal_string.rb  2018-04-28 09:46:31.000000000 +0200
+++ new/lib/pdf/core/literal_string.rb  2020-10-24 17:26:29.000000000 +0200
@@ -1,4 +1,3 @@
-
 # frozen_string_literal: true
 
 module PDF
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/pdf/core/name_tree.rb 
new/lib/pdf/core/name_tree.rb
--- old/lib/pdf/core/name_tree.rb       2018-04-28 09:46:31.000000000 +0200
+++ new/lib/pdf/core/name_tree.rb       2020-10-24 17:26:29.000000000 +0200
@@ -31,7 +31,7 @@
         end
 
         def size
-          leaf? ? children.size : children.map(&:size).reduce(:+)
+          leaf? ? children.size : children.sum(&:size)
         end
 
         def leaf?
@@ -78,7 +78,7 @@
             children.insert(insertion_point(value), value)
             split! if children.length > limit
           else
-            fit = children.detect { |child| child >= value }
+            fit = children.find { |child| child >= value }
             fit ||= children.last
             fit << value
           end
@@ -107,8 +107,7 @@
         def deep_copy
           node = dup
           node.instance_variable_set('@children', Utils.deep_clone(children))
-          node.instance_variable_set('@ref',
-            node.ref ? node.ref.deep_copy : nil)
+          node.instance_variable_set('@ref', node.ref ? node.ref.deep_copy : 
nil)
           node
         end
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/pdf/core/outline_item.rb 
new/lib/pdf/core/outline_item.rb
--- old/lib/pdf/core/outline_item.rb    2018-04-28 09:46:31.000000000 +0200
+++ new/lib/pdf/core/outline_item.rb    2020-10-24 17:26:29.000000000 +0200
@@ -3,8 +3,7 @@
 module PDF
   module Core
     class OutlineItem #:nodoc:
-      attr_accessor :count, :first, :last, :next, :prev, :parent, :title, 
:dest,
-        :closed
+      attr_accessor :count, :first, :last, :next, :prev, :parent, :title, 
:dest, :closed
 
       def initialize(title, parent, options)
         @closed = options[:closed]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/pdf/core/page.rb new/lib/pdf/core/page.rb
--- old/lib/pdf/core/page.rb    2018-04-28 09:46:31.000000000 +0200
+++ new/lib/pdf/core/page.rb    2020-10-24 17:26:29.000000000 +0200
@@ -12,8 +12,7 @@
 module PDF
   module Core
     class Page #:nodoc:
-      attr_accessor :art_indents, :bleeds, :crops, :document, :margins, :stack,
-        :trims
+      attr_accessor :art_indents, :bleeds, :crops, :document, :margins, 
:stack, :trims
       attr_writer :content, :dictionary
 
       ZERO_INDENTS = {
@@ -25,20 +24,22 @@
 
       def initialize(document, options = {})
         @document = document
-        @margins  = options[:margins] || { left: 36,
-                                           right: 36,
-                                           top: 36,
-                                           bottom: 36 }
+        @margins = options[:margins] || {
+          left: 36,
+          right: 36,
+          top: 36,
+          bottom: 36
+        }
         @crops = options[:crops] || ZERO_INDENTS
         @bleeds = options[:bleeds] || ZERO_INDENTS
         @trims = options[:trims] || ZERO_INDENTS
         @art_indents = options[:art_indents] || ZERO_INDENTS
         @stack = GraphicStateStack.new(options[:graphic_state])
-        @size     = options[:size] || 'LETTER'
-        @layout   = options[:layout] || :portrait
+        @size = options[:size] || 'LETTER'
+        @layout = options[:layout] || :portrait
 
-        @stamp_stream      = nil
-        @stamp_dictionary  = nil
+        @stamp_stream = nil
+        @stamp_dictionary = nil
 
         @content = document.ref({})
         content << 'q' << "\n"
@@ -85,7 +86,7 @@
         graphic_stack_size = stack.stack.size
 
         document.save_graphics_state
-        document.send(:freeze_stamp_graphics)
+        document.__send__(:freeze_stamp_graphics)
         yield if block_given?
 
         until graphic_stack_size == stack.stack.size
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/pdf/core/pdf_object.rb 
new/lib/pdf/core/pdf_object.rb
--- old/lib/pdf/core/pdf_object.rb      2018-04-28 09:46:31.000000000 +0200
+++ new/lib/pdf/core/pdf_object.rb      2020-10-24 17:26:29.000000000 +0200
@@ -13,7 +13,7 @@
     module_function
 
     def real(num)
-      num.to_f.round(4)
+      format('%<number>.5f', number: num).sub(/((?<!\.)0)+\z/, '')
     end
 
     def real_params(array)
@@ -29,9 +29,11 @@
     # with only 0-9 and a-f characters. That result is valid ASCII so tag
     # it as such to account for behaviour of different ruby VMs
     def string_to_hex(str)
-      str.unpack('H*').first.force_encoding(::Encoding::US_ASCII)
+      str.unpack1('H*').force_encoding(::Encoding::US_ASCII)
     end
 
+    ESCAPED_NAME_CHARACTERS = (1..32).to_a + [35, 40, 41, 47, 60, 62] + 
(127..255).to_a
+
     # Serializes Ruby objects to their PDF equivalents.  Most primitive objects
     # will work as expected, but please note that Name objects are represented
     # by Ruby Symbol objects and Dictionary objects are represented by Ruby
@@ -61,27 +63,29 @@
         # Truncate trailing fraction zeroes
         num_string.sub(/(\d*)((\.0*$)|(\.0*[1-9]*)0*$)/, '\1\4')
       when Array
-        '[' + obj.map { |e| pdf_object(e, in_content_stream) }.join(' ') + ']'
+        "[#{obj.map { |e| pdf_object(e, in_content_stream) }.join(' ')}]"
       when PDF::Core::LiteralString
-        obj = obj.gsub(/[\\\n\r\t\b\f\(\)]/) { |m| "\\#{m}" }
+        obj = obj.gsub(/[\\\n\r\t\b\f()]/) { |m| "\\#{m}" }
         "(#{obj})"
       when Time
-        obj = obj.strftime('D:%Y%m%d%H%M%S%z').chop.chop + "'00'"
-        obj = obj.gsub(/[\\\n\r\t\b\f\(\)]/) { |m| "\\#{m}" }
+        obj = "#{obj.strftime('D:%Y%m%d%H%M%S%z').chop.chop}'00'"
+        obj = obj.gsub(/[\\\n\r\t\b\f()]/) { |m| "\\#{m}" }
         "(#{obj})"
       when PDF::Core::ByteString
-        "<#{obj.unpack('H*').first}>"
+        "<#{obj.unpack1('H*')}>"
       when String
         obj = utf8_to_utf16(obj) unless in_content_stream
         "<#{string_to_hex(obj)}>"
       when Symbol
-        '/' + obj.to_s.unpack('C*').map do |n|
-          if n < 33 || n > 126 || [35, 40, 41, 47, 60, 62].include?(n)
-            '#' + n.to_s(16).upcase
-          else
-            [n].pack('C*')
-          end
-        end.join
+        name_string =
+          obj.to_s.unpack('C*').map do |n|
+            if ESCAPED_NAME_CHARACTERS.include?(n)
+              "##{n.to_s(16).upcase}"
+            else
+              [n].pack('C*')
+            end
+          end.join
+        "/#{name_string}"
       when ::Hash
         output = +'<< '
         obj.each do |k, v|
@@ -98,7 +102,7 @@
       when PDF::Core::NameTree::Node
         pdf_object(obj.to_hash)
       when PDF::Core::NameTree::Value
-        pdf_object(obj.name) + ' ' + pdf_object(obj.value)
+        "#{pdf_object(obj.name)} #{pdf_object(obj.value)}"
       when PDF::Core::OutlineRoot, PDF::Core::OutlineItem
         pdf_object(obj.to_hash)
       else
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/pdf/core/reference.rb 
new/lib/pdf/core/reference.rb
--- old/lib/pdf/core/reference.rb       2018-04-28 09:46:31.000000000 +0200
+++ new/lib/pdf/core/reference.rb       2020-10-24 17:26:29.000000000 +0200
@@ -13,6 +13,12 @@
     class Reference #:nodoc:
       attr_accessor :gen, :data, :offset, :stream, :identifier
 
+      class CannotAttachStream < StandardError
+        def initialize(message = 'Cannot attach stream to a non-dictionary 
object')
+          super
+        end
+      end
+
       def initialize(id, data)
         @identifier = id
         @gen        = 0
@@ -34,8 +40,9 @@
 
       def <<(io)
         unless @data.is_a?(::Hash)
-          raise 'Cannot attach stream to non-dictionary object'
+          raise CannotAttachStream
         end
+
         (@stream ||= Stream.new) << io
       end
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/pdf/core/renderer.rb new/lib/pdf/core/renderer.rb
--- old/lib/pdf/core/renderer.rb        2018-04-28 09:46:31.000000000 +0200
+++ new/lib/pdf/core/renderer.rb        2020-10-24 17:26:29.000000000 +0200
@@ -170,9 +170,7 @@
         if output.instance_of?(StringIO)
           str = output.string
           str.force_encoding(::Encoding::ASCII_8BIT)
-          return str
-        else
-          return nil
+          str
         end
       end
 
@@ -210,7 +208,7 @@
         output << "0 #{state.store.size + 1}\n"
         output << "0000000000 65535 f \n"
         state.store.each do |ref|
-          output.printf('%010d', ref.offset)
+          output.printf('%<offset>010d', offset: ref.offset)
           output << " 00000 n \n"
         end
       end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/pdf/core/stream.rb new/lib/pdf/core/stream.rb
--- old/lib/pdf/core/stream.rb  2018-04-28 09:46:31.000000000 +0200
+++ new/lib/pdf/core/stream.rb  2020-10-24 17:26:29.000000000 +0200
@@ -90,8 +90,14 @@
       end
 
       def inspect
-        "#<#{self.class.name}:0x#{format '%014x', object_id} "\
-          "@stream=#{@stream.inspect}, @filters=#{@filters.inspect}>"
+        format(
+          '#<%<class>s:0x%<object_id>014x '\
+            '@stream=%<stream>s, @filters=%<filters>s>',
+          class: self.class.name,
+          object_id: object_id,
+          stream: @stream.inspect,
+          filters: @filters.inspect
+        )
       end
     end
   end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/pdf/core/text.rb new/lib/pdf/core/text.rb
--- old/lib/pdf/core/text.rb    2018-04-28 09:46:31.000000000 +0200
+++ new/lib/pdf/core/text.rb    2020-10-24 17:26:29.000000000 +0200
@@ -17,11 +17,18 @@
         stroke: 1,
         fill_stroke: 2,
         invisible: 3,
-        fill_clip: 4, stroke_clip: 5,
+        fill_clip: 4,
+        stroke_clip: 5,
         fill_stroke_clip: 6,
         clip: 7
       }.freeze
 
+      class BadFontFamily < StandardError
+        def initialize(message = 'Bad font family')
+          super
+        end
+      end
+
       attr_reader :skip_encoding
 
       # Low level call to set the current font style and extract text options
@@ -29,7 +36,8 @@
       #
       def process_text_options(options)
         if options[:style]
-          raise 'Bad font family' unless font.family
+          raise BadFontFamily unless font.family
+
           font(font.family, style: options[:style])
         end
 
@@ -47,6 +55,7 @@
       #
       def default_kerning?
         return true unless defined?(@default_kerning)
+
         @default_kerning
       end
 
@@ -182,6 +191,7 @@
         if mode.nil?
           return defined?(@text_rendering_mode) && @text_rendering_mode || 
:fill
         end
+
         unless MODES.key?(mode)
           raise ArgumentError,
             "mode must be between one of #{MODES.keys.join(', ')} (#{mode})"
@@ -211,6 +221,7 @@
         if amount.nil?
           return defined?(@character_spacing) && @character_spacing || 0
         end
+
         original_character_spacing = character_spacing
         if original_character_spacing == amount
           yield
@@ -229,6 +240,7 @@
       #
       def word_spacing(amount = nil)
         return defined?(@word_spacing) && @word_spacing || 0 if amount.nil?
+
         original_word_spacing = word_spacing
         if original_word_spacing == amount
           yield
@@ -246,8 +258,7 @@
       # percentage of the normal width.
       def horizontal_text_scaling(amount = nil)
         if amount.nil?
-          return defined?(@horizontal_text_scaling) &&
-                 @horizontal_text_scaling || 100
+          return defined?(@horizontal_text_scaling) && 
@horizontal_text_scaling || 100
         end
 
         original_horizontal_text_scaling = horizontal_text_scaling
@@ -262,7 +273,6 @@
         end
       end
 
-      # rubocop: disable Naming/UncommunicativeMethodParamName
       def add_text_content(text, x, y, options)
         chunks = font.encode_text(text, options)
 
@@ -291,12 +301,11 @@
           ].join(' ')
 
           operation = options[:kerning] && string.is_a?(Array) ? 'TJ' : 'Tj'
-          add_content PDF::Core.pdf_object(string, true) + ' ' + operation
+          add_content "#{PDF::Core.pdf_object(string, true)} #{operation}"
         end
 
         add_content "ET\n"
       end
-      # rubocop: enable Naming/UncommunicativeMethodParamName
     end
   end
 end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/pdf/core/utils.rb new/lib/pdf/core/utils.rb
--- old/lib/pdf/core/utils.rb   2018-04-28 09:46:31.000000000 +0200
+++ new/lib/pdf/core/utils.rb   2020-10-24 17:26:29.000000000 +0200
@@ -3,10 +3,11 @@
 module PDF
   module Core
     module Utils
+      module_function
+
       def deep_clone(object)
         Marshal.load(Marshal.dump(object))
       end
-      module_function :deep_clone
     end
   end
 end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/metadata new/metadata
--- old/metadata        2018-04-28 09:46:31.000000000 +0200
+++ new/metadata        2020-10-24 17:26:29.000000000 +0200
@@ -1,7 +1,7 @@
 --- !ruby/object:Gem::Specification
 name: pdf-core
 version: !ruby/object:Gem::Version
-  version: 0.8.1
+  version: 0.9.0
 platform: ruby
 authors:
 - Gregory Brown
@@ -14,43 +14,28 @@
 cert_chain:
 - |
   -----BEGIN CERTIFICATE-----
-  MIIDcDCCAligAwIBAgIBATANBgkqhkiG9w0BAQUFADA/MQ0wCwYDVQQDDARhbGV4
-  MRkwFwYKCZImiZPyLGQBGRYJcG9pbnRsZXNzMRMwEQYKCZImiZPyLGQBGRYDb25l
-  MB4XDTE4MDQyNzE5NTkyNloXDTE5MDQyNzE5NTkyNlowPzENMAsGA1UEAwwEYWxl
-  eDEZMBcGCgmSJomT8ixkARkWCXBvaW50bGVzczETMBEGCgmSJomT8ixkARkWA29u
-  ZTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAM85Us8YQr55o/rMl+J+
-  ula89ODiqjdc0kk+ibzRLCpfaFUJWxEMrhFiApRCopFDMeGXHXjBkfBYsRMFVs0M
-  Zfe6rIKdNZQlQqHfJ2JlKFek0ehX81buGERi82wNwECNhOZu9c6G5gKjRPP/Q3Y6
-  K6f/TAggK0+/K1j1NjT+WSVaMBuyomM067ejwhiQkEA3+tT3oT/paEXCOfEtxOdX
-  1F8VFd2MbmMK6CGgHbFLApfyDBtDx+ydplGZ3IMZg2nPqwYXTPJx+IuRO21ssDad
-  gBMIAvL3wIeezJk2xONvhYg0K5jbIQOPB6zD1/9E6Q0LrwSBDkz5oyOn4PRZxgZ/
-  OiMCAwEAAaN3MHUwCQYDVR0TBAIwADALBgNVHQ8EBAMCBLAwHQYDVR0OBBYEFE+A
-  jBJVt6ie5r83L/znvqjF1RuuMB0GA1UdEQQWMBSBEmFsZXhAcG9pbnRsZXNzLm9u
-  ZTAdBgNVHRIEFjAUgRJhbGV4QHBvaW50bGVzcy5vbmUwDQYJKoZIhvcNAQEFBQAD
-  ggEBAIAbB2aGarAHVCU9gg7Se3Rf2m97uZrSG+LCe8h5x36ZtjxARb6cyBPxoX4C
-  Tsy3MAgtj2thAoke++/c+XRCeXzzVMDxq3KEK7FONiy3APdHXfygN9iFjnN/K+Nv
-  7yKfaocMWSlBlyj0k4r76neyoIgFHHjcnhS8EMst+UR9iUwFibAlVylu88hvnnK0
-  fD6AgoHJro0u+R/P++J4dKC5wOD4gHGnq694kAdY/3rtRvorLtOJm+pHZSKe/9Je
-  CWt9UspdQDfg95fK56I9NFeV+LrQ5Cj866DCeH25SFbgK9acS7lw4uOLVu/9QWhZ
-  otbeukAemPO8HXWM/JCgkR6BaPE=
+  MIIDODCCAiCgAwIBAgIBATANBgkqhkiG9w0BAQsFADAjMSEwHwYDVQQDDBhhbGV4
+  L0RDPXBvaW50bGVzcy9EQz1vbmUwHhcNMjAwODAxMTQxMjE1WhcNMjEwODAxMTQx
+  MjE1WjAjMSEwHwYDVQQDDBhhbGV4L0RDPXBvaW50bGVzcy9EQz1vbmUwggEiMA0G
+  CSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDPOVLPGEK+eaP6zJfifrpWvPTg4qo3
+  XNJJPom80SwqX2hVCVsRDK4RYgKUQqKRQzHhlx14wZHwWLETBVbNDGX3uqyCnTWU
+  JUKh3ydiZShXpNHoV/NW7hhEYvNsDcBAjYTmbvXOhuYCo0Tz/0N2Oiun/0wIICtP
+  vytY9TY0/lklWjAbsqJjNOu3o8IYkJBAN/rU96E/6WhFwjnxLcTnV9RfFRXdjG5j
+  CughoB2xSwKX8gwbQ8fsnaZRmdyDGYNpz6sGF0zycfiLkTttbLA2nYATCALy98CH
+  nsyZNsTjb4WINCuY2yEDjwesw9f/ROkNC68EgQ5M+aMjp+D0WcYGfzojAgMBAAGj
+  dzB1MAkGA1UdEwQCMAAwCwYDVR0PBAQDAgSwMB0GA1UdDgQWBBRPgIwSVbeonua/
+  Ny/8576oxdUbrjAdBgNVHREEFjAUgRJhbGV4QHBvaW50bGVzcy5vbmUwHQYDVR0S
+  BBYwFIESYWxleEBwb2ludGxlc3Mub25lMA0GCSqGSIb3DQEBCwUAA4IBAQAzhGxF
+  M0bXJ9GWD9vdVHOyzBQBJcJAvnsz2yV3+r4eJBsQynFIscsea8lHFL/d1eHYP0mN
+  k0fhK+WDcPlrj0Sn/Ezhk2qogTIekwDOK6pZkGRQzD45leJqQMnYd+/TXK3ri485
+  Gi4oJ6NitnnUT59SQnjD5JcENfc0EcRzclmVRFE8W4O+ORgo4Dypq1rwYUzxeyUk
+  mP5jNBWtH+hGUph28GQb0Hph6YnQb8zEFB88Xq80PK1SzkIPHpbTBk9mwPf6ypeX
+  Un1TJEahAlgENVml6CyDXSwk0H8N1V3gm1mb9Fe1T2Z/kAzvjo0qTDEtMVLU7Bxh
+  uqMUrdETjTnRYCVq
   -----END CERTIFICATE-----
-date: 2018-04-28 00:00:00.000000000 Z
+date: 2020-10-24 00:00:00.000000000 Z
 dependencies:
 - !ruby/object:Gem::Dependency
-  name: bundler
-  requirement: !ruby/object:Gem::Requirement
-    requirements:
-    - - ">="
-      - !ruby/object:Gem::Version
-        version: '0'
-  type: :development
-  prerelease: false
-  version_requirements: !ruby/object:Gem::Requirement
-    requirements:
-    - - ">="
-      - !ruby/object:Gem::Version
-        version: '0'
-- !ruby/object:Gem::Dependency
   name: pdf-inspector
   requirement: !ruby/object:Gem::Requirement
     requirements:
@@ -112,28 +97,42 @@
     requirements:
     - - "~>"
       - !ruby/object:Gem::Version
-        version: '0.55'
+        version: '0.93'
+  type: :development
+  prerelease: false
+  version_requirements: !ruby/object:Gem::Requirement
+    requirements:
+    - - "~>"
+      - !ruby/object:Gem::Version
+        version: '0.93'
+- !ruby/object:Gem::Dependency
+  name: rubocop-performance
+  requirement: !ruby/object:Gem::Requirement
+    requirements:
+    - - "~>"
+      - !ruby/object:Gem::Version
+        version: '1.8'
   type: :development
   prerelease: false
   version_requirements: !ruby/object:Gem::Requirement
     requirements:
     - - "~>"
       - !ruby/object:Gem::Version
-        version: '0.55'
+        version: '1.8'
 - !ruby/object:Gem::Dependency
   name: rubocop-rspec
   requirement: !ruby/object:Gem::Requirement
     requirements:
     - - "~>"
       - !ruby/object:Gem::Version
-        version: '1.25'
+        version: '1.44'
   type: :development
   prerelease: false
   version_requirements: !ruby/object:Gem::Requirement
     requirements:
     - - "~>"
       - !ruby/object:Gem::Version
-        version: '1.25'
+        version: '1.44'
 - !ruby/object:Gem::Dependency
   name: simplecov
   requirement: !ruby/object:Gem::Requirement
@@ -187,7 +186,7 @@
 - lib/pdf/core/text.rb
 - lib/pdf/core/utils.rb
 - pdf-core.gemspec
-homepage: http://prawn.majesticseacreature.com
+homepage: http://prawnpdf.org
 licenses:
 - PRAWN
 - GPL-2.0
@@ -201,15 +200,14 @@
   requirements:
   - - ">="
     - !ruby/object:Gem::Version
-      version: '2.3'
+      version: '2.5'
 required_rubygems_version: !ruby/object:Gem::Requirement
   requirements:
   - - ">="
     - !ruby/object:Gem::Version
       version: 1.3.6
 requirements: []
-rubyforge_project: prawn
-rubygems_version: 2.6.14
+rubygems_version: 3.0.3
 signing_key: 
 specification_version: 4
 summary: PDF::Core is used by Prawn to render PDF documents
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/metadata.gz.sig new/metadata.gz.sig
--- old/metadata.gz.sig 2018-04-28 09:46:31.000000000 +0200
+++ new/metadata.gz.sig 2020-10-24 17:26:29.000000000 +0200
@@ -1 +1,2 @@
-???HC[K???u/#?o?B?*WN?i?????W?C???I?PW???`????9m?1??p?*??j?[??j?S?Q$;?T?s???_???}?{?~7_lB??x??????W????M~?????)c??'???????}|mQ??l?l??F????f????#)X.??0??????)^?`??6|H'?Q?w??????\k???wni????_
 ????&???Y???????,????o?^???+uuG"??
\ No newline at end of file
+*gT??????IIJ?
+i=??u??!s?8=?{`???1????)?oY?1???D?"?4??2r??-??v?7o{\??n?<????b?r???cax?E2TuZ?????????p?r?f??Z?
?0?#_??-`??W??????~?Q?u?B???h???]^-?
??X?-??\?0??jY?&?g?G(????:???????????#???],4?'yE????X?Bz
????$??0B?@?r i+h?3?5???h
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pdf-core.gemspec new/pdf-core.gemspec
--- old/pdf-core.gemspec        2018-04-28 09:46:31.000000000 +0200
+++ new/pdf-core.gemspec        2020-10-24 17:26:29.000000000 +0200
@@ -2,15 +2,16 @@
 
 Gem::Specification.new do |spec|
   spec.name = 'pdf-core'
-  spec.version = '0.8.1'
+  spec.version = '0.9.0'
   spec.platform = Gem::Platform::RUBY
   spec.summary = 'PDF::Core is used by Prawn to render PDF documents'
-  spec.files =  Dir.glob('lib/**/**/*') +
-                %w[COPYING GPLv2 GPLv3 LICENSE] +
-                %w[Gemfile Rakefile] +
-                ['pdf-core.gemspec']
+  spec.files =
+    Dir.glob('lib/**/**/*') +
+    %w[COPYING GPLv2 GPLv3 LICENSE] +
+    %w[Gemfile Rakefile] +
+    ['pdf-core.gemspec']
   spec.require_path = 'lib'
-  spec.required_ruby_version = '>= 2.3'
+  spec.required_ruby_version = '>= 2.5'
   spec.required_rubygems_version = '>= 1.3.6'
 
   spec.cert_chain = ['certs/pointlessone.pem']
@@ -29,16 +30,15 @@
     '[email protected]', '[email protected]', '[email protected]',
     '[email protected]', '[email protected]'
   ]
-  spec.rubyforge_project = 'prawn'
   spec.licenses = %w[PRAWN GPL-2.0 GPL-3.0]
-  spec.add_development_dependency('bundler')
   spec.add_development_dependency('pdf-inspector', '~> 1.1.0')
   spec.add_development_dependency('pdf-reader', '~>1.2')
   spec.add_development_dependency('rake')
   spec.add_development_dependency('rspec')
-  spec.add_development_dependency('rubocop', '~> 0.55')
-  spec.add_development_dependency('rubocop-rspec', '~> 1.25')
+  spec.add_development_dependency('rubocop', '~> 0.93')
+  spec.add_development_dependency('rubocop-performance', '~> 1.8')
+  spec.add_development_dependency('rubocop-rspec', '~> 1.44')
   spec.add_development_dependency('simplecov')
-  spec.homepage = 'http://prawn.majesticseacreature.com'
+  spec.homepage = 'http://prawnpdf.org'
   spec.description = 'PDF::Core is used by Prawn to render PDF documents'
 end

Reply via email to