Compare commits
2 commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
d2b4fdc72c | ||
|
|
8a2d31bf27 |
6 changed files with 80 additions and 188 deletions
48
nokogiri-1.14.5-pr2920-fix-argument-typechecking.patch
Normal file
48
nokogiri-1.14.5-pr2920-fix-argument-typechecking.patch
Normal file
|
|
@ -0,0 +1,48 @@
|
|||
diff -urp '--exclude=*~' nokogiri-1.14.5.orig/ext/nokogiri/xml_cdata.c nokogiri-1.14.5/ext/nokogiri/xml_cdata.c
|
||||
--- nokogiri-1.14.5.orig/ext/nokogiri/xml_cdata.c 2023-05-24 21:29:21.000000000 +0900
|
||||
+++ nokogiri-1.14.5/ext/nokogiri/xml_cdata.c 2023-07-06 17:08:18.578360070 +0900
|
||||
@@ -25,6 +25,12 @@ new (int argc, VALUE *argv, VALUE klass)
|
||||
|
||||
rb_scan_args(argc, argv, "2*", &doc, &content, &rest);
|
||||
|
||||
+ if (!rb_obj_is_kind_of(doc, cNokogiriXmlNode)) {
|
||||
+ rb_raise(rb_eTypeError,
|
||||
+ "expected first parameter to be a Nokogiri::XML::Document, received %"PRIsVALUE,
|
||||
+ rb_obj_class(doc));
|
||||
+ }
|
||||
+
|
||||
Noko_Node_Get_Struct(doc, xmlDoc, xml_doc);
|
||||
|
||||
if (!NIL_P(content)) {
|
||||
diff -urp '--exclude=*~' nokogiri-1.14.5.orig/ext/nokogiri/xml_schema.c nokogiri-1.14.5/ext/nokogiri/xml_schema.c
|
||||
--- nokogiri-1.14.5.orig/ext/nokogiri/xml_schema.c 2023-05-24 21:29:21.000000000 +0900
|
||||
+++ nokogiri-1.14.5/ext/nokogiri/xml_schema.c 2023-07-06 17:06:57.466287513 +0900
|
||||
@@ -208,6 +208,12 @@ from_document(int argc, VALUE *argv, VAL
|
||||
|
||||
scanned_args = rb_scan_args(argc, argv, "11", &document, &parse_options);
|
||||
|
||||
+ if (!rb_obj_is_kind_of(document, cNokogiriXmlNode)) {
|
||||
+ rb_raise(rb_eTypeError,
|
||||
+ "expected parameter to be a Nokogiri::XML::Document, received %"PRIsVALUE,
|
||||
+ rb_obj_class(document));
|
||||
+ }
|
||||
+
|
||||
Noko_Node_Get_Struct(document, xmlDoc, doc);
|
||||
doc = doc->doc; /* In case someone passes us a node. ugh. */
|
||||
|
||||
diff -urp '--exclude=*~' nokogiri-1.14.5.orig/ext/nokogiri/xml_text.c nokogiri-1.14.5/ext/nokogiri/xml_text.c
|
||||
--- nokogiri-1.14.5.orig/ext/nokogiri/xml_text.c 2023-05-24 21:29:21.000000000 +0900
|
||||
+++ nokogiri-1.14.5/ext/nokogiri/xml_text.c 2023-07-06 17:08:46.028384621 +0900
|
||||
@@ -20,6 +20,12 @@ new (int argc, VALUE *argv, VALUE klass)
|
||||
|
||||
rb_scan_args(argc, argv, "2*", &string, &document, &rest);
|
||||
|
||||
+ if (!rb_obj_is_kind_of(document, cNokogiriXmlNode)) {
|
||||
+ rb_raise(rb_eTypeError,
|
||||
+ "expected second parameter to be a Nokogiri::XML::Document, received %"PRIsVALUE,
|
||||
+ rb_obj_class(document));
|
||||
+ }
|
||||
+
|
||||
Noko_Node_Get_Struct(document, xmlDoc, doc);
|
||||
|
||||
node = xmlNewText((xmlChar *)StringValueCStr(string));
|
||||
|
|
@ -1,17 +1,5 @@
|
|||
#!/bin/bash
|
||||
|
||||
git_restore_timestamp()
|
||||
{
|
||||
set +x
|
||||
echo "Restore timestamps"
|
||||
git ls-tree -r --name-only HEAD | while read f
|
||||
do
|
||||
unixtime=$(git log -n 1 --pretty='%ct' -- $f)
|
||||
touch -d "@${unixtime}" $f
|
||||
done
|
||||
set -x
|
||||
}
|
||||
|
||||
if [ $# -lt 2 ]
|
||||
then
|
||||
echo "$0 <name> <version>"
|
||||
|
|
@ -29,14 +17,10 @@ pushd $TMPDIRPATH
|
|||
git clone https://github.com/sparklemotion/$1.git
|
||||
pushd $1
|
||||
git reset --hard v$2
|
||||
git_restore_timestamp
|
||||
popd
|
||||
|
||||
ln -sf $1 $1-$2
|
||||
tar czf \
|
||||
${CURRDIR}/rubygem-$1-$2-full.tar.gz \
|
||||
"--exclude=nokogiri-$2/./.git" \
|
||||
$1-$2/./
|
||||
tar czf ${CURRDIR}/rubygem-$1-$2-full.tar.gz $1-$2/./
|
||||
|
||||
popd
|
||||
|
||||
|
|
|
|||
|
|
@ -1,13 +1,10 @@
|
|||
--- nokogiri-1.18.5/lib/nokogiri/version/info.rb.warn 2023-11-29 01:25:54.000000000 +0900
|
||||
+++ nokogiri-1.18.5/lib/nokogiri/version/info.rb 2025-03-26 15:51:51.468291434 +0900
|
||||
@@ -70,6 +70,10 @@ module Nokogiri
|
||||
end
|
||||
--- nokogiri-1.11.0.rc4/lib/nokogiri/version/info.rb.warn 2020-12-31 16:56:11.533949657 +0900
|
||||
+++ nokogiri-1.11.0.rc4/lib/nokogiri/version/info.rb 2020-12-31 16:59:38.576697147 +0900
|
||||
@@ -58,6 +58,7 @@ module Nokogiri
|
||||
|
||||
def warnings
|
||||
+ []
|
||||
+ end
|
||||
+
|
||||
+ def warnings_original
|
||||
warnings = []
|
||||
+ return warnings
|
||||
|
||||
if libxml2?
|
||||
if compiled_libxml_version != loaded_libxml_version
|
||||
|
|
|
|||
|
|
@ -1,11 +0,0 @@
|
|||
diff -urp '--exclude=*~' nokogiri-1.18.10.orig/test/helper.rb nokogiri-1.18.10/test/helper.rb
|
||||
--- nokogiri-1.18.10.orig/test/helper.rb 2025-12-24 12:29:06.569389292 +0900
|
||||
+++ nokogiri-1.18.10/test/helper.rb 2025-12-24 12:39:48.443826371 +0900
|
||||
@@ -41,6 +41,7 @@ warn
|
||||
|
||||
require "minitest/autorun"
|
||||
require "minitest/benchmark"
|
||||
+require "minitest/mock"
|
||||
|
||||
if !Nokogiri.jruby? && ENV["NCPU"].to_i > 1
|
||||
require "minitest/parallel_fork"
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
%global mainver 1.19.0
|
||||
%global mainver 1.14.5
|
||||
#%%global prever .rc4
|
||||
|
||||
%global baserelease 2
|
||||
|
|
@ -29,17 +29,15 @@ Source1: rubygem-%{gem_name}-%{version}%{?prever}-full.tar.gz
|
|||
Source2: nokogiri-create-full-tarball.sh
|
||||
# Shut down libxml2 version unmatching warning
|
||||
Patch0: %{name}-1.11.0.rc4-shutdown-libxml2-warning.patch
|
||||
# https://github.com/sparklemotion/nokogiri/pull/2920
|
||||
# Backport to 1.14.5
|
||||
Patch1: %{gem_name}-1.14.5-pr2920-fix-argument-typechecking.patch
|
||||
BuildRequires: ruby(release)
|
||||
BuildRequires: ruby(rubygems)
|
||||
##
|
||||
## For %%check
|
||||
BuildRequires: rubygem(minitest)
|
||||
BuildRequires: rubygem(minitest-mock)
|
||||
%if !0%{?rhel}
|
||||
# For test/xml/test_document_encoding.rb
|
||||
# Drop rubygem(rubyzip) build dependency in RHEL
|
||||
BuildRequires: rubygem(rubyzip)
|
||||
%endif
|
||||
BuildRequires: rubygems-devel
|
||||
Obsoletes: ruby-%{gem_name} <= 1.5.2-2
|
||||
#BuildRequires: ruby(racc)
|
||||
|
|
@ -53,6 +51,7 @@ BuildRequires: libxslt-devel
|
|||
BuildRequires: ruby-devel
|
||||
# ruby27 needs this explicitly
|
||||
BuildRequires: rubygem(racc)
|
||||
Requires: rubygem(racc)
|
||||
|
||||
%description
|
||||
Nokogiri parses and searches XML/HTML very quickly, and also has
|
||||
|
|
@ -80,23 +79,17 @@ This package provides non-Gem support for %{gem_name}.
|
|||
|
||||
%prep
|
||||
%setup -q -n %{gem_name}-%{version} -a 1
|
||||
cp -a %{gem_name}-%{version}/{.,*} .
|
||||
mv ../%{gem_name}-%{version}.gemspec .
|
||||
|
||||
# patches
|
||||
%patch -P0 -p1
|
||||
%patch -P1 -p1
|
||||
|
||||
# remove bundled external libraries
|
||||
sed -i \
|
||||
-e 's|, "ports/archives/[^"][^"]*"||g' \
|
||||
-e 's|, "patches/[^"][^"]*"||g' \
|
||||
-e 's|, "ports/patches/[^"][^"]*"||g' \
|
||||
%{gem_name}-%{version}.gemspec
|
||||
# Make sure gem build will complain later if the previous regex is not enough.
|
||||
rm -rf \
|
||||
ports \
|
||||
patches \
|
||||
%{nil}
|
||||
|
||||
# Actually not needed when using system libraries
|
||||
sed -i -e '\@mini_portile@d' %{gem_name}-%{version}.gemspec
|
||||
|
||||
|
|
@ -105,7 +98,7 @@ sed -i -e '\@mini_portile@d' %{gem_name}-%{version}.gemspec
|
|||
sed -i \
|
||||
ext/nokogiri/extconf.rb \
|
||||
-e "s@^\(def process_recipe.*\)\$@\1 ; return true@" \
|
||||
-e "s@^\([ \t]*append_cppflags\).*gumbo.*\$@\1(\"-I$(pwd)/gumbo-parser/src\")@" \
|
||||
-e "s@^\(append_cppflags\).*gumbo.*\$@\1(\"-I$(pwd)/gumbo-parser/src\")@" \
|
||||
-e "\@libs.*gumbo@s@File\.join.*@\"$(pwd)/gumbo-parser/src/libgumbo.a\"@" \
|
||||
-e "\@LIBPATH.*gumbo@s|^\(.*\)\$|# \1|" \
|
||||
%{nil}
|
||||
|
|
@ -176,7 +169,7 @@ do
|
|||
done
|
||||
|
||||
# Copy document files from full source
|
||||
cp -p [A-Z]* %{buildroot}%{gem_instdir}/
|
||||
cp -p %{gem_name}-%{version}/[A-Z]* %{buildroot}%{gem_instdir}/
|
||||
|
||||
# cleanups
|
||||
# Remove bundled gumbo parser
|
||||
|
|
@ -192,9 +185,10 @@ rm -rf \
|
|||
ports \
|
||||
%{nil}
|
||||
pushd gumbo-parser
|
||||
find . -type f | \
|
||||
grep -v CHANGES.md | \
|
||||
grep -v THANKS | \
|
||||
rm \
|
||||
Makefile \
|
||||
%{nil}
|
||||
find src -type f | \
|
||||
grep -v README.md | \
|
||||
xargs rm -f
|
||||
|
||||
|
|
@ -210,12 +204,12 @@ export TZ="Asia/Tokyo"
|
|||
LANG=C.UTF-8
|
||||
|
||||
# Copy test files from full tarball
|
||||
cp -a test/ ./%{gem_instdir}
|
||||
cp -a %{gem_name}-%{version}/test/ ./%{gem_instdir}
|
||||
pushd ./%{gem_instdir}
|
||||
|
||||
# Remove unneeded simplecov coverage test
|
||||
sed -i test/helper.rb \
|
||||
-e '\@^ require.*simplecov@,\@^ end$@s|^|#|'
|
||||
-e '\@require.*simplecov@,\@^end$@s|^|#|'
|
||||
|
||||
# Remove minitest-reporters. It does not provide any additional value while
|
||||
# it blows up the dependency chain.
|
||||
|
|
@ -225,6 +219,11 @@ sed -i '/Minitest::Reporters/ s/^/#/' test/helper.rb
|
|||
# PPC64LE with ruby3.1 does not seem to support GC.compact
|
||||
%ifarch ppc64le
|
||||
export NOKOGIRI_TEST_GC_LEVEL=major
|
||||
# F36 ruby has not implemented runtime GC compaction support yet
|
||||
# c.f https://src.fedoraproject.org/rpms/ruby/pull-request/126
|
||||
%if 0%{?fedora} <= 36
|
||||
sed -i test/test_compaction.rb -e 's|skip unless GC.respond_to.*|skip|'
|
||||
%endif
|
||||
%endif
|
||||
%ifarch s390x
|
||||
# With ruby 3.2 GC_LEVEL=compact seems to cause segfault:
|
||||
|
|
@ -276,136 +275,11 @@ popd
|
|||
%doc %{gem_dir}/doc/%{gem_name}-%{mainver}%{?prever}/
|
||||
|
||||
%changelog
|
||||
* Thu Jan 08 2026 Mamoru TASAKA <mtasaka@fedoraproject.org> - 1.19.0-2
|
||||
- Rebuild for https://fedoraproject.org/wiki/Changes/Ruby_4.0
|
||||
* Thu Jul 6 2023 Mamoru TASAKA <mtasaka@fedoraproject.org> - 1.14.5-2
|
||||
- Backport pr2920: Fix argument typechecking in Text.new and et al
|
||||
|
||||
* Tue Dec 30 2025 Mamoru TASAKA <mtasaka@fedoraproject.org> - 1.19.0-1
|
||||
- 1.19.0
|
||||
|
||||
* Wed Dec 24 2025 Mamoru TASAKA <mtasaka@fedoraproject.org> - 1.18.10-2
|
||||
- Handle minitest 6 compatibility
|
||||
|
||||
* Mon Sep 15 2025 Mamoru TASAKA <mtasaka@fedoraproject.org> - 1.18.10-1
|
||||
- 1.18.10
|
||||
|
||||
* Fri Jul 25 2025 Fedora Release Engineering <releng@fedoraproject.org> - 1.18.9-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild
|
||||
|
||||
* Mon Jul 21 2025 Mamoru TASAKA <mtasaka@fedoraproject.org> - 1.18.9-1
|
||||
- 1.18.9
|
||||
|
||||
* Wed Apr 23 2025 Mamoru TASAKA <mtasaka@fedoraproject.org> - 1.18.8-1
|
||||
- 1.18.8
|
||||
|
||||
* Mon Apr 07 2025 Mamoru TASAKA <mtasaka@fedoraproject.org> - 1.18.7-1
|
||||
- 1.18.7
|
||||
|
||||
* Sat Mar 29 2025 Mamoru TASAKA <mtasaka@fedoraproject.org> - 1.18.6-1
|
||||
- 1.18.6
|
||||
|
||||
* Wed Mar 26 2025 Mamoru TASAKA <mtasaka@fedoraproject.org> - 1.18.5-2
|
||||
- Suppress warnings from Nokogiri::VERSION_INFO (bug 2354787)
|
||||
|
||||
* Thu Mar 20 2025 Mamoru TASAKA <mtasaka@fedoraproject.org> - 1.18.5-1
|
||||
- 1.18.5
|
||||
|
||||
* Sun Mar 16 2025 Mamoru TASAKA <mtasaka@fedoraproject.org> - 1.18.4-1
|
||||
- 1.18.4
|
||||
|
||||
* Wed Feb 19 2025 Mamoru TASAKA <mtasaka@fedoraproject.org> - 1.18.3-1
|
||||
- 1.18.3
|
||||
|
||||
* Mon Jan 20 2025 Mamoru TASAKA <mtasaka@fedoraproject.org> - 1.18.2-1
|
||||
- 1.18.2
|
||||
|
||||
* Sat Jan 18 2025 Fedora Release Engineering <releng@fedoraproject.org> - 1.18.1-3
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
|
||||
|
||||
* Tue Jan 07 2025 Mamoru TASAKA <mtasaka@fedoraproject.org> - 1.18.1-2
|
||||
- Rebuild for https://fedoraproject.org/wiki/Changes/Ruby_3.4
|
||||
|
||||
* Mon Dec 30 2024 Mamoru TASAKA <mtasaka@fedoraproject.org> - 1.18.1-1
|
||||
- 1.18.1
|
||||
|
||||
* Sat Dec 28 2024 Mamoru TASAKA <mtasaka@fedoraproject.org> - 1.18.0-1
|
||||
- 1.18.0
|
||||
|
||||
* Fri Dec 13 2024 Mamoru TASAKA <mtasaka@fedoraproject.org> - 1.17.2-1
|
||||
- 1.17.2
|
||||
|
||||
* Wed Dec 11 2024 Mamoru TASAKA <mtasaka@fedoraproject.org> - 1.17.1-1
|
||||
- 1.17.1
|
||||
|
||||
* Mon Dec 09 2024 Mamoru TASAKA <mtasaka@fedoraproject.org> - 1.17.0-1
|
||||
- 1.17.0
|
||||
|
||||
* Thu Dec 05 2024 Mamoru TASAKA <mtasaka@fedoraproject.org> - 1.16.8-1
|
||||
- 1.16.8
|
||||
|
||||
* Wed Jul 31 2024 Mamoru TASAKA <mtasaka@fedoraproject.org> - 1.16.7-1
|
||||
- 1.16.7
|
||||
|
||||
* Fri Jul 19 2024 Fedora Release Engineering <releng@fedoraproject.org> - 1.16.6-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild
|
||||
|
||||
* Sun Jun 16 2024 Mamoru TASAKA <mtasaka@fedoraproject.org> - 1.16.6-1
|
||||
- 1.16.6
|
||||
|
||||
* Tue May 14 2024 Mamoru TASAKA <mtasaka@fedoraproject.org> - 1.16.5-1
|
||||
- 1.16.5
|
||||
|
||||
* Thu Apr 25 2024 Mamoru TASAKA <mtasaka@fedoraproject.org> - 1.16.4-2
|
||||
- Make rubygem-minizip testsuite dependency optional, drop on RHEL
|
||||
(Patch by Jun Aruga <jaruga@redhat.com>)
|
||||
|
||||
* Thu Apr 11 2024 Mamoru TASAKA <mtasaka@fedoraproject.org> - 1.16.4-1
|
||||
- 1.16.4
|
||||
|
||||
* Sun Mar 17 2024 Mamoru TASAKA <mtasaka@fedoraproject.org> - 1.16.3-1
|
||||
- 1.16.3
|
||||
|
||||
* Mon Feb 05 2024 Mamoru TASAKA <mtasaka@fedoraproject.org> - 1.16.2-1
|
||||
- 1.16.2
|
||||
|
||||
* Sun Feb 04 2024 Mamoru TASAKA <mtasaka@fedoraproject.org> - 1.16.1-1
|
||||
- 1.16.1
|
||||
|
||||
* Fri Jan 26 2024 Fedora Release Engineering <releng@fedoraproject.org> - 1.16.0-3
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
|
||||
|
||||
* Wed Jan 03 2024 Mamoru TASAKA <mtasaka@fedoraproject.org> - 1.16.0-2
|
||||
- Rebuild for https://fedoraproject.org/wiki/Changes/Ruby_3.3
|
||||
|
||||
* Fri Dec 29 2023 Mamoru TASAKA <mtasaka@fedoraproject.org> - 1.16.0-1
|
||||
- 1.16.0
|
||||
|
||||
* Sat Nov 18 2023 Mamoru TASAKA <mtasaka@fedoraproject.org> - 1.15.5-1
|
||||
- 1.15.5
|
||||
- Backport upstream patch for libxml2 2.12.0 error handling change
|
||||
|
||||
* Sat Aug 12 2023 Mamoru TASAKA <mtasaka@fedoraproject.org> - 1.15.4-1
|
||||
- 1.15.4
|
||||
|
||||
* Sun Aug 6 2023 Mamoru TASAKA <mtasaka@fedoraproject.org> - 1.15.3-4
|
||||
- Prefer upstream patch for the previous change
|
||||
|
||||
* Fri Aug 4 2023 Mamoru TASAKA <mtasaka@fedoraproject.org> - 1.15.3-3
|
||||
- Support MiniTest 5.19+
|
||||
|
||||
* Fri Jul 21 2023 Fedora Release Engineering <releng@fedoraproject.org> - 1.15.3-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
|
||||
|
||||
* Thu Jul 6 2023 Mamoru TASAKA <mtasaka@fedoraproject.org> - 1.15.3-1
|
||||
- 1.15.3
|
||||
|
||||
* Thu May 25 2023 Mamoru TASAKA <mtasaka@fedoraproject.org> - 1.15.2-1
|
||||
- 1.15.2
|
||||
|
||||
* Sun May 21 2023 Mamoru TASAKA <mtasaka@fedoraproject.org> - 1.15.1-1
|
||||
- 1.15.1
|
||||
|
||||
* Tue May 16 2023 Mamoru TASAKA <mtasaka@fedoraproject.org> - 1.15.0-1
|
||||
- 1.15.0
|
||||
* Thu May 25 2023 Mamoru TASAKA <mtasaka@fedoraproject.org> - 1.14.5-1
|
||||
- 1.14.5
|
||||
|
||||
* Fri May 12 2023 Mamoru TASAKA <mtasaka@fedoraproject.org> - 1.14.4-1
|
||||
- 1.14.4
|
||||
|
|
|
|||
4
sources
4
sources
|
|
@ -1,2 +1,2 @@
|
|||
SHA512 (rubygem-nokogiri-1.19.0-full.tar.gz) = 29dd894b176857d55eb5e670f50e69762e74c0a13e6949030af17e3c84b65f9dfe0087210b84a7c77749d3d1a4a33292d62f7005003745e8f087d822ee64f4b1
|
||||
SHA512 (nokogiri-1.19.0.gem) = d9326a2e60b6ea3152c5f9d53df738610f18ca57cffcd3bf2f8b07a2b08b30085d0fce2ca8206279ad6a0f1a613e9e76821c09aef45cf5e5b2d00ff766734872
|
||||
SHA512 (nokogiri-1.14.5.gem) = 9621716da66fc715944ccf85145ddf34ada979e6469d668e4e80ad1d27a5e3d9eaf94b050a7fe24ef9f2ca5a96736c96f26598053980bbccfe9a3459c669fc5e
|
||||
SHA512 (rubygem-nokogiri-1.14.5-full.tar.gz) = 974ade3cb66bab8f7d3abd1acbe07ad90113c1907b56eecc544825650d60e2d96aae6397c8a8f77e7a31d9a33cea7d7a698340234312c27dd816e2480dc6082a
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue