From 2051b64fe8b01ad12d0ce76e1f4890cf4b2a162d Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sat, 23 Jul 2022 02:11:52 +0000 Subject: [PATCH 01/42] Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- rubygem-rmagick.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/rubygem-rmagick.spec b/rubygem-rmagick.spec index 2d7de2e..35348ed 100644 --- a/rubygem-rmagick.spec +++ b/rubygem-rmagick.spec @@ -9,7 +9,7 @@ Requires: (ImageMagick%{?_isa} >= %2 with ImageMagick%{?_isa} < %3)\ Name: rubygem-%{gem_name} Version: 4.2.6 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Ruby binding to ImageMagick License: MIT @@ -142,6 +142,9 @@ done %doc %{gem_instdir}/examples/ %changelog +* Sat Jul 23 2022 Fedora Release Engineering - 4.2.6-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild + * Sun Jul 17 2022 Mamoru TASAKA - 4.2.6-1 - 4.2.6 From e7b9430f457fc0fdd8c7cbe843951672d29cab69 Mon Sep 17 00:00:00 2001 From: Mamoru TASAKA Date: Mon, 26 Sep 2022 23:32:14 +0900 Subject: [PATCH 02/42] 4.3.0 --- rubygem-rmagick.spec | 8 ++++++-- sources | 4 ++-- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/rubygem-rmagick.spec b/rubygem-rmagick.spec index 35348ed..092fa9d 100644 --- a/rubygem-rmagick.spec +++ b/rubygem-rmagick.spec @@ -8,8 +8,8 @@ Requires: (ImageMagick%{?_isa} >= %2 with ImageMagick%{?_isa} < %3)\ %{nil} Name: rubygem-%{gem_name} -Version: 4.2.6 -Release: 2%{?dist} +Version: 4.3.0 +Release: 1%{?dist} Summary: Ruby binding to ImageMagick License: MIT @@ -28,6 +28,7 @@ BuildRequires: rubygem(pry) # Due to test/RMagick/rmmain.c test_Magick_version(), for now # we specify the exact version for ImageMagick %if 0%{?fedora} +%setIMver 39 1:6.9.12 1:6.9.13 %setIMver 38 1:6.9.12 1:6.9.13 %setIMver 37 1:6.9.12 1:6.9.13 %setIMver 36 1:6.9.12 1:6.9.13 @@ -142,6 +143,9 @@ done %doc %{gem_instdir}/examples/ %changelog +* Mon Sep 26 2022 Mamoru TASAKA - 4.3.0-1 +- 4.3.0 + * Sat Jul 23 2022 Fedora Release Engineering - 4.2.6-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild diff --git a/sources b/sources index 6be1a4d..b79a7cb 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (rmagick-4.2.6.gem) = 156613e9900f52c41c3017e30ac35c3b16a6e7562af89ef2ce8e89b6e47355c54282b302c2556c5459b72271bc1a7fea200f7f4f4a9abcf4ded2f025a83cc7e7 -SHA512 (rubygem-rmagick-4.2.6-full.tar.gz) = 2699fe12de4fe2a57eced338210644a35f14ab31b87ec5a0bcb72ba607612f615ac6b81b1b65f06166b0f34c4707c29d0c4128c7ebf4f148dea7427e4c511080 +SHA512 (rmagick-4.3.0.gem) = a14d4c949ef056084c8d879aae5353b28205a7c320bd22e74adcca5542604acec14bdc20ebe822b99053b309913d57b0f7c2c371d1cf341e73bbe773a77c0f4f +SHA512 (rubygem-rmagick-4.3.0-full.tar.gz) = 1ea5cf659e81a6174dbce5b341297566365f665d7412258067e0f1be63b8c0c9a60124d0f25420e692c2f01e09a0a24bd7581757e2035731e7240af54a9e7380 From 21086cd7635200dcba64e49d0ba40642e22d9a6a Mon Sep 17 00:00:00 2001 From: Mamoru TASAKA Date: Sun, 9 Oct 2022 16:54:36 +0900 Subject: [PATCH 03/42] 5.0.0 --- rubygem-rmagick.spec | 6 ++++-- sources | 4 ++-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/rubygem-rmagick.spec b/rubygem-rmagick.spec index 092fa9d..3e0cdac 100644 --- a/rubygem-rmagick.spec +++ b/rubygem-rmagick.spec @@ -8,7 +8,7 @@ Requires: (ImageMagick%{?_isa} >= %2 with ImageMagick%{?_isa} < %3)\ %{nil} Name: rubygem-%{gem_name} -Version: 4.3.0 +Version: 5.0.0 Release: 1%{?dist} Summary: Ruby binding to ImageMagick @@ -131,7 +131,6 @@ done %doc %{gem_instdir}/README.md %{gem_libdir}/ -%{gem_instdir}/deprecated/ %{gem_extdir_mri}/ %exclude %{gem_cache} %{gem_spec} @@ -143,6 +142,9 @@ done %doc %{gem_instdir}/examples/ %changelog +* Sun Oct 9 2022 Mamoru TASAKA - 4.3.0-1 +- 5.0.0 + * Mon Sep 26 2022 Mamoru TASAKA - 4.3.0-1 - 4.3.0 diff --git a/sources b/sources index b79a7cb..4e871ea 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (rmagick-4.3.0.gem) = a14d4c949ef056084c8d879aae5353b28205a7c320bd22e74adcca5542604acec14bdc20ebe822b99053b309913d57b0f7c2c371d1cf341e73bbe773a77c0f4f -SHA512 (rubygem-rmagick-4.3.0-full.tar.gz) = 1ea5cf659e81a6174dbce5b341297566365f665d7412258067e0f1be63b8c0c9a60124d0f25420e692c2f01e09a0a24bd7581757e2035731e7240af54a9e7380 +SHA512 (rmagick-5.0.0.gem) = 5ff55285de4f6b0fdb94df559df376455f761cb1c3c0379b8fb34aa8e861c08883bd52dce17aca89a3493cf8f4eef33f69e7ffbc4cbbb5d47ed82257930ccd50 +SHA512 (rubygem-rmagick-5.0.0-full.tar.gz) = c263c745e0d2f9ef5b53582c5dd9cc6bbc223b80f66dee2f08c04282e193057d74dd2fe8f8411e42fe68fce5c832129dff46cdee91d2b418f65d6739aa65ef65 From 2dd4932d4f9a3abbb4292ff1ee7da768e16c0072 Mon Sep 17 00:00:00 2001 From: Mamoru TASAKA Date: Thu, 17 Nov 2022 15:51:10 +0900 Subject: [PATCH 04/42] 5.1.0 --- rubygem-rmagick.spec | 13 ++++++++++--- sources | 4 ++-- 2 files changed, 12 insertions(+), 5 deletions(-) diff --git a/rubygem-rmagick.spec b/rubygem-rmagick.spec index 3e0cdac..5066ffa 100644 --- a/rubygem-rmagick.spec +++ b/rubygem-rmagick.spec @@ -8,7 +8,7 @@ Requires: (ImageMagick%{?_isa} >= %2 with ImageMagick%{?_isa} < %3)\ %{nil} Name: rubygem-%{gem_name} -Version: 5.0.0 +Version: 5.1.0 Release: 1%{?dist} Summary: Ruby binding to ImageMagick @@ -22,6 +22,7 @@ Source2: rmagick-create-full-tarball.sh BuildRequires: gcc BuildRequires: rubygems-devel BuildRequires: ruby-devel +BuildRequires: rubygem(pkg-config) BuildRequires: rubygem(test-unit) BuildRequires: rubygem(rspec) BuildRequires: rubygem(pry) @@ -32,7 +33,6 @@ BuildRequires: rubygem(pry) %setIMver 38 1:6.9.12 1:6.9.13 %setIMver 37 1:6.9.12 1:6.9.13 %setIMver 36 1:6.9.12 1:6.9.13 -%setIMver 35 1:6.9.12 1:6.9.13 %endif Obsoletes: ruby-RMagick < 2.13.2 @@ -65,6 +65,10 @@ find . -name \*.rb -or -name \*.gif | xargs chmod ugo-x sed -i ext/RMagick/extconf.rb \ -e '\@LDFLAGS@s|[ \t]*-Wl,-rpath,[^ \t][^ \t]*"|"|' +# kill gcc optflags suppressing warnings +sed -i ext/RMagick/extconf.rb \ + -e "\@-std=gnu99@s|-Wno[^ \t'][^ \t']*||g" + %build export MAKE="make %{?_smp_mflags}" # Make sure that .so is to be created newly @@ -142,7 +146,10 @@ done %doc %{gem_instdir}/examples/ %changelog -* Sun Oct 9 2022 Mamoru TASAKA - 4.3.0-1 +* Thu Nov 17 2022 Mamoru TASAKA - 5.1.0-1 +- 5.1.0 + +* Sun Oct 9 2022 Mamoru TASAKA - 5.0.0-1 - 5.0.0 * Mon Sep 26 2022 Mamoru TASAKA - 4.3.0-1 diff --git a/sources b/sources index 4e871ea..1d335ae 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (rmagick-5.0.0.gem) = 5ff55285de4f6b0fdb94df559df376455f761cb1c3c0379b8fb34aa8e861c08883bd52dce17aca89a3493cf8f4eef33f69e7ffbc4cbbb5d47ed82257930ccd50 -SHA512 (rubygem-rmagick-5.0.0-full.tar.gz) = c263c745e0d2f9ef5b53582c5dd9cc6bbc223b80f66dee2f08c04282e193057d74dd2fe8f8411e42fe68fce5c832129dff46cdee91d2b418f65d6739aa65ef65 +SHA512 (rmagick-5.1.0.gem) = d0d5832543553f48814a9cf78cf50940dcf5688cb38942696dd7824b5c25fe13932a283554d60177962d2635a5c18b35c5fbc44679a70eb2fe6057b0482c9e23 +SHA512 (rubygem-rmagick-5.1.0-full.tar.gz) = 5e5ff13e805131c63c7a58e25ea456ff173f8d3fa3fbee23bb2bcc98333ed091eab128b878edd9e0a92c1342898d4effdd39fe0aedca1bf60cf1bda08a6e2c43 From f5b38ebe58af172a236925082079b8fa30d9e01c Mon Sep 17 00:00:00 2001 From: Mamoru TASAKA Date: Wed, 4 Jan 2023 10:33:36 +0900 Subject: [PATCH 05/42] Rebuild for https://fedoraproject.org/wiki/Changes/Ruby_3.2 --- rubygem-rmagick.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/rubygem-rmagick.spec b/rubygem-rmagick.spec index 5066ffa..5a73a6c 100644 --- a/rubygem-rmagick.spec +++ b/rubygem-rmagick.spec @@ -9,7 +9,7 @@ Requires: (ImageMagick%{?_isa} >= %2 with ImageMagick%{?_isa} < %3)\ Name: rubygem-%{gem_name} Version: 5.1.0 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Ruby binding to ImageMagick License: MIT @@ -146,6 +146,9 @@ done %doc %{gem_instdir}/examples/ %changelog +* Wed Jan 04 2023 Mamoru TASAKA - 5.1.0-2 +- Rebuild for https://fedoraproject.org/wiki/Changes/Ruby_3.2 + * Thu Nov 17 2022 Mamoru TASAKA - 5.1.0-1 - 5.1.0 From ed07edd4b9b3831e41a0f304a2395b4948d70a75 Mon Sep 17 00:00:00 2001 From: Neal Gompa Date: Thu, 5 Jan 2023 07:00:25 -0500 Subject: [PATCH 06/42] Rebuild for ImageMagick 7 --- rubygem-rmagick.spec | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/rubygem-rmagick.spec b/rubygem-rmagick.spec index 5a73a6c..ed80109 100644 --- a/rubygem-rmagick.spec +++ b/rubygem-rmagick.spec @@ -9,7 +9,7 @@ Requires: (ImageMagick%{?_isa} >= %2 with ImageMagick%{?_isa} < %3)\ Name: rubygem-%{gem_name} Version: 5.1.0 -Release: 2%{?dist} +Release: 3%{?dist} Summary: Ruby binding to ImageMagick License: MIT @@ -29,8 +29,8 @@ BuildRequires: rubygem(pry) # Due to test/RMagick/rmmain.c test_Magick_version(), for now # we specify the exact version for ImageMagick %if 0%{?fedora} -%setIMver 39 1:6.9.12 1:6.9.13 -%setIMver 38 1:6.9.12 1:6.9.13 +%setIMver 39 1:7.1.0 1:7.1.1 +%setIMver 38 1:7.1.0 1:7.1.1 %setIMver 37 1:6.9.12 1:6.9.13 %setIMver 36 1:6.9.12 1:6.9.13 %endif @@ -146,6 +146,9 @@ done %doc %{gem_instdir}/examples/ %changelog +* Thu Jan 05 2023 Neal Gompa - 5.1.0-3 +- Rebuild for ImageMagick 7 + * Wed Jan 04 2023 Mamoru TASAKA - 5.1.0-2 - Rebuild for https://fedoraproject.org/wiki/Changes/Ruby_3.2 From e25c10287076e8b5f4d3b1912c58435810f843de Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 20 Jan 2023 21:03:22 +0000 Subject: [PATCH 07/42] Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- rubygem-rmagick.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/rubygem-rmagick.spec b/rubygem-rmagick.spec index ed80109..b949ba3 100644 --- a/rubygem-rmagick.spec +++ b/rubygem-rmagick.spec @@ -9,7 +9,7 @@ Requires: (ImageMagick%{?_isa} >= %2 with ImageMagick%{?_isa} < %3)\ Name: rubygem-%{gem_name} Version: 5.1.0 -Release: 3%{?dist} +Release: 4%{?dist} Summary: Ruby binding to ImageMagick License: MIT @@ -146,6 +146,9 @@ done %doc %{gem_instdir}/examples/ %changelog +* Fri Jan 20 2023 Fedora Release Engineering - 5.1.0-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + * Thu Jan 05 2023 Neal Gompa - 5.1.0-3 - Rebuild for ImageMagick 7 From 533c478ce2535b7de4f741fe6e8b15a554d76fc3 Mon Sep 17 00:00:00 2001 From: Mamoru TASAKA Date: Mon, 13 Mar 2023 22:37:55 +0900 Subject: [PATCH 08/42] 5.2.0 --- rubygem-rmagick.spec | 9 +++++++-- sources | 4 ++-- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/rubygem-rmagick.spec b/rubygem-rmagick.spec index b949ba3..8bffe9a 100644 --- a/rubygem-rmagick.spec +++ b/rubygem-rmagick.spec @@ -8,10 +8,11 @@ Requires: (ImageMagick%{?_isa} >= %2 with ImageMagick%{?_isa} < %3)\ %{nil} Name: rubygem-%{gem_name} -Version: 5.1.0 -Release: 4%{?dist} +Version: 5.2.0 +Release: 1%{?dist} Summary: Ruby binding to ImageMagick +# SPDX confirmed License: MIT URL: https://github.com/rmagick/rmagick Source0: https://rubygems.org/gems/%{gem_name}-%{version}.gem @@ -29,6 +30,7 @@ BuildRequires: rubygem(pry) # Due to test/RMagick/rmmain.c test_Magick_version(), for now # we specify the exact version for ImageMagick %if 0%{?fedora} +%setIMver 40 1:7.1.0 1:7.1.1 %setIMver 39 1:7.1.0 1:7.1.1 %setIMver 38 1:7.1.0 1:7.1.1 %setIMver 37 1:6.9.12 1:6.9.13 @@ -146,6 +148,9 @@ done %doc %{gem_instdir}/examples/ %changelog +* Mon Mar 13 2023 Mamoru TASAKA - 5.2.0-1 +- 5.2.0 + * Fri Jan 20 2023 Fedora Release Engineering - 5.1.0-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild diff --git a/sources b/sources index 1d335ae..ebfa6fe 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (rmagick-5.1.0.gem) = d0d5832543553f48814a9cf78cf50940dcf5688cb38942696dd7824b5c25fe13932a283554d60177962d2635a5c18b35c5fbc44679a70eb2fe6057b0482c9e23 -SHA512 (rubygem-rmagick-5.1.0-full.tar.gz) = 5e5ff13e805131c63c7a58e25ea456ff173f8d3fa3fbee23bb2bcc98333ed091eab128b878edd9e0a92c1342898d4effdd39fe0aedca1bf60cf1bda08a6e2c43 +SHA512 (rmagick-5.2.0.gem) = 198b8dd1e715f21621ca2f01e1e340ea04097342252ec7312f2695ee54f367d28cda3184d20312296386aeb7a092d19e098a44c64efa560f8faa20275996ac46 +SHA512 (rubygem-rmagick-5.2.0-full.tar.gz) = f557df4a106970ca67430d5654ee4b8c90e34081b3940f8e8fb5c5eb41ddb3f5ab59af803ca72bb6c9626a9ba398ccc684834c664795e8a3209b3678c2759d54 From 6d14c00f718d6b2e53a8fe41284f4852a4f5273e Mon Sep 17 00:00:00 2001 From: Mamoru TASAKA Date: Mon, 13 Mar 2023 22:39:02 +0900 Subject: [PATCH 09/42] clarify IM7 supported branches --- rubygem-rmagick.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rubygem-rmagick.spec b/rubygem-rmagick.spec index 8bffe9a..61e8a4a 100644 --- a/rubygem-rmagick.spec +++ b/rubygem-rmagick.spec @@ -155,7 +155,7 @@ done - Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild * Thu Jan 05 2023 Neal Gompa - 5.1.0-3 -- Rebuild for ImageMagick 7 +- F-38+: Rebuild for ImageMagick 7 * Wed Jan 04 2023 Mamoru TASAKA - 5.1.0-2 - Rebuild for https://fedoraproject.org/wiki/Changes/Ruby_3.2 From 524b3735a7b8b68539b220a30e9ca410f7ecfaaa Mon Sep 17 00:00:00 2001 From: Mamoru TASAKA Date: Thu, 23 Mar 2023 20:00:23 +0900 Subject: [PATCH 10/42] F-39: Rebuild against ImageMagick 7.1.1 --- rubygem-rmagick.spec | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/rubygem-rmagick.spec b/rubygem-rmagick.spec index 61e8a4a..9c5101c 100644 --- a/rubygem-rmagick.spec +++ b/rubygem-rmagick.spec @@ -9,7 +9,7 @@ Requires: (ImageMagick%{?_isa} >= %2 with ImageMagick%{?_isa} < %3)\ Name: rubygem-%{gem_name} Version: 5.2.0 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Ruby binding to ImageMagick # SPDX confirmed @@ -30,8 +30,8 @@ BuildRequires: rubygem(pry) # Due to test/RMagick/rmmain.c test_Magick_version(), for now # we specify the exact version for ImageMagick %if 0%{?fedora} -%setIMver 40 1:7.1.0 1:7.1.1 -%setIMver 39 1:7.1.0 1:7.1.1 +%setIMver 40 1:7.1.1 1:7.1.2 +%setIMver 39 1:7.1.1 1:7.1.2 %setIMver 38 1:7.1.0 1:7.1.1 %setIMver 37 1:6.9.12 1:6.9.13 %setIMver 36 1:6.9.12 1:6.9.13 @@ -148,6 +148,9 @@ done %doc %{gem_instdir}/examples/ %changelog +* Thu Mar 23 2023 Mamoru TASAKA - 5.2.0-2 +- F-39: Rebuild against ImageMagick 7.1.1 + * Mon Mar 13 2023 Mamoru TASAKA - 5.2.0-1 - 5.2.0 From b2cddf8080202852c4a91fefecef42eae8c528a1 Mon Sep 17 00:00:00 2001 From: Mamoru TASAKA Date: Fri, 24 Mar 2023 14:00:18 +0900 Subject: [PATCH 11/42] update on F-38 also --- rubygem-rmagick.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rubygem-rmagick.spec b/rubygem-rmagick.spec index 9c5101c..1f7eb67 100644 --- a/rubygem-rmagick.spec +++ b/rubygem-rmagick.spec @@ -32,7 +32,7 @@ BuildRequires: rubygem(pry) %if 0%{?fedora} %setIMver 40 1:7.1.1 1:7.1.2 %setIMver 39 1:7.1.1 1:7.1.2 -%setIMver 38 1:7.1.0 1:7.1.1 +%setIMver 38 1:7.1.1 1:7.1.2 %setIMver 37 1:6.9.12 1:6.9.13 %setIMver 36 1:6.9.12 1:6.9.13 %endif From 3cefa41cee4547e1e3cec31121614da90e59e722 Mon Sep 17 00:00:00 2001 From: Mamoru TASAKA Date: Sun, 30 Apr 2023 12:22:23 +0900 Subject: [PATCH 12/42] SPDX migration Fix crash on ImageList#write with animation gif (upstream bug 1379) --- ...-crash-ImageList_write-animation-gif.patch | 589 ++++++++++++++++++ rubygem-rmagick.spec | 14 +- 2 files changed, 602 insertions(+), 1 deletion(-) create mode 100644 rmagick-pr1379-fix-crash-ImageList_write-animation-gif.patch diff --git a/rmagick-pr1379-fix-crash-ImageList_write-animation-gif.patch b/rmagick-pr1379-fix-crash-ImageList_write-animation-gif.patch new file mode 100644 index 0000000..39ea6af --- /dev/null +++ b/rmagick-pr1379-fix-crash-ImageList_write-animation-gif.patch @@ -0,0 +1,589 @@ +From f978440717dd859716c277d03d47f99bee0d9c76 Mon Sep 17 00:00:00 2001 +From: Watson +Date: Sun, 23 Apr 2023 15:54:01 +0900 +Subject: [PATCH] Fix crash on ImageList#write with animation gif + +--- + ext/RMagick/rmilist.c | 4 ++-- + ext/RMagick/rmimage.c | 10 ++++++---- + spec/fixtures/animhorse.gif | Bin 0 -> 25222 bytes + spec/rmagick/image_list/write_spec.rb | 13 +++++++++++++ + 4 files changed, 21 insertions(+), 6 deletions(-) + create mode 100644 spec/fixtures/animhorse.gif + +diff --git a/ext/RMagick/rmilist.c b/ext/RMagick/rmilist.c +index 5fa77551a..b4ef90f1b 100644 +--- a/ext/RMagick/rmilist.c ++++ b/ext/RMagick/rmilist.c +@@ -1193,8 +1193,8 @@ ImageList_write(VALUE self, VALUE file) + + // Ensure file is open - raise error if not + GetOpenFile(file, fptr); +-#if defined(_WIN32) + add_format_prefix(info, fptr->pathv); ++#if defined(_WIN32) + SetImageInfoFile(info, NULL); + #else + SetImageInfoFile(info, rb_io_stdio_file(fptr)); +@@ -1229,7 +1229,7 @@ ImageList_write(VALUE self, VALUE file) + #endif + + // Tell WriteImage if we want a multi-images file. +- if (imagelist_length(self) > 1L && GetMagickAdjoin(m)) ++ if (imagelist_length(self) > 1L && m && GetMagickAdjoin(m)) + { + info->adjoin = MagickTrue; + } +diff --git a/ext/RMagick/rmimage.c b/ext/RMagick/rmimage.c +index 7ad85f5c0..86a0ee12e 100644 +--- a/ext/RMagick/rmimage.c ++++ b/ext/RMagick/rmimage.c +@@ -15804,6 +15804,10 @@ void add_format_prefix(Info *info, VALUE file) + char *p; + + // Convert arg to string. If an exception occurs raise an error condition. ++ if (rb_respond_to(file, rb_intern("path"))) ++ { ++ FilePathStringValue(file); ++ } + file = rb_rescue(rb_String, file, file_arg_rescue, file); + + filename = rm_str2cstr(file, &filename_l); +@@ -15899,21 +15903,19 @@ Image_write(VALUE self, VALUE file) + // Ensure file is open - raise error if not + GetOpenFile(file, fptr); + rb_io_check_writable(fptr); +-#if defined(_WIN32) + add_format_prefix(info, fptr->pathv); +- strlcpy(image->filename, info->filename, sizeof(image->filename)); ++#if defined(_WIN32) + SetImageInfoFile(info, NULL); + #else + SetImageInfoFile(info, rb_io_stdio_file(fptr)); +- memset(image->filename, 0, sizeof(image->filename)); + #endif + } + else + { + add_format_prefix(info, file); +- strlcpy(image->filename, info->filename, sizeof(image->filename)); + SetImageInfoFile(info, NULL); + } ++ strlcpy(image->filename, info->filename, sizeof(image->filename)); + + rm_sync_image_options(image, info); + +diff --git a/spec/fixtures/animhorse.gif b/spec/fixtures/animhorse.gif +new file mode 100644 +index 0000000000000000000000000000000000000000..1065435c3ccdb0d6c3db52e5b1b4596d0d38b09b +GIT binary patch +literal 25222 +zcmagFbx>P>80DRW1QOgG8rL!6le>SQmCZc +z-|o)r&g?t$KJ%SBb7!vnd(L^zM_E-#Qp!dIcmnta_-{o19T5>n0Kie?-w|>AH~Ig~ +z+}zyXzkmPdBmd{Z^Z*7!|J^cS7?fQc<@{aT?HzpJg8X7|+hDk9fP*hw$HmFt!4JUn +z7f(ykKwn-~M^Ttx5DWP49p3*w^WT2~V2sX;YQt;Ei}``S)|{#KE+x+O&F&XNUcB%8 +zJU#?9e+~QkcNp!Z!b_VrUFkF9E?v4<>!;Ra*0R|c@b+`aoBh@x4gSJ+XPqJQo&z7Q +zdc(9@cD~*ZhQIsz>n}1QGAcSIHZDFPF)2AEH4T-Xk(rg9lbe@cP*_x4Qi?7suc)l5 +zuBol7ZzzR98><1pmeyn#ISvqq0R|Wv=t_VBAU&_KfE{!=Lqk0yu`u8?5C*~mgRubb +zsDbl<&c$d5aBJpdYa2)d*#}@BMUS0>SH9mJl4E~uzlqv7XB&%~1HB0cU?Ar)X-Hnv +z%^Ot}6keG~%qt(U-|GShsU*yPzs;_18hko)UTN9e0gVLs%>YE_VsBUCE%A +z(@cVRb<4JXvmcM$3BM!bT1^&3D+1}o>d1HJtDRzjYq*}=L-kB;B{q(_!z+OzYY~6g +zx-~$73L8H7VD +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 +z;dpWQZ(Y8DR +zWa)noGnPV=1oml8;4eAgs>4VdI-6JhL7?wK2@|n#pTrX;?qhTgLB;wubDPQcVA8oW +z5toCcRce3uk{6?wf6aB`4mBuogrsg0h~wqEA(6@gU?Xk^?cWouOs87j$a$-Xl=-+^ +z-h(WCynmS3$K0p=3W^^lXXM?tRFXvD81jYd3mMm4dQ0 +zbc1f)_wi}hhjENtd{d)7hHPnU3F5Lp3=g|9H1;#dV3}(BGN&q;(g4AL_)OJ(F8>@- +znFO$Wg%XG+OSDyYxlB%6!X-<>i#hNNuW~v|=t>V4Ev}aU{;m*Z91NE4%T|FaUz}y9 +zbu-zTn!B3hs14)mCgeDe<#;~ic+uqgz_>{M*^d8hKX@Sk4gdwP|NqZQm}i(wMf_(a +zreRRd1Y|qnKPzD%>w;p%0n1tU$kO*N{j(B}!R--Phed4oVRTs5>diY}S;6Qghi_?g +zH~`Y3Nk^2>n7+-*BJ?by+6By1KKA +zQ(78YP-oT_1%meWIu1o;cTdmI_T%VJM5TqLyjy+OJi9pq!vU?e6&Joge6w}jse1Hb +zu>RB9#>rJ28@^FLVIUm+pygAvk3d97K3N +zs)Dr$kQC;-o@SB3b@>bv1WfJ>-QSa8hriq^q=tW(DU_F_ZSX=TGQO&#b#QmGrd+6y +z{K?RO)Zh>8J~cx +zm0?gBGuyuIpsm#y)Tuf#;Ai}~9grm)5{L9PlcsnTZ~~jROL8^C +z;h&QcTh6rgHmyZf6(r)Iep>c2Mi6QCFJ!gT`n*r+_mndPKJgc^Zz$;>Q8#~$ne5w7 +znc;76hCrcS?m5xR#>O3Xiy_*zEd&FbwEoho4vnJa1;gel7`PL9344MU+gPR0!|BB# +z&K|j1qmS(yb@y7l0rA#*&XR+LLfO~LO6u9sJ2I6Dtv)okt!l18(~%WvlRWd?Z&`VS +zn$OlL+Zq~arE#2Ta3{#^oRCOD&Q^&DEUV1q +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 +zd)mDqXO;4RdIVO&FUoYD~0*A +zXci=YSaNBFFH80v^9lz)tZ~~UeoAxFDxT3SaIMasiL`8UIA+e1%&tuFky~~s7Fg~) +z6;LanR^lFjlXB+j)zh5lf6_cSMQRG-t_r3tfZ%0|I-4il+U_b>FKbJcy!tV>hWn6aftywv^(R^)uen)&Byht5 +zk6UV)nNCB$)$`1tel3IIQWU&yXm~sb&$4uYiC(tm{XAZ&nAl|?SB>8? +z=xCDybq+vYixuH<&qTUdt4v7Kd&ha1~SI@R1LHozpcray!qo>;3AN)-ERBA+`x%ZurGvU+9K;l!{*1QfgjE +zr`Q)7rS*x)3@y*|D=*_v1JqK5m2fTm{KD%NrtpYnc{}UCR4@mAm!n&(bA7kJ +zF@QOW5M}rn6Kqn+&e1y{VGqsdhn7&V>Ck0QAZ-gZj-vx4pkBS=sw$4}lhTFmp +zZDC_9&rMTxDaW%!H@EoWU=%u+8M#|$0P#*`EDF+ZIm7hS!t*4QGUCEm31QXTrd$bp +zMxWs=`g1Rm(PAF1A_eFxc2=4*ssx${zmqU_iDzXCHZYCH-`s7)k5rZY63a`_{WB6u +z`TZ|%R+1jTkULa91MBF=0>|tGruBM8o +z+vq3!=YmZBz!J>BBQ-lk9nqNEN4cw2viYnl`PKO42>HrN%Al!YPiWxN&xz!p5BQB! +z<7=b6PO?!2t3h+b%BlmgMlDPo+FoCRo;0}z&iY50F{ahqcF9Z5aN|@=ayHs(a+<5d +z4TZ{ho3u7F}i5V!w1JO=ma?VNh6a7{#ml7^Zx=4D{P6Uj(e|8T!2zetgSkEIhroPmmJY +z^*O-F{{zLB>}hk}UPiG&cC&ihuZA0|?@_(aB45lR2R3AevEEG2ehJ;ci+x8K*e$OX +z&8X6;1{C26du16TX1$ZsTdW<7lD$H0w>99YwYKKGjEtf^pB!*llk%>>^8WL%2Mbg8 +z;qFj3pL@%W{lo#c*6z_N{vyq+YxzW-&5oa;S+1iAcRv#&v4*EtZ;SzOnvzp6bS?8; +z><#tAcZ#(&(MAA8BFU_odV9u$TdbSI$>^TXS5ML8S;gtVp+sWe*?KqNohG&l#i})! +z%p8m2Da~x9J19z@9b^2d*25!7O%H53Cwm;$H$hG(Ixg%M8EaONwo{iCnsTYs +zs9r2gSk$R?=(CMsOsxPmQOG`<6NrE&C+}{_Df>PkMgdonO2rUMJkM@We4G_U61G@c +z)PmZTSiS1bi6NlBNMEU&^!N9Q>70(oJ@1KRe&pk#yl5c0Z|NS}em|qi`Z|TE&MT@* +zK9y54QfRED>)xc{VJ`JqLo_?ori;Z^f3Hp#>zskCnoFY>BG|WL-x>eV{6dxz00!b9 +zbD%@SChriv$BdVw41;2)tP5Bw2NTA^2yeUKpWp;rg{0Ex25bo6Zyxp%*~| +zkW-nJMe2merbPD{v&t=eeUXm +zTZ54_2o?-v)e{Px+#h;$TIm1um{@F+S=q|lmAcFZ&T6STVl>Y#sff1Dqf`r$rN5d8 +z+>*eOQC2->h71MzFcH({oZ@q4Fx=@fKahmQ`hmZ;3w2`i5^)mr+=Z|l8o84Q6)LMo +zQ3c6P9%G)giPBLb$t~p2r(H_U>Tb!AuEv8pY~OhM7yAW +za4vD6Gh8Uh*S<|uN)m<}>9Qw5Z5iZ#VjIKLMU>FXY*QYWQ~NBtmpMVgNJ1{^z4PXC +z?nSPjn3r+xK`BHoM4tDwce?3OBd8S=igt^@^B(^Z4Hd~$3JZ;!KxPC-9jRI- +zfpbSj4wGjwDe(W~@&D<324K(stMe1s9RGKi<=HdO%T)>((~)un4RLjh3CN@jyx)H2sjPH$4of9r&->!)_T8 +zsu~;;N&8AX@n5xv=2eOp2&V3A&LtXCaQIs;ReF6M#?5 +zqGpp2p-ucch)xjssTlzALolc-a{!X)D+#fNGxyiDN2X`_uokPqSV97o@*OoE6#)0& +z;5_x9#4Wy83a)Bw>6ROKHhAjTKKHx|^`si@M;~v$P;g|*PwBj!r;V*Bl!_?v+6Sly +zmD@Ee9*a@9!|*5;or^-cz}mDzZyCQt#1k-+Q24!OSW^J)sLCvLrt_he=vR@kQ}Q@8jmb@ +zk4o*Vh|l(29+-MoA`54J?8o5N1`;u?3@RVc)uLmVLViV%AuKP#dQFW%sV2p-cZeEW +zS6*B%0BE#Nl2VK5CEHQ*!IBXmRXXGQl+%-+CSVj^K$Y4{MXM}8qH6W%T82h=d?JUg +zt$|fGR>X*T&QjT^Mea=_*irvFMb$C?sLVx6*-h;mw)uXaEibBc}tb!u)bf-X!&w%lTpelWTreha%!u_G&&^u +zRRt$hsjiy&hOHvK{*E)g$)~nH-8tz;@IaD+m +z)yj$TodOlQv%bAck2t2Fjw2L#32)*6w?3+?km$+Ub5PH +zjH&cQ(*VB9EZOJS6voC=K4Z;bB&gzlfX!-VkD*RP3lzqhsb4B< +zR`_4bF1v|&ephyXfspFxz@byLH8wYf6?C0YDfvbG8miNyX}W@KNv*i3i35c`p58dvjH?wgAs +zysbYD+oiUgCAk%pr81T+tSst}bdZ0K2gSSzi$L;+v?Y!BzQ<1r8frvF`(O>|6W~%a +zKCQEcMUItFvnr(1Sx=E`0P)g)p3uIQO-lxnGr*(33hrp6|J@mu79mL7c3KF6XR~XJ +ztvaJ7jU9fn_#t+c`E}7tLhQG_aw40~GkT6QDStS(pArIygIH4%h4xWgPO7R-5AxZn +zwgi;(MuKKPNu!Q{?iGSh=c=;)B2y+b13@Eh&6*689Jc_pHBUFuGUY-cDL};ldx8NfoTeewuIHH5Rs6#QmD6#6`md_(kjUAq@+Uj)i +zg{CF57Vc2~rZCX{qvP`d!@Bdn_Fs^-Z{}^PWBNW(tn^CRoM}d?4<470zIJ#M~iN{4cagoQiM9EIm{8FkJHkB5X-IkLa;eI;;=X4Iwe|!KBzBhCg +z6?!6exqlweI{|-se8sNF#V$rR(O&45%BMa<@5H992l4UlEHs@Xq)}n+R!pL4_(%l4 +ze`ft8azh1YnDaD2G3SqflOeD5`r)M5F6l(p&b6G#`kYbJb?b-s@Jhwc^unB +zp6*8}(&Z*$?2o@OrGJ4GF4n)TzF}l+9aDLp-p0tIA$zeKmiR`MPh>j*PLeBJJgs4X +z!sq;j_G)ej+rD-;HFGk2#jm#AwVOpg7Erqot?kub(`Ks5_9OESr2Ev`O3rLdrnvv+ +zMm78GHe=*@;Oy|E?olbl=HZT`aVrTvTZFs(O|s_Tyi`4Z++Z0j_VE58`czr}Xy?2s#b1ETcJ +zGLW{apZ>){i>CxUJoosKF1^x{azhetX`Nv;)-lH%KW=$@RZ_Y5_FC21t`JWOesq;_ +zF!V5f$aIP^xX9frs_JzZYXX$Xb2Ii-jST3t`GACk`iU^BWgSbtcC2B{nmzB<(hz=@ +zO7rwxkMnZfFlNO(kgfg;m)ElqH$C~)jHS%K?1NuZ7=$Ae^tEHRuz+;gveY>*eXwNv +zUw&_JU>VJh%+TeB`QTg15IdKe?RGHjG*K49EvJZ?0}pmk +zZ`VMR65cY}_%kyGm*W%GO@64XY3v#Ad3X#ZsVLuB6O!&VK>lhhOp&O2SL*&Mt$NDs +zps_*Xse{bwzRNSUJF=Fr69);QPh&==Z5ZpyuGT-_SOv?uh=)gBzl#dFVpUif97Mi- +zUJS-;?}7Q=WX`yZwl5?hs2NF_rEff1ra%L2%nv!R3i3yPZ-IV2T-{W39yq~VT|v0x +z;ru#OCU6O!MM(K6G962qjP}E1 +z#8W`v(OQ&@b+mC7?qu#O6eS!-I3|BFM*Lo>4aeUP!4}hsx6FZmNJ98soQeu3NC+PE +zh$KRWnD~cd?2}dpRDcrUcx+;8U?nL8&}*sUY_YP4vwMx@Y6~YMQ8i_vA-j*q=!Fz(imSvru{{WfZ|a5qe#8JM +zQgM^qy;n%wmnfPfYE%VMu0o8cF<%i(U_%%xNRmFgPhPCG^ud8hb-a4sO9YS*PU#A; +z2gE;04--bgK`M}jX=-y$DsWy30vY#}C6+-lP0u>Ik(1WaIY|haCaFxVE|#Kw9gH-> +zv8r~!{**X&o#2H|Ln~ORtE7px#xdVJ>ZV(KfRevC!@Z-*s9Beph)3PAgLhOiEPa_> +zD3P4`8M(fxJd)V>5oS`HnZ6&N3J1ZY5RS^j-qLl6GBYXtr>Xd-hg|EDS%*DZ;SNOV +zGg*%oYdU}+|l-xkoBEOT#@JYN?7`9rRYv0*MszaAx+9Fa%iqG(}C>AG1CNbF8K{XDuYNE+eiFT`}}P{ZlDcge;og#r~*L%OI0gd-j&){Na1H3 +zLQdw91fcI( +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 +zk(pU;7!(@|K-?edj +zJ^p*gkr0hwI6nSARrSg}VR8ECtAtENm_4X~>^@sjM3_OOfXwi#`UmXC- +zx;*2qROiP9nk_lU(zO|Lns&?GwR50ANByeAix;VFK$VX4<-W<9l}CsaST-?waRRM& +zdX{*9UAIA_QnHojisNRa!n1V!dsbZ8Ac~wHo7m~-V2c@os`Q8SG(A^7{YQD?4tpAj +zT{vrXtbcE@qo7T3k9U{67>CWbiiXe8_^3ln>`f(&P3veMpQ`y=y=G=Fo7QYeeljqd +z3l3EXZF_H7Zeu{_R=16Qt=1XI-52%E>OIWLxL|yKqPQo&&wuX9RzIHhPi9H4ZSwO+ +zX|%-xU?cL9%hbG4zMCrng%by{s_2HQ1gd=Y$$;N~zg=T8kiaJL4D;|MhxCnC_}o`? +zi0|X8dp2B#8~d(bRVwv($lg=D1)f<>??g!xEHQbwZXz_}nK6pi2?IrvWwfSwHa1D{ +zbQ9)CVaLpJK;!}SvK8rfXL}NR7;HI7kkF|zoqMnLqeQfr>1L)*xCEP=hFKkH4y?p) +zCg;K4*}+C}E@&b8`AIoL{#$DQ6L)ZBmbImOb-Es#q6&Ir`=F%PCc)7DOs|rb~C?hO%op>j@Q?>p9dG*ao}!3FRC-ug?ch +zbC*~%htxD@EcL@c5FN7VChMHChUB83W({a3jNbN91H*b*BRlGS2ydur*)gw2zvd3K +zc6~eFNo~o3$Ft;pi6E*}Mv#uX`gF5nib3*N_kXl;mS0gQ;NG2Jf^HbPVE}=lTL+}2 +zySqz5Ivj@XP6cU(?hpYfX(UxrNu@wdWZ#k1G5e_O=A@Z8TJi@m}R +z-6jATs4y0Q%odRcbPy4DY4K0BT0iocrFvw1iCV +zqjWS46ZXx-8(v1#Q&3o2LpN`(SRq`cmGg3foVNWt(QA{^vDZ4n2=#P}SWPEE2m&qX +z8uNQgz~3N;V#>jwE)T*hHy7AWWj6+Qc8W^03F(sPAx!^-clw5FCLC)si{BhP2gwnK +z$IIUkNNU{wm0PqK*Fvc5?n}6*aM{sE7S-EA=Ki7OLVmhprp2U#%Q}y(V*JZa$uj&E +zld%5iAH4TzUr7V=!iQQJJrnd=$zw7b!+(3fFQ>8%^7Q7S%h`!CE|m9$U+eeZ4m{Vx +zCtJ<0XPx*?WXS{2C(5_M?XT#YJcTbi3;ww%l+2LTXELk+&uVw~P?iHozz1)BsI+C8 +z(olqE@3Dc^&Fj+p1YBn|$^}WXK>Uh)vMXz`*EDLQi~+Mj7LRhIjf*l!O^59i9~OHn +zYg9uv7DG0~_Z;*Qe6{y#85aO+!5BZ9u?} +zMvrE+4&O+9)RX)La7Z>Uiec1uA`hV1gDUJ!+~*Vx`!rRha)eBITBDsIr=a}x@013z +zW`W7{44x!5F+hEg?bz#H&D$O)5mzm0e4j>Dh3E+A?R}NU$4IR@KGmQuFl-9KSSc!( +z6B%z%sR9r=3q?tCo861j&eXd?(hRR-o$oGlf7K5vKy6AA-=f95#7Ci1d3on^6r_YM +zP&$Trhq4yCUQXh+sZgMJzew)3wj1lPIkBGwzX<%+%+uGH$LzwO=;V8)fX(O()ytLp +zjOMiRnN{PF@7r=ke!0O#17l!3Vg%F@N4)r-zjC6>>f=>JlZpk#u}NB8*_bA{q=jJ; +zZk*Raik*js=(oYun>|6IcmoAhzLZPS2x5!&3}ZBFh(Of`-c%f~bkb`P9VUjIhWlp8#DAK0NU_mqCs^S$;Mt8{TzD{NhZGq*JsT6a#37t-!rFkPSUGkk6-n>VMq+T8yp38u%m*Wg{<@BTDw~%#E^Q$ +z2z+Cl|BX}p989dc2wq9Jkjc6zQyub`!FWvya+&&t8XmG_ev_%sanahL3y!}Bhj!UV +zY0bD=78&YhKIvo2Dd^QW2WKq`Hbb^F>WN_j@7Yo^4V# +z7vrjK>-5}F7qx}TKl^z}5TSRuei+qA8%Otr8H-CF%E~zRw%FSVY#|4KeZ+r&^cGk@JUrw=m~V&+GNjeEu8k{UkB6e +zM=tEW@$I=6ok%fWkMbzos`rt#)X>j|uC0vj?Z#(L)ls>5`lS84^U6Ji2CIeP=;`_< +z%C2Wc`S+aTUVFA&^?%X_&%%G_3z@DA#5(LEr+GdCB)&;^Y_zrbqQ{C?Lah4cDJ8Is +z?!ZsIYzifI#3>s~pKoT6bKV4#c#WM~dl`O`AxFP`ukLe-AP<^q09IYlp8Wy*O`rmZ +zV5`Uq`N?5uQGGt&vUArF1iS4pY8A5GYIOuz~&s(iXXN+R-JN$jvy(75hVde>qLa +zwy5f`dUgNx)rq6^Ah;pnL(w+6Xw)CM-e-Eybtv3HEUTZmIW5z#CVoFz$obzBc`ZfR3!S$wQ +z>GToWBnR&_d^q;(sZiP1%+Eh}KGoGdf^e^wCo;m=JkM0>1@D(BAX<0d$m!jCQ~v +zcN4PIgGsrl)7azars$g0<3<*vWn;*k*A!3N!?RrxG!T;0Sa*sJ;-ED!QE1Xfm=#{) +z3xAC|w~45?z$nItC)r0-349rc+cDbC;>i68QFbG2F*n%iO-?OW-oA6cj$(g+Vsx{U +zmgqIsvq3NYQ?-V25FDKSTwAuuzX7mmLXe$lW`t}b)wQ0 +zZ=n}^>Ce#ok!xh4hmZVrj53P?vXj!!+vtH68EpEIyL}|hZn5xe*5|e2XWejYPFj4v +z;#(Q($#znSZwOI1@j;OV5f9(*J~+ur2Fbeq<_>#)Ub?DNCX=knz)m*fIyKKxGM6S0 +zOrvtWrjp>FBWMA&87=;Lu3(D4s4ie)zJmq#o|BDy;XjII74zn(}|SV-$B-!uo$;33nK?%l~u7&RCU% +zxK}vJZ+(&`{_|(QY3Jszd|1S&GLxthZ88+euS=9vHWucOxmj(KNJWKmJ@3K&V +zt6sjquW=i9Stuv(6%gxlYpLNjh`Jb=f5*E+u{nng82Yf+rQcf2HO&ZT2-Ei;PcQ;OPkS3`~r9&SX3Iw%mX+oSE0d$d$ +z;=Q%|qNNJCR35T3Xvn?Eq|c(3)Ah@Z##D$kx#iJ0Q^OA=mx(0&?>o^{b928|*J|1- +zW@<%KdxW`br3XM16v?jU+!cl!osY~D?ibs`kT}mPar?*Awn{n{{XJbPsjG%ma|@ElHL8GMDEdQ>zla)-n8{>6 +z?^1isZ;(dhfE=U>=>DV`^}OgSV;ehNukPJk3`R{T{f%340U%CR*|!Ojky2y`mxOGm!jdDu8Y}Aq`ohd6_B{rs +zs&DvgOlC3p!5s +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 +JcTST0{{S$c*;N1l + +literal 0 +HcmV?d00001 + +diff --git a/spec/rmagick/image_list/write_spec.rb b/spec/rmagick/image_list/write_spec.rb +index cd17fe94f..a90976120 100644 +--- a/spec/rmagick/image_list/write_spec.rb ++++ b/spec/rmagick/image_list/write_spec.rb +@@ -27,4 +27,17 @@ + expect(image_list.format).to eq('JPEG') + FileUtils.rm('test.0') + end ++ ++ it "issue #1375" do ++ # https://commons.wikimedia.org/wiki/File:Animhorse.gif ++ image_list = described_class.new(File.join(FIXTURE_PATH, 'animhorse.gif')) ++ ++ File.open(File.join(Dir.tmpdir, 'out.gif'), 'w') do |f| ++ image_list.write(f) ++ end ++ ++ Tempfile.open('out.gif') do |f| ++ image_list.write(f) ++ end ++ end + end diff --git a/rubygem-rmagick.spec b/rubygem-rmagick.spec index 1f7eb67..7367817 100644 --- a/rubygem-rmagick.spec +++ b/rubygem-rmagick.spec @@ -9,7 +9,7 @@ Requires: (ImageMagick%{?_isa} >= %2 with ImageMagick%{?_isa} < %3)\ Name: rubygem-%{gem_name} Version: 5.2.0 -Release: 2%{?dist} +Release: 3%{?dist} Summary: Ruby binding to ImageMagick # SPDX confirmed @@ -19,6 +19,9 @@ Source0: https://rubygems.org/gems/%{gem_name}-%{version}.gem # %%{SOURCE2} %%{version} Source1: rubygem-%{gem_name}-%{version}-full.tar.gz Source2: rmagick-create-full-tarball.sh +# https://github.com/rmagick/rmagick/pull/1379 +# Fix crash on ImageList#write with animation gif +Patch0: rmagick-pr1379-fix-crash-ImageList_write-animation-gif.patch BuildRequires: gcc BuildRequires: rubygems-devel @@ -27,6 +30,8 @@ BuildRequires: rubygem(pkg-config) BuildRequires: rubygem(test-unit) BuildRequires: rubygem(rspec) BuildRequires: rubygem(pry) +# For Patch0 +BuildRequires: /usr/bin/git # Due to test/RMagick/rmmain.c test_Magick_version(), for now # we specify the exact version for ImageMagick %if 0%{?fedora} @@ -58,6 +63,9 @@ Documentation for %{name}. %prep %setup -q -T -n %{gem_name}-%{version} -b 1 +#%%patch -P0 -p1 +cat %PATCH0 | git --git-dir=. apply -p1 + gem spec %{SOURCE0} -l --ruby > %{gem_name}.gemspec # permission @@ -148,6 +156,10 @@ done %doc %{gem_instdir}/examples/ %changelog +* Sun Apr 30 2023 Mamoru TASAKA - 5.2.0-3 +- SPDX migration +- Fix crash on ImageList#write with animation gif (upstream bug 1379) + * Thu Mar 23 2023 Mamoru TASAKA - 5.2.0-2 - F-39: Rebuild against ImageMagick 7.1.1 From 1d61f0d8c4b826f537bc64a826f2b9e385b4a4e6 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 21 Jul 2023 18:18:46 +0000 Subject: [PATCH 13/42] Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- rubygem-rmagick.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/rubygem-rmagick.spec b/rubygem-rmagick.spec index 7367817..05ed7c0 100644 --- a/rubygem-rmagick.spec +++ b/rubygem-rmagick.spec @@ -9,7 +9,7 @@ Requires: (ImageMagick%{?_isa} >= %2 with ImageMagick%{?_isa} < %3)\ Name: rubygem-%{gem_name} Version: 5.2.0 -Release: 3%{?dist} +Release: 4%{?dist} Summary: Ruby binding to ImageMagick # SPDX confirmed @@ -156,6 +156,9 @@ done %doc %{gem_instdir}/examples/ %changelog +* Fri Jul 21 2023 Fedora Release Engineering - 5.2.0-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + * Sun Apr 30 2023 Mamoru TASAKA - 5.2.0-3 - SPDX migration - Fix crash on ImageList#write with animation gif (upstream bug 1379) From 86d04085ad4d5211f1f39b0b71a63fdec8a6cb22 Mon Sep 17 00:00:00 2001 From: Mamoru TASAKA Date: Sun, 23 Jul 2023 22:25:49 +0900 Subject: [PATCH 14/42] 5.3.0 --- ...-crash-ImageList_write-animation-gif.patch | 589 ------------------ rubygem-rmagick.spec | 15 +- sources | 4 +- 3 files changed, 7 insertions(+), 601 deletions(-) delete mode 100644 rmagick-pr1379-fix-crash-ImageList_write-animation-gif.patch diff --git a/rmagick-pr1379-fix-crash-ImageList_write-animation-gif.patch b/rmagick-pr1379-fix-crash-ImageList_write-animation-gif.patch deleted file mode 100644 index 39ea6af..0000000 --- a/rmagick-pr1379-fix-crash-ImageList_write-animation-gif.patch +++ /dev/null @@ -1,589 +0,0 @@ -From f978440717dd859716c277d03d47f99bee0d9c76 Mon Sep 17 00:00:00 2001 -From: Watson -Date: Sun, 23 Apr 2023 15:54:01 +0900 -Subject: [PATCH] Fix crash on ImageList#write with animation gif - ---- - ext/RMagick/rmilist.c | 4 ++-- - ext/RMagick/rmimage.c | 10 ++++++---- - spec/fixtures/animhorse.gif | Bin 0 -> 25222 bytes - spec/rmagick/image_list/write_spec.rb | 13 +++++++++++++ - 4 files changed, 21 insertions(+), 6 deletions(-) - create mode 100644 spec/fixtures/animhorse.gif - -diff --git a/ext/RMagick/rmilist.c b/ext/RMagick/rmilist.c -index 5fa77551a..b4ef90f1b 100644 ---- a/ext/RMagick/rmilist.c -+++ b/ext/RMagick/rmilist.c -@@ -1193,8 +1193,8 @@ ImageList_write(VALUE self, VALUE file) - - // Ensure file is open - raise error if not - GetOpenFile(file, fptr); --#if defined(_WIN32) - add_format_prefix(info, fptr->pathv); -+#if defined(_WIN32) - SetImageInfoFile(info, NULL); - #else - SetImageInfoFile(info, rb_io_stdio_file(fptr)); -@@ -1229,7 +1229,7 @@ ImageList_write(VALUE self, VALUE file) - #endif - - // Tell WriteImage if we want a multi-images file. -- if (imagelist_length(self) > 1L && GetMagickAdjoin(m)) -+ if (imagelist_length(self) > 1L && m && GetMagickAdjoin(m)) - { - info->adjoin = MagickTrue; - } -diff --git a/ext/RMagick/rmimage.c b/ext/RMagick/rmimage.c -index 7ad85f5c0..86a0ee12e 100644 ---- a/ext/RMagick/rmimage.c -+++ b/ext/RMagick/rmimage.c -@@ -15804,6 +15804,10 @@ void add_format_prefix(Info *info, VALUE file) - char *p; - - // Convert arg to string. If an exception occurs raise an error condition. -+ if (rb_respond_to(file, rb_intern("path"))) -+ { -+ FilePathStringValue(file); -+ } - file = rb_rescue(rb_String, file, file_arg_rescue, file); - - filename = rm_str2cstr(file, &filename_l); -@@ -15899,21 +15903,19 @@ Image_write(VALUE self, VALUE file) - // Ensure file is open - raise error if not - GetOpenFile(file, fptr); - rb_io_check_writable(fptr); --#if defined(_WIN32) - add_format_prefix(info, fptr->pathv); -- strlcpy(image->filename, info->filename, sizeof(image->filename)); -+#if defined(_WIN32) - SetImageInfoFile(info, NULL); - #else - SetImageInfoFile(info, rb_io_stdio_file(fptr)); -- memset(image->filename, 0, sizeof(image->filename)); - #endif - } - else - { - add_format_prefix(info, file); -- strlcpy(image->filename, info->filename, sizeof(image->filename)); - SetImageInfoFile(info, NULL); - } -+ strlcpy(image->filename, info->filename, sizeof(image->filename)); - - rm_sync_image_options(image, info); - -diff --git a/spec/fixtures/animhorse.gif b/spec/fixtures/animhorse.gif -new file mode 100644 -index 0000000000000000000000000000000000000000..1065435c3ccdb0d6c3db52e5b1b4596d0d38b09b -GIT binary patch -literal 25222 -zcmagFbx>P>80DRW1QOgG8rL!6le>SQmCZc -z-|o)r&g?t$KJ%SBb7!vnd(L^zM_E-#Qp!dIcmnta_-{o19T5>n0Kie?-w|>AH~Ig~ -z+}zyXzkmPdBmd{Z^Z*7!|J^cS7?fQc<@{aT?HzpJg8X7|+hDk9fP*hw$HmFt!4JUn -z7f(ykKwn-~M^Ttx5DWP49p3*w^WT2~V2sX;YQt;Ei}``S)|{#KE+x+O&F&XNUcB%8 -zJU#?9e+~QkcNp!Z!b_VrUFkF9E?v4<>!;Ra*0R|c@b+`aoBh@x4gSJ+XPqJQo&z7Q -zdc(9@cD~*ZhQIsz>n}1QGAcSIHZDFPF)2AEH4T-Xk(rg9lbe@cP*_x4Qi?7suc)l5 -zuBol7ZzzR98><1pmeyn#ISvqq0R|Wv=t_VBAU&_KfE{!=Lqk0yu`u8?5C*~mgRubb -zsDbl<&c$d5aBJpdYa2)d*#}@BMUS0>SH9mJl4E~uzlqv7XB&%~1HB0cU?Ar)X-Hnv -z%^Ot}6keG~%qt(U-|GShsU*yPzs;_18hko)UTN9e0gVLs%>YE_VsBUCE%A -z(@cVRb<4JXvmcM$3BM!bT1^&3D+1}o>d1HJtDRzjYq*}=L-kB;B{q(_!z+OzYY~6g -zx-~$73L8H7VD -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 -z;dpWQZ(Y8DR -zWa)noGnPV=1oml8;4eAgs>4VdI-6JhL7?wK2@|n#pTrX;?qhTgLB;wubDPQcVA8oW -z5toCcRce3uk{6?wf6aB`4mBuogrsg0h~wqEA(6@gU?Xk^?cWouOs87j$a$-Xl=-+^ -z-h(WCynmS3$K0p=3W^^lXXM?tRFXvD81jYd3mMm4dQ0 -zbc1f)_wi}hhjENtd{d)7hHPnU3F5Lp3=g|9H1;#dV3}(BGN&q;(g4AL_)OJ(F8>@- -znFO$Wg%XG+OSDyYxlB%6!X-<>i#hNNuW~v|=t>V4Ev}aU{;m*Z91NE4%T|FaUz}y9 -zbu-zTn!B3hs14)mCgeDe<#;~ic+uqgz_>{M*^d8hKX@Sk4gdwP|NqZQm}i(wMf_(a -zreRRd1Y|qnKPzD%>w;p%0n1tU$kO*N{j(B}!R--Phed4oVRTs5>diY}S;6Qghi_?g -zH~`Y3Nk^2>n7+-*BJ?by+6By1KKA -zQ(78YP-oT_1%meWIu1o;cTdmI_T%VJM5TqLyjy+OJi9pq!vU?e6&Joge6w}jse1Hb -zu>RB9#>rJ28@^FLVIUm+pygAvk3d97K3N -zs)Dr$kQC;-o@SB3b@>bv1WfJ>-QSa8hriq^q=tW(DU_F_ZSX=TGQO&#b#QmGrd+6y -z{K?RO)Zh>8J~cx -zm0?gBGuyuIpsm#y)Tuf#;Ai}~9grm)5{L9PlcsnTZ~~jROL8^C -z;h&QcTh6rgHmyZf6(r)Iep>c2Mi6QCFJ!gT`n*r+_mndPKJgc^Zz$;>Q8#~$ne5w7 -znc;76hCrcS?m5xR#>O3Xiy_*zEd&FbwEoho4vnJa1;gel7`PL9344MU+gPR0!|BB# -z&K|j1qmS(yb@y7l0rA#*&XR+LLfO~LO6u9sJ2I6Dtv)okt!l18(~%WvlRWd?Z&`VS -zn$OlL+Zq~arE#2Ta3{#^oRCOD&Q^&DEUV1q -z1Jp9I^u279Lw}IogwJ5wRxu|#0II)AGepkP-^1FnpKb&;Rx6yu3Qoms6_gzyWsb=sjPRuvOa^qK&RDf*F*VpC-3s255 -z^WVcZ(OM-b6{Y5j#A()7d)L1J9}DE;*->$Om1cw^i5N2`>N3j~RbVo@^(>HSn8{uh -zXBqIEUIq0kI0{LM&s3n`OWgZWJ?aBIrzdAoxLR~f`hctq|GC{r5PXr^dV0cCZjuFD -zd>UZDW2xb&GS1O;7+FXYD}p^DD#BYY2H@P~+ch5NX2)k@s*lBt4%$Yn|5k>Oca~G< -z`pbFLswJ^F6Tq~G(}nu4U)+sF_t-KO_|FhhI`C@Zf8ZQrnY2sI^qQEluK=RL(jm%6 -z70hhRgL;5vCj7EYY+7bTDkva2DGN<{m|p6QFHE^yW{-cDHv{k_WOQ0B4|}f*M78?Z -zne$Xp_v9t>rrJ|lt0d!Rz||EA_p`f-R)iL18CAYyWWBav`d=vulmD -z@4wF4s%4PH=g^c{N9L}RAJL{?Pvdd{`2R?L#2=EquxZ61 -zHGtyAq>o49(wE2`RDIx1q$X9Zv=9=b7~JMiP?d;9i91#2(+}%hTT6OaeX6y&;`-)C -zwMy%1P~((+Mz#$VtG6)3^XVGmR37r698+z%iNXo#Vd73mx}y -zB@1XXD*WlKIJb}DXQjgyiRWu=|IN|kc(uV%XMp}Ied+uh9v8tb9$E8biO_flB+I(q -zd~e@CS3A757CF*k=szBkkzb7wM0N9^-F-VTYXY4Ffq_X)b)Cov3-YrAGjt5Ngtje1 -z{E4yqqt6=mzbl5%Q-_sOLe0D<}+N5S`dEbwQ+!oo?SWQLboVYPr0MF?lOrd -zUe;dkJX6a_71HA&$^b9hjZpi0Cq$Uck8LB=AwOg~3fa5tVrw}L8Drj#386VZq{SCga3~kx+`=ZAVYvcGA+UmVDU34Fr$I{KNqfX0? -zBf@A9i$HEe19P)BcyCSrq1U1nHAac$xk;#Z2V!&FHRACP2fbJ=V94pk+0~*6OsT9v -z#l5{bSmPVSa>xa*yRB=)sK@j0SiLl+9>DV;H_H*9E3fKRE7C%_AnNb6Y1Ss*Sppy2 -z+@*HX&@|tt^fK$~FqXzx^gBQN0GAOa2aCOKm>k`D)#4~Ch6i;cr7k346Q`)pH9Ra{ -zntA0Ce+?r>vp>&8Zl~4V`t9!(k*?lLqqpgbAC)|tO*;1YOfnBuV?W7FwU*v9F$=O{P9L#M -zI@4MiG-%;776hQtGh=aq$%?``a`x$)V{=4qw~e0gkytIP$$RP0pKo=(YzhHfL3n29 -zMQ^K;1}NajpZh=FcWVhQUT|+aYHY=!DU7lEhj_BoTuvLZLtX~(LsilSK{>d0Fs~;U -zwr;0JJ+x;FEp*KT>hQ0x_X2!>@A0IGviLY<1@Fst`O;q`4(LB6Z_{iQQL^h>!ZSA} -zQqpGce8Sn{kK;mN#CS(?wRhUN7xVV-7k?rY-ef~}N2S}|?YrlIv*1u4UxXl0qCevo -zdh1^!FIytpSk$dt1pkz*cXAUc=As5iZ6>foJpLu%X3MS?Z8^PCVu7Y>FcfsUBTpDN{2np -z%#x8J``V5m*xTITVO?Rzno!?cE(j2R4#YTAQJn@{4qtVeC1Ba&_5s%tw80|w0%b*fd@tQ~v -z;*R}ZMdJqfmWLH@NMjOVtS_*_P`5<+QzqOH$QwrNS*KtjX__%;l -zD{1Rl%14vblc3bIywvmF)XUA(FZZce)M+=8X}2b6cR^|Qd1*g;(|&KJVeZoaG$@c1 -z3T%qP?o0i@bvgjR37`db{=YhXhD{~1j>heOMgE1@#DI81K&;VMrT-#-`&weSBv!Km -z8ny_{`Y-Z7h6AuTY={k5hqZGd+aCWS{|zZ#b})H7U@v?citGI^@{iQ;*Twz;&4o?`4MsZ&;P$M)>T0bO= -zDxt5ib9zP<*4w|(Kji;z;1y*3*+Ss#&aUXh%6^XR;Y;mn%$RYy%S(`}gCz~Jsd -zRLziB-${*adWU3HOUlZ$A#vVEY(vxbwqM%2-)(BF&Fer=r2BTb6juXJBYHy&383Un -zm}D3{E)=hP!9lMR(ez;yXv|F>uhDxWYzZ=3oj_4DjUoe9_vQ{P4F-TvGqt878NMq2k&JZuPB5 -zd)mDqXO;4RdIVO&FUoYD~0*A -zXci=YSaNBFFH80v^9lz)tZ~~UeoAxFDxT3SaIMasiL`8UIA+e1%&tuFky~~s7Fg~) -z6;LanR^lFjlXB+j)zh5lf6_cSMQRG-t_r3tfZ%0|I-4il+U_b>FKbJcy!tV>hWn6aftywv^(R^)uen)&Byht5 -zk6UV)nNCB$)$`1tel3IIQWU&yXm~sb&$4uYiC(tm{XAZ&nAl|?SB>8? -z=xCDybq+vYixuH<&qTUdt4v7Kd&ha1~SI@R1LHozpcray!qo>;3AN)-ERBA+`x%ZurGvU+9K;l!{*1QfgjE -zr`Q)7rS*x)3@y*|D=*_v1JqK5m2fTm{KD%NrtpYnc{}UCR4@mAm!n&(bA7kJ -zF@QOW5M}rn6Kqn+&e1y{VGqsdhn7&V>Ck0QAZ-gZj-vx4pkBS=sw$4}lhTFmp -zZDC_9&rMTxDaW%!H@EoWU=%u+8M#|$0P#*`EDF+ZIm7hS!t*4QGUCEm31QXTrd$bp -zMxWs=`g1Rm(PAF1A_eFxc2=4*ssx${zmqU_iDzXCHZYCH-`s7)k5rZY63a`_{WB6u -z`TZ|%R+1jTkULa91MBF=0>|tGruBM8o -z+vq3!=YmZBz!J>BBQ-lk9nqNEN4cw2viYnl`PKO42>HrN%Al!YPiWxN&xz!p5BQB! -z<7=b6PO?!2t3h+b%BlmgMlDPo+FoCRo;0}z&iY50F{ahqcF9Z5aN|@=ayHs(a+<5d -z4TZ{ho3u7F}i5V!w1JO=ma?VNh6a7{#ml7^Zx=4D{P6Uj(e|8T!2zetgSkEIhroPmmJY -z^*O-F{{zLB>}hk}UPiG&cC&ihuZA0|?@_(aB45lR2R3AevEEG2ehJ;ci+x8K*e$OX -z&8X6;1{C26du16TX1$ZsTdW<7lD$H0w>99YwYKKGjEtf^pB!*llk%>>^8WL%2Mbg8 -z;qFj3pL@%W{lo#c*6z_N{vyq+YxzW-&5oa;S+1iAcRv#&v4*EtZ;SzOnvzp6bS?8; -z><#tAcZ#(&(MAA8BFU_odV9u$TdbSI$>^TXS5ML8S;gtVp+sWe*?KqNohG&l#i})! -z%p8m2Da~x9J19z@9b^2d*25!7O%H53Cwm;$H$hG(Ixg%M8EaONwo{iCnsTYs -zs9r2gSk$R?=(CMsOsxPmQOG`<6NrE&C+}{_Df>PkMgdonO2rUMJkM@We4G_U61G@c -z)PmZTSiS1bi6NlBNMEU&^!N9Q>70(oJ@1KRe&pk#yl5c0Z|NS}em|qi`Z|TE&MT@* -zK9y54QfRED>)xc{VJ`JqLo_?ori;Z^f3Hp#>zskCnoFY>BG|WL-x>eV{6dxz00!b9 -zbD%@SChriv$BdVw41;2)tP5Bw2NTA^2yeUKpWp;rg{0Ex25bo6Zyxp%*~| -zkW-nJMe2merbPD{v&t=eeUXm -zTZ54_2o?-v)e{Px+#h;$TIm1um{@F+S=q|lmAcFZ&T6STVl>Y#sff1Dqf`r$rN5d8 -z+>*eOQC2->h71MzFcH({oZ@q4Fx=@fKahmQ`hmZ;3w2`i5^)mr+=Z|l8o84Q6)LMo -zQ3c6P9%G)giPBLb$t~p2r(H_U>Tb!AuEv8pY~OhM7yAW -za4vD6Gh8Uh*S<|uN)m<}>9Qw5Z5iZ#VjIKLMU>FXY*QYWQ~NBtmpMVgNJ1{^z4PXC -z?nSPjn3r+xK`BHoM4tDwce?3OBd8S=igt^@^B(^Z4Hd~$3JZ;!KxPC-9jRI- -zfpbSj4wGjwDe(W~@&D<324K(stMe1s9RGKi<=HdO%T)>((~)un4RLjh3CN@jyx)H2sjPH$4of9r&->!)_T8 -zsu~;;N&8AX@n5xv=2eOp2&V3A&LtXCaQIs;ReF6M#?5 -zqGpp2p-ucch)xjssTlzALolc-a{!X)D+#fNGxyiDN2X`_uokPqSV97o@*OoE6#)0& -z;5_x9#4Wy83a)Bw>6ROKHhAjTKKHx|^`si@M;~v$P;g|*PwBj!r;V*Bl!_?v+6Sly -zmD@Ee9*a@9!|*5;or^-cz}mDzZyCQt#1k-+Q24!OSW^J)sLCvLrt_he=vR@kQ}Q@8jmb@ -zk4o*Vh|l(29+-MoA`54J?8o5N1`;u?3@RVc)uLmVLViV%AuKP#dQFW%sV2p-cZeEW -zS6*B%0BE#Nl2VK5CEHQ*!IBXmRXXGQl+%-+CSVj^K$Y4{MXM}8qH6W%T82h=d?JUg -zt$|fGR>X*T&QjT^Mea=_*irvFMb$C?sLVx6*-h;mw)uXaEibBc}tb!u)bf-X!&w%lTpelWTreha%!u_G&&^u -zRRt$hsjiy&hOHvK{*E)g$)~nH-8tz;@IaD+m -z)yj$TodOlQv%bAck2t2Fjw2L#32)*6w?3+?km$+Ub5PH -zjH&cQ(*VB9EZOJS6voC=K4Z;bB&gzlfX!-VkD*RP3lzqhsb4B< -zR`_4bF1v|&ephyXfspFxz@byLH8wYf6?C0YDfvbG8miNyX}W@KNv*i3i35c`p58dvjH?wgAs -zysbYD+oiUgCAk%pr81T+tSst}bdZ0K2gSSzi$L;+v?Y!BzQ<1r8frvF`(O>|6W~%a -zKCQEcMUItFvnr(1Sx=E`0P)g)p3uIQO-lxnGr*(33hrp6|J@mu79mL7c3KF6XR~XJ -ztvaJ7jU9fn_#t+c`E}7tLhQG_aw40~GkT6QDStS(pArIygIH4%h4xWgPO7R-5AxZn -zwgi;(MuKKPNu!Q{?iGSh=c=;)B2y+b13@Eh&6*689Jc_pHBUFuGUY-cDL};ldx8NfoTeewuIHH5Rs6#QmD6#6`md_(kjUAq@+Uj)i -zg{CF57Vc2~rZCX{qvP`d!@Bdn_Fs^-Z{}^PWBNW(tn^CRoM}d?4<470zIJ#M~iN{4cagoQiM9EIm{8FkJHkB5X-IkLa;eI;;=X4Iwe|!KBzBhCg -z6?!6exqlweI{|-se8sNF#V$rR(O&45%BMa<@5H992l4UlEHs@Xq)}n+R!pL4_(%l4 -ze`ft8azh1YnDaD2G3SqflOeD5`r)M5F6l(p&b6G#`kYbJb?b-s@Jhwc^unB -zp6*8}(&Z*$?2o@OrGJ4GF4n)TzF}l+9aDLp-p0tIA$zeKmiR`MPh>j*PLeBJJgs4X -z!sq;j_G)ej+rD-;HFGk2#jm#AwVOpg7Erqot?kub(`Ks5_9OESr2Ev`O3rLdrnvv+ -zMm78GHe=*@;Oy|E?olbl=HZT`aVrTvTZFs(O|s_Tyi`4Z++Z0j_VE58`czr}Xy?2s#b1ETcJ -zGLW{apZ>){i>CxUJoosKF1^x{azhetX`Nv;)-lH%KW=$@RZ_Y5_FC21t`JWOesq;_ -zF!V5f$aIP^xX9frs_JzZYXX$Xb2Ii-jST3t`GACk`iU^BWgSbtcC2B{nmzB<(hz=@ -zO7rwxkMnZfFlNO(kgfg;m)ElqH$C~)jHS%K?1NuZ7=$Ae^tEHRuz+;gveY>*eXwNv -zUw&_JU>VJh%+TeB`QTg15IdKe?RGHjG*K49EvJZ?0}pmk -zZ`VMR65cY}_%kyGm*W%GO@64XY3v#Ad3X#ZsVLuB6O!&VK>lhhOp&O2SL*&Mt$NDs -zps_*Xse{bwzRNSUJF=Fr69);QPh&==Z5ZpyuGT-_SOv?uh=)gBzl#dFVpUif97Mi- -zUJS-;?}7Q=WX`yZwl5?hs2NF_rEff1ra%L2%nv!R3i3yPZ-IV2T-{W39yq~VT|v0x -z;ru#OCU6O!MM(K6G962qjP}E1 -z#8W`v(OQ&@b+mC7?qu#O6eS!-I3|BFM*Lo>4aeUP!4}hsx6FZmNJ98soQeu3NC+PE -zh$KRWnD~cd?2}dpRDcrUcx+;8U?nL8&}*sUY_YP4vwMx@Y6~YMQ8i_vA-j*q=!Fz(imSvru{{WfZ|a5qe#8JM -zQgM^qy;n%wmnfPfYE%VMu0o8cF<%i(U_%%xNRmFgPhPCG^ud8hb-a4sO9YS*PU#A; -z2gE;04--bgK`M}jX=-y$DsWy30vY#}C6+-lP0u>Ik(1WaIY|haCaFxVE|#Kw9gH-> -zv8r~!{**X&o#2H|Ln~ORtE7px#xdVJ>ZV(KfRevC!@Z-*s9Beph)3PAgLhOiEPa_> -zD3P4`8M(fxJd)V>5oS`HnZ6&N3J1ZY5RS^j-qLl6GBYXtr>Xd-hg|EDS%*DZ;SNOV -zGg*%oYdU}+|l-xkoBEOT#@JYN?7`9rRYv0*MszaAx+9Fa%iqG(}C>AG1CNbF8K{XDuYNE+eiFT`}}P{ZlDcge;og#r~*L%OI0gd-j&){Na1H3 -zLQdw91fcI( -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 -zk(pU;7!(@|K-?edj -zJ^p*gkr0hwI6nSARrSg}VR8ECtAtENm_4X~>^@sjM3_OOfXwi#`UmXC- -zx;*2qROiP9nk_lU(zO|Lns&?GwR50ANByeAix;VFK$VX4<-W<9l}CsaST-?waRRM& -zdX{*9UAIA_QnHojisNRa!n1V!dsbZ8Ac~wHo7m~-V2c@os`Q8SG(A^7{YQD?4tpAj -zT{vrXtbcE@qo7T3k9U{67>CWbiiXe8_^3ln>`f(&P3veMpQ`y=y=G=Fo7QYeeljqd -z3l3EXZF_H7Zeu{_R=16Qt=1XI-52%E>OIWLxL|yKqPQo&&wuX9RzIHhPi9H4ZSwO+ -zX|%-xU?cL9%hbG4zMCrng%by{s_2HQ1gd=Y$$;N~zg=T8kiaJL4D;|MhxCnC_}o`? -zi0|X8dp2B#8~d(bRVwv($lg=D1)f<>??g!xEHQbwZXz_}nK6pi2?IrvWwfSwHa1D{ -zbQ9)CVaLpJK;!}SvK8rfXL}NR7;HI7kkF|zoqMnLqeQfr>1L)*xCEP=hFKkH4y?p) -zCg;K4*}+C}E@&b8`AIoL{#$DQ6L)ZBmbImOb-Es#q6&Ir`=F%PCc)7DOs|rb~C?hO%op>j@Q?>p9dG*ao}!3FRC-ug?ch -zbC*~%htxD@EcL@c5FN7VChMHChUB83W({a3jNbN91H*b*BRlGS2ydur*)gw2zvd3K -zc6~eFNo~o3$Ft;pi6E*}Mv#uX`gF5nib3*N_kXl;mS0gQ;NG2Jf^HbPVE}=lTL+}2 -zySqz5Ivj@XP6cU(?hpYfX(UxrNu@wdWZ#k1G5e_O=A@Z8TJi@m}R -z-6jATs4y0Q%odRcbPy4DY4K0BT0iocrFvw1iCV -zqjWS46ZXx-8(v1#Q&3o2LpN`(SRq`cmGg3foVNWt(QA{^vDZ4n2=#P}SWPEE2m&qX -z8uNQgz~3N;V#>jwE)T*hHy7AWWj6+Qc8W^03F(sPAx!^-clw5FCLC)si{BhP2gwnK -z$IIUkNNU{wm0PqK*Fvc5?n}6*aM{sE7S-EA=Ki7OLVmhprp2U#%Q}y(V*JZa$uj&E -zld%5iAH4TzUr7V=!iQQJJrnd=$zw7b!+(3fFQ>8%^7Q7S%h`!CE|m9$U+eeZ4m{Vx -zCtJ<0XPx*?WXS{2C(5_M?XT#YJcTbi3;ww%l+2LTXELk+&uVw~P?iHozz1)BsI+C8 -z(olqE@3Dc^&Fj+p1YBn|$^}WXK>Uh)vMXz`*EDLQi~+Mj7LRhIjf*l!O^59i9~OHn -zYg9uv7DG0~_Z;*Qe6{y#85aO+!5BZ9u?} -zMvrE+4&O+9)RX)La7Z>Uiec1uA`hV1gDUJ!+~*Vx`!rRha)eBITBDsIr=a}x@013z -zW`W7{44x!5F+hEg?bz#H&D$O)5mzm0e4j>Dh3E+A?R}NU$4IR@KGmQuFl-9KSSc!( -z6B%z%sR9r=3q?tCo861j&eXd?(hRR-o$oGlf7K5vKy6AA-=f95#7Ci1d3on^6r_YM -zP&$Trhq4yCUQXh+sZgMJzew)3wj1lPIkBGwzX<%+%+uGH$LzwO=;V8)fX(O()ytLp -zjOMiRnN{PF@7r=ke!0O#17l!3Vg%F@N4)r-zjC6>>f=>JlZpk#u}NB8*_bA{q=jJ; -zZk*Raik*js=(oYun>|6IcmoAhzLZPS2x5!&3}ZBFh(Of`-c%f~bkb`P9VUjIhWlp8#DAK0NU_mqCs^S$;Mt8{TzD{NhZGq*JsT6a#37t-!rFkPSUGkk6-n>VMq+T8yp38u%m*Wg{<@BTDw~%#E^Q$ -z2z+Cl|BX}p989dc2wq9Jkjc6zQyub`!FWvya+&&t8XmG_ev_%sanahL3y!}Bhj!UV -zY0bD=78&YhKIvo2Dd^QW2WKq`Hbb^F>WN_j@7Yo^4V# -z7vrjK>-5}F7qx}TKl^z}5TSRuei+qA8%Otr8H-CF%E~zRw%FSVY#|4KeZ+r&^cGk@JUrw=m~V&+GNjeEu8k{UkB6e -zM=tEW@$I=6ok%fWkMbzos`rt#)X>j|uC0vj?Z#(L)ls>5`lS84^U6Ji2CIeP=;`_< -z%C2Wc`S+aTUVFA&^?%X_&%%G_3z@DA#5(LEr+GdCB)&;^Y_zrbqQ{C?Lah4cDJ8Is -z?!ZsIYzifI#3>s~pKoT6bKV4#c#WM~dl`O`AxFP`ukLe-AP<^q09IYlp8Wy*O`rmZ -zV5`Uq`N?5uQGGt&vUArF1iS4pY8A5GYIOuz~&s(iXXN+R-JN$jvy(75hVde>qLa -zwy5f`dUgNx)rq6^Ah;pnL(w+6Xw)CM-e-Eybtv3HEUTZmIW5z#CVoFz$obzBc`ZfR3!S$wQ -z>GToWBnR&_d^q;(sZiP1%+Eh}KGoGdf^e^wCo;m=JkM0>1@D(BAX<0d$m!jCQ~v -zcN4PIgGsrl)7azars$g0<3<*vWn;*k*A!3N!?RrxG!T;0Sa*sJ;-ED!QE1Xfm=#{) -z3xAC|w~45?z$nItC)r0-349rc+cDbC;>i68QFbG2F*n%iO-?OW-oA6cj$(g+Vsx{U -zmgqIsvq3NYQ?-V25FDKSTwAuuzX7mmLXe$lW`t}b)wQ0 -zZ=n}^>Ce#ok!xh4hmZVrj53P?vXj!!+vtH68EpEIyL}|hZn5xe*5|e2XWejYPFj4v -z;#(Q($#znSZwOI1@j;OV5f9(*J~+ur2Fbeq<_>#)Ub?DNCX=knz)m*fIyKKxGM6S0 -zOrvtWrjp>FBWMA&87=;Lu3(D4s4ie)zJmq#o|BDy;XjII74zn(}|SV-$B-!uo$;33nK?%l~u7&RCU% -zxK}vJZ+(&`{_|(QY3Jszd|1S&GLxthZ88+euS=9vHWucOxmj(KNJWKmJ@3K&V -zt6sjquW=i9Stuv(6%gxlYpLNjh`Jb=f5*E+u{nng82Yf+rQcf2HO&ZT2-Ei;PcQ;OPkS3`~r9&SX3Iw%mX+oSE0d$d$ -z;=Q%|qNNJCR35T3Xvn?Eq|c(3)Ah@Z##D$kx#iJ0Q^OA=mx(0&?>o^{b928|*J|1- -zW@<%KdxW`br3XM16v?jU+!cl!osY~D?ibs`kT}mPar?*Awn{n{{XJbPsjG%ma|@ElHL8GMDEdQ>zla)-n8{>6 -z?^1isZ;(dhfE=U>=>DV`^}OgSV;ehNukPJk3`R{T{f%340U%CR*|!Ojky2y`mxOGm!jdDu8Y}Aq`ohd6_B{rs -zs&DvgOlC3p!5s -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 -JcTST0{{S$c*;N1l - -literal 0 -HcmV?d00001 - -diff --git a/spec/rmagick/image_list/write_spec.rb b/spec/rmagick/image_list/write_spec.rb -index cd17fe94f..a90976120 100644 ---- a/spec/rmagick/image_list/write_spec.rb -+++ b/spec/rmagick/image_list/write_spec.rb -@@ -27,4 +27,17 @@ - expect(image_list.format).to eq('JPEG') - FileUtils.rm('test.0') - end -+ -+ it "issue #1375" do -+ # https://commons.wikimedia.org/wiki/File:Animhorse.gif -+ image_list = described_class.new(File.join(FIXTURE_PATH, 'animhorse.gif')) -+ -+ File.open(File.join(Dir.tmpdir, 'out.gif'), 'w') do |f| -+ image_list.write(f) -+ end -+ -+ Tempfile.open('out.gif') do |f| -+ image_list.write(f) -+ end -+ end - end diff --git a/rubygem-rmagick.spec b/rubygem-rmagick.spec index 05ed7c0..bc45661 100644 --- a/rubygem-rmagick.spec +++ b/rubygem-rmagick.spec @@ -8,8 +8,8 @@ Requires: (ImageMagick%{?_isa} >= %2 with ImageMagick%{?_isa} < %3)\ %{nil} Name: rubygem-%{gem_name} -Version: 5.2.0 -Release: 4%{?dist} +Version: 5.3.0 +Release: 1%{?dist} Summary: Ruby binding to ImageMagick # SPDX confirmed @@ -19,9 +19,6 @@ Source0: https://rubygems.org/gems/%{gem_name}-%{version}.gem # %%{SOURCE2} %%{version} Source1: rubygem-%{gem_name}-%{version}-full.tar.gz Source2: rmagick-create-full-tarball.sh -# https://github.com/rmagick/rmagick/pull/1379 -# Fix crash on ImageList#write with animation gif -Patch0: rmagick-pr1379-fix-crash-ImageList_write-animation-gif.patch BuildRequires: gcc BuildRequires: rubygems-devel @@ -30,8 +27,6 @@ BuildRequires: rubygem(pkg-config) BuildRequires: rubygem(test-unit) BuildRequires: rubygem(rspec) BuildRequires: rubygem(pry) -# For Patch0 -BuildRequires: /usr/bin/git # Due to test/RMagick/rmmain.c test_Magick_version(), for now # we specify the exact version for ImageMagick %if 0%{?fedora} @@ -63,9 +58,6 @@ Documentation for %{name}. %prep %setup -q -T -n %{gem_name}-%{version} -b 1 -#%%patch -P0 -p1 -cat %PATCH0 | git --git-dir=. apply -p1 - gem spec %{SOURCE0} -l --ruby > %{gem_name}.gemspec # permission @@ -156,6 +148,9 @@ done %doc %{gem_instdir}/examples/ %changelog +* Sun Jul 23 2023 Mamoru TASAKA - 5.3.0-1 +- 5.3.0 + * Fri Jul 21 2023 Fedora Release Engineering - 5.2.0-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild diff --git a/sources b/sources index ebfa6fe..c589990 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (rmagick-5.2.0.gem) = 198b8dd1e715f21621ca2f01e1e340ea04097342252ec7312f2695ee54f367d28cda3184d20312296386aeb7a092d19e098a44c64efa560f8faa20275996ac46 -SHA512 (rubygem-rmagick-5.2.0-full.tar.gz) = f557df4a106970ca67430d5654ee4b8c90e34081b3940f8e8fb5c5eb41ddb3f5ab59af803ca72bb6c9626a9ba398ccc684834c664795e8a3209b3678c2759d54 +SHA512 (rmagick-5.3.0.gem) = b53475dd2520188079f1710d0d85b31e32d9d7bc144ce4e2e547aa899763787dc9582319f2bc42f7c908dbce2eb76c8e86b8a2a4c9cd4648d605d5d860a2b922 +SHA512 (rubygem-rmagick-5.3.0-full.tar.gz) = 401a96f2feadb68a54e037bcc0afdaf4b44e953d9958596213b0d143eeae247c5276804ecdcff3b605b0d47398414d3d7e61c485a870b99e493601238ef1eb77 From eaab5c9dd95ba1e0822309cf25fe199c1f044ed8 Mon Sep 17 00:00:00 2001 From: Mamoru TASAKA Date: Wed, 3 Jan 2024 21:36:45 +0900 Subject: [PATCH 15/42] Rebuild for https://fedoraproject.org/wiki/Changes/Ruby_3.3 --- rubygem-rmagick.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/rubygem-rmagick.spec b/rubygem-rmagick.spec index bc45661..42c649b 100644 --- a/rubygem-rmagick.spec +++ b/rubygem-rmagick.spec @@ -9,7 +9,7 @@ Requires: (ImageMagick%{?_isa} >= %2 with ImageMagick%{?_isa} < %3)\ Name: rubygem-%{gem_name} Version: 5.3.0 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Ruby binding to ImageMagick # SPDX confirmed @@ -148,6 +148,9 @@ done %doc %{gem_instdir}/examples/ %changelog +* Wed Jan 03 2024 Mamoru TASAKA - 5.3.0-2 +- Rebuild for https://fedoraproject.org/wiki/Changes/Ruby_3.3 + * Sun Jul 23 2023 Mamoru TASAKA - 5.3.0-1 - 5.3.0 From 4268629b5dbdfec81c2cd4a2a6b7aa570ac72c6d Mon Sep 17 00:00:00 2001 From: Mamoru TASAKA Date: Sun, 21 Jan 2024 22:25:45 +0900 Subject: [PATCH 16/42] Backport upstream patch to fix test with ImageMagick 7.1.1-26 --- ...ick-pr1434-fix-test-with-IM-6_9_13_4.patch | 26 +++++++++++++++++++ ...ick-pr1435-fix-test-with-IM-7_1_1_26.patch | 23 ++++++++++++++++ rubygem-rmagick.spec | 12 ++++++++- 3 files changed, 60 insertions(+), 1 deletion(-) create mode 100644 rmagick-pr1434-fix-test-with-IM-6_9_13_4.patch create mode 100644 rmagick-pr1435-fix-test-with-IM-7_1_1_26.patch diff --git a/rmagick-pr1434-fix-test-with-IM-6_9_13_4.patch b/rmagick-pr1434-fix-test-with-IM-6_9_13_4.patch new file mode 100644 index 0000000..a0834b0 --- /dev/null +++ b/rmagick-pr1434-fix-test-with-IM-6_9_13_4.patch @@ -0,0 +1,26 @@ +From 3430911fdecb467511f96ae9858bc89c8cd3c24a Mon Sep 17 00:00:00 2001 +From: Watson +Date: Sat, 20 Jan 2024 17:44:08 +0900 +Subject: [PATCH] CI: Update ImageMagick 6 + +--- + .github/workflows/ci.yml | 6 +++--- + spec/rmagick/class_methods/limit_resources_spec.rb | 3 ++- + 2 files changed, 5 insertions(+), 4 deletions(-) + +diff --git a/spec/rmagick/class_methods/limit_resources_spec.rb b/spec/rmagick/class_methods/limit_resources_spec.rb +index d27a5a299..42ed8bc34 100644 +--- a/spec/rmagick/class_methods/limit_resources_spec.rb ++++ b/spec/rmagick/class_methods/limit_resources_spec.rb +@@ -30,9 +30,10 @@ + expect(new).to eq(500) + described_class.limit_resource(:file, cur) + ++ expect { described_class.limit_resource(:time, 123) }.not_to raise_error + expect { cur = described_class.limit_resource(:time, 300) }.not_to raise_error + expect(cur).to be_kind_of(Integer) +- expect(cur > 300).to be(true) ++ expect(cur).to eq(123) + expect { new = described_class.limit_resource('time') }.not_to raise_error + expect(new).to eq(300) + described_class.limit_resource(:time, cur) diff --git a/rmagick-pr1435-fix-test-with-IM-7_1_1_26.patch b/rmagick-pr1435-fix-test-with-IM-7_1_1_26.patch new file mode 100644 index 0000000..2f6dff6 --- /dev/null +++ b/rmagick-pr1435-fix-test-with-IM-7_1_1_26.patch @@ -0,0 +1,23 @@ +From 023c6de618236b921e488214b43dc263bf39b659 Mon Sep 17 00:00:00 2001 +From: Watson +Date: Sun, 21 Jan 2024 15:41:28 +0900 +Subject: [PATCH] CI: Update ImageMagick 7 outside Windows + +--- + .github/workflows/ci.yml | 4 ++-- + spec/rmagick/image/gamma_spec.rb | 2 +- + 2 files changed, 3 insertions(+), 3 deletions(-) + +diff --git a/spec/rmagick/image/gamma_spec.rb b/spec/rmagick/image/gamma_spec.rb +index f57f35017..1603b1b18 100644 +--- a/spec/rmagick/image/gamma_spec.rb ++++ b/spec/rmagick/image/gamma_spec.rb +@@ -4,7 +4,7 @@ + + expect { image.gamma }.not_to raise_error + expect(image.gamma).to be_instance_of(Float) +- expect(image.gamma).to eq(0.45454543828964233) ++ expect(image.gamma).to be_within(0.0000001).of(0.4545454) + expect { image.gamma = 2.0 }.not_to raise_error + expect(image.gamma).to eq(2.0) + expect { image.gamma = 'x' }.to raise_error(TypeError) diff --git a/rubygem-rmagick.spec b/rubygem-rmagick.spec index 42c649b..3155118 100644 --- a/rubygem-rmagick.spec +++ b/rubygem-rmagick.spec @@ -9,7 +9,7 @@ Requires: (ImageMagick%{?_isa} >= %2 with ImageMagick%{?_isa} < %3)\ Name: rubygem-%{gem_name} Version: 5.3.0 -Release: 2%{?dist} +Release: 3%{?dist} Summary: Ruby binding to ImageMagick # SPDX confirmed @@ -19,6 +19,10 @@ Source0: https://rubygems.org/gems/%{gem_name}-%{version}.gem # %%{SOURCE2} %%{version} Source1: rubygem-%{gem_name}-%{version}-full.tar.gz Source2: rmagick-create-full-tarball.sh +# https://github.com/rmagick/rmagick/pull/1434 +Patch0: rmagick-pr1434-fix-test-with-IM-6_9_13_4.patch +# https://github.com/rmagick/rmagick/pull/1435 +Patch1: rmagick-pr1435-fix-test-with-IM-7_1_1_26.patch BuildRequires: gcc BuildRequires: rubygems-devel @@ -60,6 +64,9 @@ Documentation for %{name}. %setup -q -T -n %{gem_name}-%{version} -b 1 gem spec %{SOURCE0} -l --ruby > %{gem_name}.gemspec +%patch -P0 -p1 +%patch -P1 -p1 + # permission find . -name \*.rb -or -name \*.gif | xargs chmod ugo-x @@ -148,6 +155,9 @@ done %doc %{gem_instdir}/examples/ %changelog +* Sun Jan 21 2024 Mamoru TASAKA - 5.3.0-3 +- Backport upstream patch to fix test with ImageMagick 7.1.1-26 + * Wed Jan 03 2024 Mamoru TASAKA - 5.3.0-2 - Rebuild for https://fedoraproject.org/wiki/Changes/Ruby_3.3 From 5d7334218beee3c1f4c90b93406167e2210a8ee2 Mon Sep 17 00:00:00 2001 From: Mamoru TASAKA Date: Sun, 21 Jan 2024 22:58:11 +0900 Subject: [PATCH 17/42] prep for branching --- rubygem-rmagick.spec | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/rubygem-rmagick.spec b/rubygem-rmagick.spec index 3155118..3499829 100644 --- a/rubygem-rmagick.spec +++ b/rubygem-rmagick.spec @@ -34,11 +34,10 @@ BuildRequires: rubygem(pry) # Due to test/RMagick/rmmain.c test_Magick_version(), for now # we specify the exact version for ImageMagick %if 0%{?fedora} +%setIMver 41 1:7.1.1 1:7.1.2 %setIMver 40 1:7.1.1 1:7.1.2 %setIMver 39 1:7.1.1 1:7.1.2 %setIMver 38 1:7.1.1 1:7.1.2 -%setIMver 37 1:6.9.12 1:6.9.13 -%setIMver 36 1:6.9.12 1:6.9.13 %endif Obsoletes: ruby-RMagick < 2.13.2 From 429b211f53ed1d0b4429a6f3f5dbe1fef1d8db6b Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 26 Jan 2024 17:25:07 +0000 Subject: [PATCH 18/42] Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild --- rubygem-rmagick.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/rubygem-rmagick.spec b/rubygem-rmagick.spec index 3499829..7cebc36 100644 --- a/rubygem-rmagick.spec +++ b/rubygem-rmagick.spec @@ -9,7 +9,7 @@ Requires: (ImageMagick%{?_isa} >= %2 with ImageMagick%{?_isa} < %3)\ Name: rubygem-%{gem_name} Version: 5.3.0 -Release: 3%{?dist} +Release: 4%{?dist} Summary: Ruby binding to ImageMagick # SPDX confirmed @@ -154,6 +154,9 @@ done %doc %{gem_instdir}/examples/ %changelog +* Fri Jan 26 2024 Fedora Release Engineering - 5.3.0-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + * Sun Jan 21 2024 Mamoru TASAKA - 5.3.0-3 - Backport upstream patch to fix test with ImageMagick 7.1.1-26 From 463d04909e7b3f222f1958ad5eb18c73cea64fd8 Mon Sep 17 00:00:00 2001 From: Mamoru TASAKA Date: Mon, 5 Feb 2024 11:32:03 +0900 Subject: [PATCH 19/42] 5.4.0 --- ...ick-pr1434-fix-test-with-IM-6_9_13_4.patch | 26 ------------------- ...ick-pr1435-fix-test-with-IM-7_1_1_26.patch | 23 ---------------- rubygem-rmagick.spec | 17 ++++++------ sources | 4 +-- 4 files changed, 10 insertions(+), 60 deletions(-) delete mode 100644 rmagick-pr1434-fix-test-with-IM-6_9_13_4.patch delete mode 100644 rmagick-pr1435-fix-test-with-IM-7_1_1_26.patch diff --git a/rmagick-pr1434-fix-test-with-IM-6_9_13_4.patch b/rmagick-pr1434-fix-test-with-IM-6_9_13_4.patch deleted file mode 100644 index a0834b0..0000000 --- a/rmagick-pr1434-fix-test-with-IM-6_9_13_4.patch +++ /dev/null @@ -1,26 +0,0 @@ -From 3430911fdecb467511f96ae9858bc89c8cd3c24a Mon Sep 17 00:00:00 2001 -From: Watson -Date: Sat, 20 Jan 2024 17:44:08 +0900 -Subject: [PATCH] CI: Update ImageMagick 6 - ---- - .github/workflows/ci.yml | 6 +++--- - spec/rmagick/class_methods/limit_resources_spec.rb | 3 ++- - 2 files changed, 5 insertions(+), 4 deletions(-) - -diff --git a/spec/rmagick/class_methods/limit_resources_spec.rb b/spec/rmagick/class_methods/limit_resources_spec.rb -index d27a5a299..42ed8bc34 100644 ---- a/spec/rmagick/class_methods/limit_resources_spec.rb -+++ b/spec/rmagick/class_methods/limit_resources_spec.rb -@@ -30,9 +30,10 @@ - expect(new).to eq(500) - described_class.limit_resource(:file, cur) - -+ expect { described_class.limit_resource(:time, 123) }.not_to raise_error - expect { cur = described_class.limit_resource(:time, 300) }.not_to raise_error - expect(cur).to be_kind_of(Integer) -- expect(cur > 300).to be(true) -+ expect(cur).to eq(123) - expect { new = described_class.limit_resource('time') }.not_to raise_error - expect(new).to eq(300) - described_class.limit_resource(:time, cur) diff --git a/rmagick-pr1435-fix-test-with-IM-7_1_1_26.patch b/rmagick-pr1435-fix-test-with-IM-7_1_1_26.patch deleted file mode 100644 index 2f6dff6..0000000 --- a/rmagick-pr1435-fix-test-with-IM-7_1_1_26.patch +++ /dev/null @@ -1,23 +0,0 @@ -From 023c6de618236b921e488214b43dc263bf39b659 Mon Sep 17 00:00:00 2001 -From: Watson -Date: Sun, 21 Jan 2024 15:41:28 +0900 -Subject: [PATCH] CI: Update ImageMagick 7 outside Windows - ---- - .github/workflows/ci.yml | 4 ++-- - spec/rmagick/image/gamma_spec.rb | 2 +- - 2 files changed, 3 insertions(+), 3 deletions(-) - -diff --git a/spec/rmagick/image/gamma_spec.rb b/spec/rmagick/image/gamma_spec.rb -index f57f35017..1603b1b18 100644 ---- a/spec/rmagick/image/gamma_spec.rb -+++ b/spec/rmagick/image/gamma_spec.rb -@@ -4,7 +4,7 @@ - - expect { image.gamma }.not_to raise_error - expect(image.gamma).to be_instance_of(Float) -- expect(image.gamma).to eq(0.45454543828964233) -+ expect(image.gamma).to be_within(0.0000001).of(0.4545454) - expect { image.gamma = 2.0 }.not_to raise_error - expect(image.gamma).to eq(2.0) - expect { image.gamma = 'x' }.to raise_error(TypeError) diff --git a/rubygem-rmagick.spec b/rubygem-rmagick.spec index 7cebc36..9ffd463 100644 --- a/rubygem-rmagick.spec +++ b/rubygem-rmagick.spec @@ -8,8 +8,8 @@ Requires: (ImageMagick%{?_isa} >= %2 with ImageMagick%{?_isa} < %3)\ %{nil} Name: rubygem-%{gem_name} -Version: 5.3.0 -Release: 4%{?dist} +Version: 5.4.0 +Release: 1%{?dist} Summary: Ruby binding to ImageMagick # SPDX confirmed @@ -19,10 +19,6 @@ Source0: https://rubygems.org/gems/%{gem_name}-%{version}.gem # %%{SOURCE2} %%{version} Source1: rubygem-%{gem_name}-%{version}-full.tar.gz Source2: rmagick-create-full-tarball.sh -# https://github.com/rmagick/rmagick/pull/1434 -Patch0: rmagick-pr1434-fix-test-with-IM-6_9_13_4.patch -# https://github.com/rmagick/rmagick/pull/1435 -Patch1: rmagick-pr1435-fix-test-with-IM-7_1_1_26.patch BuildRequires: gcc BuildRequires: rubygems-devel @@ -63,9 +59,6 @@ Documentation for %{name}. %setup -q -T -n %{gem_name}-%{version} -b 1 gem spec %{SOURCE0} -l --ruby > %{gem_name}.gemspec -%patch -P0 -p1 -%patch -P1 -p1 - # permission find . -name \*.rb -or -name \*.gif | xargs chmod ugo-x @@ -77,6 +70,9 @@ sed -i ext/RMagick/extconf.rb \ sed -i ext/RMagick/extconf.rb \ -e "\@-std=gnu99@s|-Wno[^ \t'][^ \t']*||g" +# observer is in standard lib, kill dependency for now +sed -i '\@runtime.*observer@d' %{gem_name}.gemspec + %build export MAKE="make %{?_smp_mflags}" # Make sure that .so is to be created newly @@ -154,6 +150,9 @@ done %doc %{gem_instdir}/examples/ %changelog +* Mon Feb 05 2024 Mamoru TASAKA - 5.4.0-1 +- 5.4.0 + * Fri Jan 26 2024 Fedora Release Engineering - 5.3.0-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild diff --git a/sources b/sources index c589990..8353dfa 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (rmagick-5.3.0.gem) = b53475dd2520188079f1710d0d85b31e32d9d7bc144ce4e2e547aa899763787dc9582319f2bc42f7c908dbce2eb76c8e86b8a2a4c9cd4648d605d5d860a2b922 -SHA512 (rubygem-rmagick-5.3.0-full.tar.gz) = 401a96f2feadb68a54e037bcc0afdaf4b44e953d9958596213b0d143eeae247c5276804ecdcff3b605b0d47398414d3d7e61c485a870b99e493601238ef1eb77 +SHA512 (rmagick-5.4.0.gem) = e60c0f488e429ac0b66f4ad990fba906b13e6cd734c347eb357c6a8101d5302534d0df04dfa93363dc91eda2ccb846490963587196241872d434f3bacc55c412 +SHA512 (rubygem-rmagick-5.4.0-full.tar.gz) = 7e42808261433d83c6fd55fd97bece91e37cb9d1a3812c386c54ff0bfd9154a7b5086498b343b04ba7e07b7b4bcfadb678e78d3f6e4cc459f2aa60022376bed4 From 7fea540f21b069374735ddfa6319deddde2f1eea Mon Sep 17 00:00:00 2001 From: Mamoru TASAKA Date: Mon, 5 Feb 2024 11:36:27 +0900 Subject: [PATCH 20/42] Now using c++ --- rubygem-rmagick.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rubygem-rmagick.spec b/rubygem-rmagick.spec index 9ffd463..2b722bc 100644 --- a/rubygem-rmagick.spec +++ b/rubygem-rmagick.spec @@ -20,7 +20,7 @@ Source0: https://rubygems.org/gems/%{gem_name}-%{version}.gem Source1: rubygem-%{gem_name}-%{version}-full.tar.gz Source2: rmagick-create-full-tarball.sh -BuildRequires: gcc +BuildRequires: gcc-c++ BuildRequires: rubygems-devel BuildRequires: ruby-devel BuildRequires: rubygem(pkg-config) From fed4e5b1c778c6fcd5adec329f47c7d97636b76d Mon Sep 17 00:00:00 2001 From: Mamoru TASAKA Date: Mon, 5 Feb 2024 13:20:36 +0900 Subject: [PATCH 21/42] fix invalid cast on big endian --- rubygem-rmagick.spec | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/rubygem-rmagick.spec b/rubygem-rmagick.spec index 2b722bc..9e8eb57 100644 --- a/rubygem-rmagick.spec +++ b/rubygem-rmagick.spec @@ -73,6 +73,14 @@ sed -i ext/RMagick/extconf.rb \ # observer is in standard lib, kill dependency for now sed -i '\@runtime.*observer@d' %{gem_name}.gemspec +# https://github.com/rmagick/rmagick/issues/1447 +# Fix invalid cast on s390x (big endian) +sed -i.orig \ + ext/RMagick/rmimage.cpp \ + ext/RMagick/rmdraw.cpp \ + -e 's|\(reinterpret_cast(reinterpret_cast Date: Tue, 6 Feb 2024 11:20:51 +0900 Subject: [PATCH 22/42] 5.4.1 --- rubygem-rmagick.spec | 13 ++++--------- sources | 4 ++-- 2 files changed, 6 insertions(+), 11 deletions(-) diff --git a/rubygem-rmagick.spec b/rubygem-rmagick.spec index 9e8eb57..5b9fada 100644 --- a/rubygem-rmagick.spec +++ b/rubygem-rmagick.spec @@ -8,7 +8,7 @@ Requires: (ImageMagick%{?_isa} >= %2 with ImageMagick%{?_isa} < %3)\ %{nil} Name: rubygem-%{gem_name} -Version: 5.4.0 +Version: 5.4.1 Release: 1%{?dist} Summary: Ruby binding to ImageMagick @@ -73,14 +73,6 @@ sed -i ext/RMagick/extconf.rb \ # observer is in standard lib, kill dependency for now sed -i '\@runtime.*observer@d' %{gem_name}.gemspec -# https://github.com/rmagick/rmagick/issues/1447 -# Fix invalid cast on s390x (big endian) -sed -i.orig \ - ext/RMagick/rmimage.cpp \ - ext/RMagick/rmdraw.cpp \ - -e 's|\(reinterpret_cast(reinterpret_cast - 5.4.1-1 +- 5.4.1 + * Mon Feb 05 2024 Mamoru TASAKA - 5.4.0-1 - 5.4.0 diff --git a/sources b/sources index 8353dfa..5071bf6 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (rmagick-5.4.0.gem) = e60c0f488e429ac0b66f4ad990fba906b13e6cd734c347eb357c6a8101d5302534d0df04dfa93363dc91eda2ccb846490963587196241872d434f3bacc55c412 -SHA512 (rubygem-rmagick-5.4.0-full.tar.gz) = 7e42808261433d83c6fd55fd97bece91e37cb9d1a3812c386c54ff0bfd9154a7b5086498b343b04ba7e07b7b4bcfadb678e78d3f6e4cc459f2aa60022376bed4 +SHA512 (rmagick-5.4.1.gem) = 34ea2db6f378328887d0ef64002e7cf15b5c2f075ec34e840595372069837ea25174b3f4cb93ce1c923f5d50daacf914fe6ca38782f0cef8f9c48d9285681dc1 +SHA512 (rubygem-rmagick-5.4.1-full.tar.gz) = 5324874ea7ace1814df41740d0be5a8fcc4c8d92db3e6aefd7e7318d7384d680d24e9c6d921c88632a043572d105d48fd4477d7733611e0a2aa33d150ce9c4bb From d2e873322fc13b43528192dcedbc4ced3395dfa2 Mon Sep 17 00:00:00 2001 From: Mamoru TASAKA Date: Tue, 13 Feb 2024 15:37:22 +0900 Subject: [PATCH 23/42] 5.4.2 --- rubygem-rmagick.spec | 5 ++++- sources | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/rubygem-rmagick.spec b/rubygem-rmagick.spec index 5b9fada..254cff4 100644 --- a/rubygem-rmagick.spec +++ b/rubygem-rmagick.spec @@ -8,7 +8,7 @@ Requires: (ImageMagick%{?_isa} >= %2 with ImageMagick%{?_isa} < %3)\ %{nil} Name: rubygem-%{gem_name} -Version: 5.4.1 +Version: 5.4.2 Release: 1%{?dist} Summary: Ruby binding to ImageMagick @@ -150,6 +150,9 @@ done %doc %{gem_instdir}/examples/ %changelog +* Tue Feb 13 2024 Mamoru TASAKA - 5.4.2-1 +- 5.4.2 + * Tue Feb 06 2024 Mamoru TASAKA - 5.4.1-1 - 5.4.1 diff --git a/sources b/sources index 5071bf6..00072eb 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (rmagick-5.4.1.gem) = 34ea2db6f378328887d0ef64002e7cf15b5c2f075ec34e840595372069837ea25174b3f4cb93ce1c923f5d50daacf914fe6ca38782f0cef8f9c48d9285681dc1 -SHA512 (rubygem-rmagick-5.4.1-full.tar.gz) = 5324874ea7ace1814df41740d0be5a8fcc4c8d92db3e6aefd7e7318d7384d680d24e9c6d921c88632a043572d105d48fd4477d7733611e0a2aa33d150ce9c4bb +SHA512 (rmagick-5.4.2.gem) = 3e987ef40e15ab8e0ec951c6fe9a6a3f4694d6ad87821224a4feb42a589de9197b88e78e1cd929eb587ac5702215425b76fbcbc3a84973c574c93747eb14a9e4 +SHA512 (rubygem-rmagick-5.4.2-full.tar.gz) = 4f1bf64158802761c86007ef9286836fda4ed782462d60a19687fb21e6072b1eddb082f54f2c0da1a9d4a16a4b51247d96c8ee9fe7d37cf38342850c88221bb1 From 475582dd8edd9daf249b28682783e4b5d7d30dc7 Mon Sep 17 00:00:00 2001 From: Mamoru TASAKA Date: Wed, 14 Feb 2024 21:34:33 +0900 Subject: [PATCH 24/42] 5.4.3 --- rubygem-rmagick.spec | 5 ++++- sources | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/rubygem-rmagick.spec b/rubygem-rmagick.spec index 254cff4..87218a8 100644 --- a/rubygem-rmagick.spec +++ b/rubygem-rmagick.spec @@ -8,7 +8,7 @@ Requires: (ImageMagick%{?_isa} >= %2 with ImageMagick%{?_isa} < %3)\ %{nil} Name: rubygem-%{gem_name} -Version: 5.4.2 +Version: 5.4.3 Release: 1%{?dist} Summary: Ruby binding to ImageMagick @@ -150,6 +150,9 @@ done %doc %{gem_instdir}/examples/ %changelog +* Wed Feb 14 2024 Mamoru TASAKA - 5.4.3-1 +- 5.4.3 + * Tue Feb 13 2024 Mamoru TASAKA - 5.4.2-1 - 5.4.2 diff --git a/sources b/sources index 00072eb..b10de23 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (rmagick-5.4.2.gem) = 3e987ef40e15ab8e0ec951c6fe9a6a3f4694d6ad87821224a4feb42a589de9197b88e78e1cd929eb587ac5702215425b76fbcbc3a84973c574c93747eb14a9e4 -SHA512 (rubygem-rmagick-5.4.2-full.tar.gz) = 4f1bf64158802761c86007ef9286836fda4ed782462d60a19687fb21e6072b1eddb082f54f2c0da1a9d4a16a4b51247d96c8ee9fe7d37cf38342850c88221bb1 +SHA512 (rmagick-5.4.3.gem) = baef624d98dd74183259ff64d13e5a1fddd92996078f6ae7c91ee401eb0565ae9f1f53745fa52d0afcc01dcd160fb8f35fa572b00bb13151f94b8dd26cff6c79 +SHA512 (rubygem-rmagick-5.4.3-full.tar.gz) = fd6c887d62279b2df69d31a15f805d3216b5c0714f7fc63377eef295caa3f4a91c6f20e20cf1ce1bb67fd3f86ffbbf7498bd66c83edd29fbf87e011fee0859c3 From 327c8e52dd0bb022442e408706e5da502b075da8 Mon Sep 17 00:00:00 2001 From: Mamoru TASAKA Date: Fri, 16 Feb 2024 11:13:16 +0900 Subject: [PATCH 25/42] 5.4.4 --- rubygem-rmagick.spec | 5 ++++- sources | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/rubygem-rmagick.spec b/rubygem-rmagick.spec index 87218a8..d8bb780 100644 --- a/rubygem-rmagick.spec +++ b/rubygem-rmagick.spec @@ -8,7 +8,7 @@ Requires: (ImageMagick%{?_isa} >= %2 with ImageMagick%{?_isa} < %3)\ %{nil} Name: rubygem-%{gem_name} -Version: 5.4.3 +Version: 5.4.4 Release: 1%{?dist} Summary: Ruby binding to ImageMagick @@ -150,6 +150,9 @@ done %doc %{gem_instdir}/examples/ %changelog +* Fri Feb 16 2024 Mamoru TASAKA - 5.4.4-1 +- 5.4.4 + * Wed Feb 14 2024 Mamoru TASAKA - 5.4.3-1 - 5.4.3 diff --git a/sources b/sources index b10de23..54854d2 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (rmagick-5.4.3.gem) = baef624d98dd74183259ff64d13e5a1fddd92996078f6ae7c91ee401eb0565ae9f1f53745fa52d0afcc01dcd160fb8f35fa572b00bb13151f94b8dd26cff6c79 -SHA512 (rubygem-rmagick-5.4.3-full.tar.gz) = fd6c887d62279b2df69d31a15f805d3216b5c0714f7fc63377eef295caa3f4a91c6f20e20cf1ce1bb67fd3f86ffbbf7498bd66c83edd29fbf87e011fee0859c3 +SHA512 (rmagick-5.4.4.gem) = 064e63bb8afba6d86abb909a171951a2c3dd1d77246728b890d0bcedc614426d0d07d86c8198fd036b84a776dd09e55a0a3c4369b8997d54e65b292aaa6ea7bc +SHA512 (rubygem-rmagick-5.4.4-full.tar.gz) = fb603f47da09cfd5d70ed5bd7eeca3661930a761a6604391e57f36a8446794bf976f414d56f7e228b721938c253f3ecf848fd4e3b657275fcab648cef91e3379 From 29a17d158f4b56d9f865efc765969f66e8a25eac Mon Sep 17 00:00:00 2001 From: Mamoru TASAKA Date: Mon, 8 Apr 2024 17:15:40 +0900 Subject: [PATCH 26/42] 5.5.0 --- rubygem-rmagick.spec | 7 ++++++- sources | 4 ++-- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/rubygem-rmagick.spec b/rubygem-rmagick.spec index d8bb780..b933f44 100644 --- a/rubygem-rmagick.spec +++ b/rubygem-rmagick.spec @@ -8,7 +8,7 @@ Requires: (ImageMagick%{?_isa} >= %2 with ImageMagick%{?_isa} < %3)\ %{nil} Name: rubygem-%{gem_name} -Version: 5.4.4 +Version: 5.5.0 Release: 1%{?dist} Summary: Ruby binding to ImageMagick @@ -30,6 +30,7 @@ BuildRequires: rubygem(pry) # Due to test/RMagick/rmmain.c test_Magick_version(), for now # we specify the exact version for ImageMagick %if 0%{?fedora} +%setIMver 42 1:7.1.1 1:7.1.2 %setIMver 41 1:7.1.1 1:7.1.2 %setIMver 40 1:7.1.1 1:7.1.2 %setIMver 39 1:7.1.1 1:7.1.2 @@ -140,6 +141,7 @@ done %{gem_libdir}/ %{gem_extdir_mri}/ +%{gem_instdir}/sig/ %exclude %{gem_cache} %{gem_spec} @@ -150,6 +152,9 @@ done %doc %{gem_instdir}/examples/ %changelog +* Mon Apr 08 2024 Mamoru TASAKA - 5.5.0-1 +- 5.5.0 + * Fri Feb 16 2024 Mamoru TASAKA - 5.4.4-1 - 5.4.4 diff --git a/sources b/sources index 54854d2..a3b6eb1 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (rmagick-5.4.4.gem) = 064e63bb8afba6d86abb909a171951a2c3dd1d77246728b890d0bcedc614426d0d07d86c8198fd036b84a776dd09e55a0a3c4369b8997d54e65b292aaa6ea7bc -SHA512 (rubygem-rmagick-5.4.4-full.tar.gz) = fb603f47da09cfd5d70ed5bd7eeca3661930a761a6604391e57f36a8446794bf976f414d56f7e228b721938c253f3ecf848fd4e3b657275fcab648cef91e3379 +SHA512 (rmagick-5.5.0.gem) = 42ff50670eb24d8fea9a0526791f7dfd78629df725874d5ba313f7d408c7d786756d9b85ad469bacc228b6c03843b4fec3d73381fc8acb9a0c720ebcb3eb7d3d +SHA512 (rubygem-rmagick-5.5.0-full.tar.gz) = 1e56cf78fe6f46633cec24f4fff507915b3142965e676caa5764d6e3d87fadb89562eb2b4155059444c31452715eacf8dce4d821d81d79e003e91227115e9e52 From 87d444ed9a973b9eff0e266013584818cb230a6c Mon Sep 17 00:00:00 2001 From: Mamoru TASAKA Date: Fri, 3 May 2024 14:02:36 +0900 Subject: [PATCH 27/42] 6.0.0 --- rubygem-rmagick.spec | 12 +++++++++--- sources | 4 ++-- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/rubygem-rmagick.spec b/rubygem-rmagick.spec index b933f44..d1a4297 100644 --- a/rubygem-rmagick.spec +++ b/rubygem-rmagick.spec @@ -8,7 +8,7 @@ Requires: (ImageMagick%{?_isa} >= %2 with ImageMagick%{?_isa} < %3)\ %{nil} Name: rubygem-%{gem_name} -Version: 5.5.0 +Version: 6.0.0 Release: 1%{?dist} Summary: Ruby binding to ImageMagick @@ -29,9 +29,12 @@ BuildRequires: rubygem(rspec) BuildRequires: rubygem(pry) # Due to test/RMagick/rmmain.c test_Magick_version(), for now # we specify the exact version for ImageMagick +# +# With rmagick <= 5.5.0, ImageMagick X.Y.Z should all match, +# with rmagick >= 6.0.0, ImageMagick X.Y should match. %if 0%{?fedora} -%setIMver 42 1:7.1.1 1:7.1.2 -%setIMver 41 1:7.1.1 1:7.1.2 +%setIMver 42 1:7.1 1:7.2 +%setIMver 41 1:7.1 1:7.2 %setIMver 40 1:7.1.1 1:7.1.2 %setIMver 39 1:7.1.1 1:7.1.2 %setIMver 38 1:7.1.1 1:7.1.2 @@ -152,6 +155,9 @@ done %doc %{gem_instdir}/examples/ %changelog +* Fri May 03 2024 Mamoru TASAKA - 6.0.0-1 +- 6.0.0 + * Mon Apr 08 2024 Mamoru TASAKA - 5.5.0-1 - 5.5.0 diff --git a/sources b/sources index a3b6eb1..86f9699 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (rmagick-5.5.0.gem) = 42ff50670eb24d8fea9a0526791f7dfd78629df725874d5ba313f7d408c7d786756d9b85ad469bacc228b6c03843b4fec3d73381fc8acb9a0c720ebcb3eb7d3d -SHA512 (rubygem-rmagick-5.5.0-full.tar.gz) = 1e56cf78fe6f46633cec24f4fff507915b3142965e676caa5764d6e3d87fadb89562eb2b4155059444c31452715eacf8dce4d821d81d79e003e91227115e9e52 +SHA512 (rmagick-6.0.0.gem) = 08e3f3116c81cc164393e151d1030178024fd557e05004dd0bea5fedfc332d239ca2a0982bf378c1c218f3646787810aa350ea04c1568909ad13af887d23f98c +SHA512 (rubygem-rmagick-6.0.0-full.tar.gz) = 3bee2c94c43fe1c2b81675a8fd6d4bc87ddfe9ad561b06d98e37b79f2c4e485dff3957a5a5c9743c2aa03a22b3183cad9192e60776502999402c0357c6a04aba From d80c52fa34bd2f275c1c87568bf9f7db91407bba Mon Sep 17 00:00:00 2001 From: Mamoru TASAKA Date: Thu, 16 May 2024 16:53:11 +0900 Subject: [PATCH 28/42] 6.0.1 --- rmagick-create-full-tarball.sh | 11 +++++++++++ rubygem-rmagick.spec | 5 ++++- sources | 4 ++-- 3 files changed, 17 insertions(+), 3 deletions(-) diff --git a/rmagick-create-full-tarball.sh b/rmagick-create-full-tarball.sh index 50b8afd..4a60f3a 100644 --- a/rmagick-create-full-tarball.sh +++ b/rmagick-create-full-tarball.sh @@ -6,6 +6,16 @@ then exit 1 fi +preserve_timestamps() +{ + while read f + do + unixtime=$(git log -n 1 --pretty='%ct' -- $f) + touch -d "@${unixtime}" $f + done < <(git ls-tree -r --name-only HEAD) + +} + set -x set -e @@ -30,6 +40,7 @@ VERSION_TAG=RMagick_${VERSION_TAG} git clone https://github.com/rmagick/$NAME.git pushd ${NAME} git reset --hard ${VERSION_TAG} +preserve_timestamps popd ln -sf ${NAME} ${NAME}-${VERSION} diff --git a/rubygem-rmagick.spec b/rubygem-rmagick.spec index d1a4297..83767fc 100644 --- a/rubygem-rmagick.spec +++ b/rubygem-rmagick.spec @@ -8,7 +8,7 @@ Requires: (ImageMagick%{?_isa} >= %2 with ImageMagick%{?_isa} < %3)\ %{nil} Name: rubygem-%{gem_name} -Version: 6.0.0 +Version: 6.0.1 Release: 1%{?dist} Summary: Ruby binding to ImageMagick @@ -155,6 +155,9 @@ done %doc %{gem_instdir}/examples/ %changelog +* Thu May 16 2024 Mamoru TASAKA - 6.0.1-1 +- 6.0.1 + * Fri May 03 2024 Mamoru TASAKA - 6.0.0-1 - 6.0.0 diff --git a/sources b/sources index 86f9699..d5f601c 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (rmagick-6.0.0.gem) = 08e3f3116c81cc164393e151d1030178024fd557e05004dd0bea5fedfc332d239ca2a0982bf378c1c218f3646787810aa350ea04c1568909ad13af887d23f98c -SHA512 (rubygem-rmagick-6.0.0-full.tar.gz) = 3bee2c94c43fe1c2b81675a8fd6d4bc87ddfe9ad561b06d98e37b79f2c4e485dff3957a5a5c9743c2aa03a22b3183cad9192e60776502999402c0357c6a04aba +SHA512 (rmagick-6.0.1.gem) = 56237181fe89a2070da6a410e98c1af10a1e656ca3797152153a92f052bf03f5570edd9076fe368cd025f2ed7a42ea0f4b5789aeeb401a23ff8f97e047cd9d62 +SHA512 (rubygem-rmagick-6.0.1-full.tar.gz) = 5ffc50373f6f118474201c02c55add66f338ef2002fa8dca9892906e4908e88956b2755595b38bf56c37a614f20928c34a9d2b5902ff21dbe79fe5c4b4247e6f From 61f54a2cc939975b386f7f52851a83d0ce0350b7 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 19 Jul 2024 19:53:36 +0000 Subject: [PATCH 29/42] Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild --- rubygem-rmagick.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/rubygem-rmagick.spec b/rubygem-rmagick.spec index 83767fc..7574223 100644 --- a/rubygem-rmagick.spec +++ b/rubygem-rmagick.spec @@ -9,7 +9,7 @@ Requires: (ImageMagick%{?_isa} >= %2 with ImageMagick%{?_isa} < %3)\ Name: rubygem-%{gem_name} Version: 6.0.1 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Ruby binding to ImageMagick # SPDX confirmed @@ -155,6 +155,9 @@ done %doc %{gem_instdir}/examples/ %changelog +* Fri Jul 19 2024 Fedora Release Engineering - 6.0.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild + * Thu May 16 2024 Mamoru TASAKA - 6.0.1-1 - 6.0.1 From a8c6e5630347a6e2e18dd4faa455c4c8062d6bcc Mon Sep 17 00:00:00 2001 From: Mamoru TASAKA Date: Sat, 2 Nov 2024 21:40:09 +0900 Subject: [PATCH 30/42] Add BR: rubygem(observer) explicitly --- rubygem-rmagick.spec | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/rubygem-rmagick.spec b/rubygem-rmagick.spec index 7574223..98baaa5 100644 --- a/rubygem-rmagick.spec +++ b/rubygem-rmagick.spec @@ -9,7 +9,7 @@ Requires: (ImageMagick%{?_isa} >= %2 with ImageMagick%{?_isa} < %3)\ Name: rubygem-%{gem_name} Version: 6.0.1 -Release: 2%{?dist} +Release: 3%{?dist} Summary: Ruby binding to ImageMagick # SPDX confirmed @@ -24,6 +24,7 @@ BuildRequires: gcc-c++ BuildRequires: rubygems-devel BuildRequires: ruby-devel BuildRequires: rubygem(pkg-config) +BuildRequires: rubygem(observer) BuildRequires: rubygem(test-unit) BuildRequires: rubygem(rspec) BuildRequires: rubygem(pry) @@ -155,6 +156,9 @@ done %doc %{gem_instdir}/examples/ %changelog +* Sat Nov 02 2024 Mamoru TASAKA - 6.0.1-3 +- Add BR: rubygem(observer) explicitly + * Fri Jul 19 2024 Fedora Release Engineering - 6.0.1-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild From d61b0f5afe77b0275c3d9b48bd396c2f14ff2aa4 Mon Sep 17 00:00:00 2001 From: Mamoru TASAKA Date: Wed, 8 Jan 2025 08:45:49 +0900 Subject: [PATCH 31/42] Rebuild for https://fedoraproject.org/wiki/Changes/Ruby_3.4 --- rubygem-rmagick.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/rubygem-rmagick.spec b/rubygem-rmagick.spec index 98baaa5..6e7bc31 100644 --- a/rubygem-rmagick.spec +++ b/rubygem-rmagick.spec @@ -9,7 +9,7 @@ Requires: (ImageMagick%{?_isa} >= %2 with ImageMagick%{?_isa} < %3)\ Name: rubygem-%{gem_name} Version: 6.0.1 -Release: 3%{?dist} +Release: 4%{?dist} Summary: Ruby binding to ImageMagick # SPDX confirmed @@ -156,6 +156,9 @@ done %doc %{gem_instdir}/examples/ %changelog +* Tue Jan 07 2025 Mamoru TASAKA - 6.0.1-4 +- Rebuild for https://fedoraproject.org/wiki/Changes/Ruby_3.4 + * Sat Nov 02 2024 Mamoru TASAKA - 6.0.1-3 - Add BR: rubygem(observer) explicitly From 4a1eee0b774eacecd51c128e345222a6371888fd Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sat, 18 Jan 2025 23:56:14 +0000 Subject: [PATCH 32/42] Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild --- rubygem-rmagick.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/rubygem-rmagick.spec b/rubygem-rmagick.spec index 6e7bc31..023eceb 100644 --- a/rubygem-rmagick.spec +++ b/rubygem-rmagick.spec @@ -9,7 +9,7 @@ Requires: (ImageMagick%{?_isa} >= %2 with ImageMagick%{?_isa} < %3)\ Name: rubygem-%{gem_name} Version: 6.0.1 -Release: 4%{?dist} +Release: 5%{?dist} Summary: Ruby binding to ImageMagick # SPDX confirmed @@ -156,6 +156,9 @@ done %doc %{gem_instdir}/examples/ %changelog +* Sat Jan 18 2025 Fedora Release Engineering - 6.0.1-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild + * Tue Jan 07 2025 Mamoru TASAKA - 6.0.1-4 - Rebuild for https://fedoraproject.org/wiki/Changes/Ruby_3.4 From bc6a68b503d9adfc551c2143bd79ca08d8442f9e Mon Sep 17 00:00:00 2001 From: Mamoru TASAKA Date: Sun, 19 Jan 2025 17:33:25 +0900 Subject: [PATCH 33/42] 6.1.0 --- rubygem-rmagick.spec | 24 +++++++----------------- sources | 4 ++-- 2 files changed, 9 insertions(+), 19 deletions(-) diff --git a/rubygem-rmagick.spec b/rubygem-rmagick.spec index 6e7bc31..a8281b1 100644 --- a/rubygem-rmagick.spec +++ b/rubygem-rmagick.spec @@ -8,8 +8,8 @@ Requires: (ImageMagick%{?_isa} >= %2 with ImageMagick%{?_isa} < %3)\ %{nil} Name: rubygem-%{gem_name} -Version: 6.0.1 -Release: 4%{?dist} +Version: 6.1.0 +Release: 1%{?dist} Summary: Ruby binding to ImageMagick # SPDX confirmed @@ -28,17 +28,15 @@ BuildRequires: rubygem(observer) BuildRequires: rubygem(test-unit) BuildRequires: rubygem(rspec) BuildRequires: rubygem(pry) -# Due to test/RMagick/rmmain.c test_Magick_version(), for now +# Due to ext/RMagick/rmmain.cpp test_Magick_version(), for now # we specify the exact version for ImageMagick # # With rmagick <= 5.5.0, ImageMagick X.Y.Z should all match, # with rmagick >= 6.0.0, ImageMagick X.Y should match. %if 0%{?fedora} +%setIMver 43 1:7.1 1:7.2 %setIMver 42 1:7.1 1:7.2 %setIMver 41 1:7.1 1:7.2 -%setIMver 40 1:7.1.1 1:7.1.2 -%setIMver 39 1:7.1.1 1:7.1.2 -%setIMver 38 1:7.1.1 1:7.1.2 %endif Obsoletes: ruby-RMagick < 2.13.2 @@ -67,17 +65,6 @@ gem spec %{SOURCE0} -l --ruby > %{gem_name}.gemspec # permission find . -name \*.rb -or -name \*.gif | xargs chmod ugo-x -# kill rpath -sed -i ext/RMagick/extconf.rb \ - -e '\@LDFLAGS@s|[ \t]*-Wl,-rpath,[^ \t][^ \t]*"|"|' - -# kill gcc optflags suppressing warnings -sed -i ext/RMagick/extconf.rb \ - -e "\@-std=gnu99@s|-Wno[^ \t'][^ \t']*||g" - -# observer is in standard lib, kill dependency for now -sed -i '\@runtime.*observer@d' %{gem_name}.gemspec - %build export MAKE="make %{?_smp_mflags}" # Make sure that .so is to be created newly @@ -156,6 +143,9 @@ done %doc %{gem_instdir}/examples/ %changelog +* Sun Jan 19 2025 Mamoru TASAKA - 6.1.0-1 +- 6.1.0 + * Tue Jan 07 2025 Mamoru TASAKA - 6.0.1-4 - Rebuild for https://fedoraproject.org/wiki/Changes/Ruby_3.4 diff --git a/sources b/sources index d5f601c..7ed2c3b 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (rmagick-6.0.1.gem) = 56237181fe89a2070da6a410e98c1af10a1e656ca3797152153a92f052bf03f5570edd9076fe368cd025f2ed7a42ea0f4b5789aeeb401a23ff8f97e047cd9d62 -SHA512 (rubygem-rmagick-6.0.1-full.tar.gz) = 5ffc50373f6f118474201c02c55add66f338ef2002fa8dca9892906e4908e88956b2755595b38bf56c37a614f20928c34a9d2b5902ff21dbe79fe5c4b4247e6f +SHA512 (rmagick-6.1.0.gem) = 29e2f66d9a3a570a81e965f7a00c985ccb1a3a9fd912306aba5491d11316cb7080bf84345bfed0fabc144ad894b0a26d32da8b31d5a8355a7fd06b63afa0f731 +SHA512 (rubygem-rmagick-6.1.0-full.tar.gz) = 811a8c9e08f38fe5c2b1784317af1f94c820ddd25d3e6581c6d44042787ad40b489c5f9978003cce4f84e45b57ec365c253951c7a3e9848b40adb4a21c342bda From 700bcb953c751b4bdfa69b34461e580601268ac3 Mon Sep 17 00:00:00 2001 From: Mamoru TASAKA Date: Sun, 2 Feb 2025 14:11:16 +0900 Subject: [PATCH 34/42] 6.1.1 --- rubygem-rmagick.spec | 5 ++++- sources | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/rubygem-rmagick.spec b/rubygem-rmagick.spec index f5b8523..5610cdd 100644 --- a/rubygem-rmagick.spec +++ b/rubygem-rmagick.spec @@ -8,7 +8,7 @@ Requires: (ImageMagick%{?_isa} >= %2 with ImageMagick%{?_isa} < %3)\ %{nil} Name: rubygem-%{gem_name} -Version: 6.1.0 +Version: 6.1.1 Release: 1%{?dist} Summary: Ruby binding to ImageMagick @@ -143,6 +143,9 @@ done %doc %{gem_instdir}/examples/ %changelog +* Sun Feb 02 2025 Mamoru TASAKA - 6.1.1-1 +- 6.1.1 + * Sun Jan 19 2025 Mamoru TASAKA - 6.1.0-1 - 6.1.0 diff --git a/sources b/sources index 7ed2c3b..a486468 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (rmagick-6.1.0.gem) = 29e2f66d9a3a570a81e965f7a00c985ccb1a3a9fd912306aba5491d11316cb7080bf84345bfed0fabc144ad894b0a26d32da8b31d5a8355a7fd06b63afa0f731 -SHA512 (rubygem-rmagick-6.1.0-full.tar.gz) = 811a8c9e08f38fe5c2b1784317af1f94c820ddd25d3e6581c6d44042787ad40b489c5f9978003cce4f84e45b57ec365c253951c7a3e9848b40adb4a21c342bda +SHA512 (rmagick-6.1.1.gem) = 7e34ec10b50ed59083b65b793ab6d3f7c2bd1c1b3cc1ee7f5d781cf8f9dd780de325814f5d249de6e44f1631ec2f8c61d2b18e75501546b5afa5d980bab0a595 +SHA512 (rubygem-rmagick-6.1.1-full.tar.gz) = ad9b24e083b19735951b09430d8086867258dc16b081c1b200ccbc4e3831420cfa1100543d0f7275268b3564e06253d61e1560d1bae249caef66ee22f223b4de From bb58037a4e4f4ed108a5e39721b13a065f77f9e3 Mon Sep 17 00:00:00 2001 From: Mamoru TASAKA Date: Sun, 20 Jul 2025 17:19:30 +0900 Subject: [PATCH 35/42] 6.1.2 --- rubygem-rmagick.spec | 6 +++++- sources | 4 ++-- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/rubygem-rmagick.spec b/rubygem-rmagick.spec index 5610cdd..987ede0 100644 --- a/rubygem-rmagick.spec +++ b/rubygem-rmagick.spec @@ -8,7 +8,7 @@ Requires: (ImageMagick%{?_isa} >= %2 with ImageMagick%{?_isa} < %3)\ %{nil} Name: rubygem-%{gem_name} -Version: 6.1.1 +Version: 6.1.2 Release: 1%{?dist} Summary: Ruby binding to ImageMagick @@ -34,6 +34,7 @@ BuildRequires: rubygem(pry) # With rmagick <= 5.5.0, ImageMagick X.Y.Z should all match, # with rmagick >= 6.0.0, ImageMagick X.Y should match. %if 0%{?fedora} +%setIMver 44 1:7.1 1:7.2 %setIMver 43 1:7.1 1:7.2 %setIMver 42 1:7.1 1:7.2 %setIMver 41 1:7.1 1:7.2 @@ -143,6 +144,9 @@ done %doc %{gem_instdir}/examples/ %changelog +* Sun Jul 20 2025 Mamoru TASAKA - 6.1.2-1 +- 6.1.2 + * Sun Feb 02 2025 Mamoru TASAKA - 6.1.1-1 - 6.1.1 diff --git a/sources b/sources index a486468..f8d9c03 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (rmagick-6.1.1.gem) = 7e34ec10b50ed59083b65b793ab6d3f7c2bd1c1b3cc1ee7f5d781cf8f9dd780de325814f5d249de6e44f1631ec2f8c61d2b18e75501546b5afa5d980bab0a595 -SHA512 (rubygem-rmagick-6.1.1-full.tar.gz) = ad9b24e083b19735951b09430d8086867258dc16b081c1b200ccbc4e3831420cfa1100543d0f7275268b3564e06253d61e1560d1bae249caef66ee22f223b4de +SHA512 (rmagick-6.1.2.gem) = afae91302878630f2ed3c4abb0ae77658a646a054e7ac579795ee6094d0e30b98951731ee976ffc25bfddacbfb4c3b485a88cc3718e8962e1edaed75ceff0e4a +SHA512 (rubygem-rmagick-6.1.2-full.tar.gz) = 7f4de3e12a227b7716b42695b1dfe8e6c690359af1280d9deb3476d82639b6c5b1181998f878bd4f90375440fb219b15ef3517cd1f7de13bddbdc8d641835a0c From 77dee1c21cc3a45e3e454a84334072459e9e09c7 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 25 Jul 2025 12:44:57 +0000 Subject: [PATCH 36/42] Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild --- rubygem-rmagick.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/rubygem-rmagick.spec b/rubygem-rmagick.spec index 987ede0..1dfd12d 100644 --- a/rubygem-rmagick.spec +++ b/rubygem-rmagick.spec @@ -9,7 +9,7 @@ Requires: (ImageMagick%{?_isa} >= %2 with ImageMagick%{?_isa} < %3)\ Name: rubygem-%{gem_name} Version: 6.1.2 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Ruby binding to ImageMagick # SPDX confirmed @@ -144,6 +144,9 @@ done %doc %{gem_instdir}/examples/ %changelog +* Fri Jul 25 2025 Fedora Release Engineering - 6.1.2-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild + * Sun Jul 20 2025 Mamoru TASAKA - 6.1.2-1 - 6.1.2 From a204247da42929837dc10b08e396087f62f39a34 Mon Sep 17 00:00:00 2001 From: Mamoru TASAKA Date: Sun, 17 Aug 2025 10:44:21 +0900 Subject: [PATCH 37/42] 6.1.3 --- rubygem-rmagick.spec | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/rubygem-rmagick.spec b/rubygem-rmagick.spec index 1dfd12d..51d55ac 100644 --- a/rubygem-rmagick.spec +++ b/rubygem-rmagick.spec @@ -8,8 +8,8 @@ Requires: (ImageMagick%{?_isa} >= %2 with ImageMagick%{?_isa} < %3)\ %{nil} Name: rubygem-%{gem_name} -Version: 6.1.2 -Release: 2%{?dist} +Version: 6.1.3 +Release: 1%{?dist} Summary: Ruby binding to ImageMagick # SPDX confirmed @@ -34,6 +34,7 @@ BuildRequires: rubygem(pry) # With rmagick <= 5.5.0, ImageMagick X.Y.Z should all match, # with rmagick >= 6.0.0, ImageMagick X.Y should match. %if 0%{?fedora} +%setIMver 45 1:7.1 1:7.2 %setIMver 44 1:7.1 1:7.2 %setIMver 43 1:7.1 1:7.2 %setIMver 42 1:7.1 1:7.2 @@ -144,6 +145,9 @@ done %doc %{gem_instdir}/examples/ %changelog +* Sun Aug 17 2025 Mamoru TASAKA - 6.1.3-1 +- 6.1.3 + * Fri Jul 25 2025 Fedora Release Engineering - 6.1.2-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild From a5e1e0ff2ef15c8c9e64e59180b118b57c0ca41b Mon Sep 17 00:00:00 2001 From: Mamoru TASAKA Date: Sun, 17 Aug 2025 12:13:00 +0900 Subject: [PATCH 38/42] upload source --- sources | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sources b/sources index f8d9c03..ba2a0fd 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (rmagick-6.1.2.gem) = afae91302878630f2ed3c4abb0ae77658a646a054e7ac579795ee6094d0e30b98951731ee976ffc25bfddacbfb4c3b485a88cc3718e8962e1edaed75ceff0e4a -SHA512 (rubygem-rmagick-6.1.2-full.tar.gz) = 7f4de3e12a227b7716b42695b1dfe8e6c690359af1280d9deb3476d82639b6c5b1181998f878bd4f90375440fb219b15ef3517cd1f7de13bddbdc8d641835a0c +SHA512 (rmagick-6.1.3.gem) = 39e2341092428dcae7eab7243bb7f2584d3f5f1e7ad944ed809bd32bbc2954e0eb04eff11a6ee1c7607017821833bc9803ab815caba333e2934a6cab4be30126 +SHA512 (rubygem-rmagick-6.1.3-full.tar.gz) = 95a2a6c308bd964df2cf27970f7184a9556803fa4eb8c6e1a41930ac678be2726c39fe97d7ec33d62abe520de6ae16b49a29caaa2f141ab8836ead44e5205285 From 9415692ce841dcc2cf3d720ce8133844321dd867 Mon Sep 17 00:00:00 2001 From: Mamoru TASAKA Date: Sun, 24 Aug 2025 22:31:06 +0900 Subject: [PATCH 39/42] 6.1.4 --- rubygem-rmagick.spec | 5 ++++- sources | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/rubygem-rmagick.spec b/rubygem-rmagick.spec index 51d55ac..66a73d6 100644 --- a/rubygem-rmagick.spec +++ b/rubygem-rmagick.spec @@ -8,7 +8,7 @@ Requires: (ImageMagick%{?_isa} >= %2 with ImageMagick%{?_isa} < %3)\ %{nil} Name: rubygem-%{gem_name} -Version: 6.1.3 +Version: 6.1.4 Release: 1%{?dist} Summary: Ruby binding to ImageMagick @@ -145,6 +145,9 @@ done %doc %{gem_instdir}/examples/ %changelog +* Sun Aug 24 2025 Mamoru TASAKA - 6.1.4-1 +- 6.1.4 + * Sun Aug 17 2025 Mamoru TASAKA - 6.1.3-1 - 6.1.3 diff --git a/sources b/sources index ba2a0fd..72f4739 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (rmagick-6.1.3.gem) = 39e2341092428dcae7eab7243bb7f2584d3f5f1e7ad944ed809bd32bbc2954e0eb04eff11a6ee1c7607017821833bc9803ab815caba333e2934a6cab4be30126 -SHA512 (rubygem-rmagick-6.1.3-full.tar.gz) = 95a2a6c308bd964df2cf27970f7184a9556803fa4eb8c6e1a41930ac678be2726c39fe97d7ec33d62abe520de6ae16b49a29caaa2f141ab8836ead44e5205285 +SHA512 (rmagick-6.1.4.gem) = 85fbe577a82f16e46394551ea0a94aa49afea53f955ce0c8889cf4527e658ab7e5fd646b1994d63c983a75281c4b2de8c12f89c5573f76732ac947fd6894b842 +SHA512 (rubygem-rmagick-6.1.4-full.tar.gz) = dc831d7459af0888eefba8fb172be0f910a7ce8f41709153923036f190de2d63d96368cc13a14f571c9b17383852d48929d21ff0a7c84689bf867ac7c22a6dbc From d2310562f5556c2e25f0df3bb8e082cb8e25d6b2 Mon Sep 17 00:00:00 2001 From: Mamoru TASAKA Date: Wed, 29 Oct 2025 23:32:40 +0900 Subject: [PATCH 40/42] Apply upstream patch for ruby3_5 Ractor change for testsuite --- rmagick-pr1712-Ractor_take_removal.patch | 61 ++++++++++++++++++++++++ rubygem-rmagick.spec | 9 +++- 2 files changed, 69 insertions(+), 1 deletion(-) create mode 100644 rmagick-pr1712-Ractor_take_removal.patch diff --git a/rmagick-pr1712-Ractor_take_removal.patch b/rmagick-pr1712-Ractor_take_removal.patch new file mode 100644 index 0000000..54fea94 --- /dev/null +++ b/rmagick-pr1712-Ractor_take_removal.patch @@ -0,0 +1,61 @@ +From 4f072008e8fe3cb97d6d537dd7d0a44b9a1b5be1 Mon Sep 17 00:00:00 2001 +From: Shizuo Fujita +Date: Wed, 15 Oct 2025 10:58:26 +0900 +Subject: [PATCH] CI: Support Ruby 3.5 + +--- + spec/magick_spec.rb | 27 ++++++++++++++++++++++++--- + 1 file changed, 24 insertions(+), 3 deletions(-) + +diff --git a/spec/magick_spec.rb b/spec/magick_spec.rb +index 1d5425032..13d78ba6e 100644 +--- a/spec/magick_spec.rb ++++ b/spec/magick_spec.rb +@@ -76,7 +76,14 @@ + img.new_image(200, 200, Magick::GradientFill.new(100, 50, 100, 50, 'khaki1', 'turquoise')) + img.resize(20, 20) + end +- r.take ++ ++ if r.respond_to?(:take) ++ r.take ++ else ++ # Ractor#take was replaced at Ruby 3.5. ++ # https://bugs.ruby-lang.org/issues/21262 ++ r.join ++ end + end.not_to raise_error + + expect do +@@ -90,7 +97,14 @@ + gc.text(5, 20, "'20,20'") + gc.draw(img) + end +- r.take ++ ++ if r.respond_to?(:take) ++ r.take ++ else ++ # Ractor#take was replaced at Ruby 3.5. ++ # https://bugs.ruby-lang.org/issues/21262 ++ r.join ++ end + end.not_to raise_error + + unless RUBY_PLATFORM.include?('mingw') +@@ -99,7 +113,14 @@ + r = Ractor.new do + Magick.formats # rubocop:disable RSpec/DescribedClass + end +- r.take ++ ++ if r.respond_to?(:take) ++ r.take ++ else ++ # Ractor#take was replaced at Ruby 3.5. ++ # https://bugs.ruby-lang.org/issues/21262 ++ r.join ++ end + end.not_to raise_error + end + end diff --git a/rubygem-rmagick.spec b/rubygem-rmagick.spec index 66a73d6..fc91392 100644 --- a/rubygem-rmagick.spec +++ b/rubygem-rmagick.spec @@ -9,7 +9,7 @@ Requires: (ImageMagick%{?_isa} >= %2 with ImageMagick%{?_isa} < %3)\ Name: rubygem-%{gem_name} Version: 6.1.4 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Ruby binding to ImageMagick # SPDX confirmed @@ -19,6 +19,9 @@ Source0: https://rubygems.org/gems/%{gem_name}-%{version}.gem # %%{SOURCE2} %%{version} Source1: rubygem-%{gem_name}-%{version}-full.tar.gz Source2: rmagick-create-full-tarball.sh +# https://github.com/rmagick/rmagick/pull/1712 +# Ractor#take is removed on ruby3_5 +Patch0: rmagick-pr1712-Ractor_take_removal.patch BuildRequires: gcc-c++ BuildRequires: rubygems-devel @@ -62,6 +65,7 @@ Documentation for %{name}. %prep %setup -q -T -n %{gem_name}-%{version} -b 1 +%patch -P0 -p1 gem spec %{SOURCE0} -l --ruby > %{gem_name}.gemspec # permission @@ -145,6 +149,9 @@ done %doc %{gem_instdir}/examples/ %changelog +* Wed Oct 29 2025 Mamoru TASAKA - 6.1.4-2 +- Apply upstream patch for ruby3_5 Ractor change for testsuite + * Sun Aug 24 2025 Mamoru TASAKA - 6.1.4-1 - 6.1.4 From 55877aed4830c9b9d2c31ec0110033e796fd9df9 Mon Sep 17 00:00:00 2001 From: Mamoru TASAKA Date: Sun, 28 Dec 2025 21:38:23 +0900 Subject: [PATCH 41/42] 6.1.5 --- rmagick-pr1712-Ractor_take_removal.patch | 61 ------------------------ rubygem-rmagick.spec | 11 ++--- sources | 4 +- 3 files changed, 7 insertions(+), 69 deletions(-) delete mode 100644 rmagick-pr1712-Ractor_take_removal.patch diff --git a/rmagick-pr1712-Ractor_take_removal.patch b/rmagick-pr1712-Ractor_take_removal.patch deleted file mode 100644 index 54fea94..0000000 --- a/rmagick-pr1712-Ractor_take_removal.patch +++ /dev/null @@ -1,61 +0,0 @@ -From 4f072008e8fe3cb97d6d537dd7d0a44b9a1b5be1 Mon Sep 17 00:00:00 2001 -From: Shizuo Fujita -Date: Wed, 15 Oct 2025 10:58:26 +0900 -Subject: [PATCH] CI: Support Ruby 3.5 - ---- - spec/magick_spec.rb | 27 ++++++++++++++++++++++++--- - 1 file changed, 24 insertions(+), 3 deletions(-) - -diff --git a/spec/magick_spec.rb b/spec/magick_spec.rb -index 1d5425032..13d78ba6e 100644 ---- a/spec/magick_spec.rb -+++ b/spec/magick_spec.rb -@@ -76,7 +76,14 @@ - img.new_image(200, 200, Magick::GradientFill.new(100, 50, 100, 50, 'khaki1', 'turquoise')) - img.resize(20, 20) - end -- r.take -+ -+ if r.respond_to?(:take) -+ r.take -+ else -+ # Ractor#take was replaced at Ruby 3.5. -+ # https://bugs.ruby-lang.org/issues/21262 -+ r.join -+ end - end.not_to raise_error - - expect do -@@ -90,7 +97,14 @@ - gc.text(5, 20, "'20,20'") - gc.draw(img) - end -- r.take -+ -+ if r.respond_to?(:take) -+ r.take -+ else -+ # Ractor#take was replaced at Ruby 3.5. -+ # https://bugs.ruby-lang.org/issues/21262 -+ r.join -+ end - end.not_to raise_error - - unless RUBY_PLATFORM.include?('mingw') -@@ -99,7 +113,14 @@ - r = Ractor.new do - Magick.formats # rubocop:disable RSpec/DescribedClass - end -- r.take -+ -+ if r.respond_to?(:take) -+ r.take -+ else -+ # Ractor#take was replaced at Ruby 3.5. -+ # https://bugs.ruby-lang.org/issues/21262 -+ r.join -+ end - end.not_to raise_error - end - end diff --git a/rubygem-rmagick.spec b/rubygem-rmagick.spec index fc91392..c640e41 100644 --- a/rubygem-rmagick.spec +++ b/rubygem-rmagick.spec @@ -8,8 +8,8 @@ Requires: (ImageMagick%{?_isa} >= %2 with ImageMagick%{?_isa} < %3)\ %{nil} Name: rubygem-%{gem_name} -Version: 6.1.4 -Release: 2%{?dist} +Version: 6.1.5 +Release: 1%{?dist} Summary: Ruby binding to ImageMagick # SPDX confirmed @@ -19,9 +19,6 @@ Source0: https://rubygems.org/gems/%{gem_name}-%{version}.gem # %%{SOURCE2} %%{version} Source1: rubygem-%{gem_name}-%{version}-full.tar.gz Source2: rmagick-create-full-tarball.sh -# https://github.com/rmagick/rmagick/pull/1712 -# Ractor#take is removed on ruby3_5 -Patch0: rmagick-pr1712-Ractor_take_removal.patch BuildRequires: gcc-c++ BuildRequires: rubygems-devel @@ -65,7 +62,6 @@ Documentation for %{name}. %prep %setup -q -T -n %{gem_name}-%{version} -b 1 -%patch -P0 -p1 gem spec %{SOURCE0} -l --ruby > %{gem_name}.gemspec # permission @@ -149,6 +145,9 @@ done %doc %{gem_instdir}/examples/ %changelog +* Sun Dec 28 2025 Mamoru TASAKA - 6.1.5-1 +- 6.1.5 + * Wed Oct 29 2025 Mamoru TASAKA - 6.1.4-2 - Apply upstream patch for ruby3_5 Ractor change for testsuite diff --git a/sources b/sources index 72f4739..6a164e1 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (rmagick-6.1.4.gem) = 85fbe577a82f16e46394551ea0a94aa49afea53f955ce0c8889cf4527e658ab7e5fd646b1994d63c983a75281c4b2de8c12f89c5573f76732ac947fd6894b842 -SHA512 (rubygem-rmagick-6.1.4-full.tar.gz) = dc831d7459af0888eefba8fb172be0f910a7ce8f41709153923036f190de2d63d96368cc13a14f571c9b17383852d48929d21ff0a7c84689bf867ac7c22a6dbc +SHA512 (rmagick-6.1.5.gem) = 15157dda3185e8677c08d9b33564d1c85e3c3573ad9f6ab2358c32ec8a790eb2aa765cde095f98eb500cd818e3b71535dd289524eb35c9c5e721be3af4b1ba18 +SHA512 (rubygem-rmagick-6.1.5-full.tar.gz) = ce65bacd8e775fc4751784d427ab52a5b936ca5a465751d63380d42e0928911389f3388474c936eeb59d93d242c9923240168911705c1243b8e5d195d258fd8a From 624242d85b962138b0622763bdaf40cc5fa82c4d Mon Sep 17 00:00:00 2001 From: Mamoru TASAKA Date: Thu, 8 Jan 2026 15:00:09 +0900 Subject: [PATCH 42/42] Rebuild for https://fedoraproject.org/wiki/Changes/Ruby_4.0 --- rubygem-rmagick.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/rubygem-rmagick.spec b/rubygem-rmagick.spec index c640e41..5d0da22 100644 --- a/rubygem-rmagick.spec +++ b/rubygem-rmagick.spec @@ -9,7 +9,7 @@ Requires: (ImageMagick%{?_isa} >= %2 with ImageMagick%{?_isa} < %3)\ Name: rubygem-%{gem_name} Version: 6.1.5 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Ruby binding to ImageMagick # SPDX confirmed @@ -145,6 +145,9 @@ done %doc %{gem_instdir}/examples/ %changelog +* Thu Jan 08 2026 Mamoru TASAKA - 6.1.5-2 +- Rebuild for https://fedoraproject.org/wiki/Changes/Ruby_4.0 + * Sun Dec 28 2025 Mamoru TASAKA - 6.1.5-1 - 6.1.5