[bug#78683,v2,7/7] gnu: ruby-chunky-png: Fix build with ruby@3.2.
Commit Message
* gnu/packages/ruby-xyz.scm (ruby-chunky-png)[source]: Record patch.
* gnu/local.mk: Record patch.
* gnu/packages/patches/ruby-chunky-png-ruby-3-2-support.patch: Record
patch.
---
gnu/local.mk | 1 +
.../ruby-chunky-png-ruby-3-2-support.patch | 29 +++++++++++++++++++
gnu/packages/ruby-xyz.scm | 5 ++--
3 files changed, 33 insertions(+), 2 deletions(-)
create mode 100644 gnu/packages/patches/ruby-chunky-png-ruby-3-2-support.patch
@@ -2214,6 +2214,7 @@ dist_patch_DATA = \
%D%/packages/patches/rottlog-direntry.patch \
%D%/packages/patches/ruby-actionpack-remove-browser-tests.patch \
%D%/packages/patches/ruby-asciidoctor-pdf-support-prawn-svg-0_36.patch \
+ %D%/packages/patches/ruby-chunky-png-ruby-3-2-support.patch \
%D%/packages/patches/ruby-hiredis-use-system-hiredis.patch \
%D%/packages/patches/ruby-hydra-minimal-no-byebug.patch \
%D%/packages/patches/ruby-anystyle-data-immutable-install.patch \
new file mode 100644
@@ -0,0 +1,29 @@
+From 8e6f5934541833f15664398f90331f3724e40933 Mon Sep 17 00:00:00 2001
+From: Mamoru TASAKA <mtasaka@fedoraproject.org>
+Date: Tue, 15 Nov 2022 23:22:20 +0900
+Subject: [PATCH] ruby3_2 fix: check if object responds to regex_match op
+
+Object#=~ is already deprecated since ruby2.6 and will be
+removed from ruby3.2. As the result, Array no longer
+respond to =~ from ruby3.2, for example.
+
+Check if the target object really respond to =~ .
+
+Closes #168
+---
+ lib/chunky_png/vector.rb | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/lib/chunky_png/vector.rb b/lib/chunky_png/vector.rb
+index 4ef965f..034104c 100644
+--- a/lib/chunky_png/vector.rb
++++ b/lib/chunky_png/vector.rb
+@@ -166,7 +166,7 @@ def dimension
+ # @return [Array<ChunkyPNG::Point>] The list of points interpreted from the input array.
+ def self.multiple_from_array(source)
+ return [] if source.empty?
+- if source.first.is_a?(Numeric) || source.first =~ /^\d+$/
++ if source.first.is_a?(Numeric) || ( source.first.respond_to?(:=~) && source.first =~ /^\d+$/ )
+ raise ArgumentError, "The points array is expected to have an even number of items!" if source.length % 2 != 0
+
+ points = []
@@ -1852,11 +1852,12 @@ (define-public ruby-chunky-png
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
- (base32 "05qwj72dy2fcy0n2jnf3bfriybfj36m7s6pv9xash6295dbcp901"))))
+ (base32 "05qwj72dy2fcy0n2jnf3bfriybfj36m7s6pv9xash6295dbcp901"))
+ (patches
+ (search-patches "ruby-chunky-png-ruby-3-2-support.patch"))))
(build-system ruby-build-system)
(arguments
(list
- #:ruby ruby-3.1
#:test-target "spec"
#:phases
#~(modify-phases %standard-phases