[packages/ruby/rawhide] up to 3.4.11

mis mis at pld-linux.org
Fri Sep 25 19:37:27 CEST 2026


commit 79850a954b8604e0d68e1a15d54c176986daba44
Author: Pawel Gajda <mis at pld-linux.org>
Date:   Fri Sep 25 19:36:27 2026 +0200

    up to 3.4.11

 extract-gem-versions.sh | 138 +++++++++++++++++++++++++++++++-----------------
 ruby.spec               |  10 ++--
 2 files changed, 96 insertions(+), 52 deletions(-)
---
diff --git a/ruby.spec b/ruby.spec
index 20c4ce2..5d3b200 100644
--- a/ruby.spec
+++ b/ruby.spec
@@ -14,7 +14,7 @@
 
 %define		rel		2
 %define		ruby_version	3.4
-%define		patchlevel	9
+%define		patchlevel	11
 %define		pkg_version	%{ruby_version}.%{patchlevel}
 %define		ruby_suffix	%{!?with_default_ruby:%{ruby_version}}
 %define		unicode_version	12.1.0
@@ -110,7 +110,7 @@ BuildRoot:	%{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
 # Default gems.
 %define bundler_version 2.6.9
-%define erb_version 4.0.4
+%define erb_version 4.0.4.1
 
 
 %define io_console_version 0.8.1
@@ -118,7 +118,7 @@ BuildRoot:	%{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 %define json_version 2.9.1
 %define psych_version 5.2.2
 %define rdoc_version 6.14.0
-%define syntax_suggest_version 2.0.2
+%define syntax_suggest_version 2.0.3
 
 # Bundled gems.
 %define abbrev_version 0.1.2
@@ -132,7 +132,7 @@ BuildRoot:	%{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 %define minitest_version 5.25.4
 %define mutex_m_version 0.3.0
 %define net_ftp_version 0.3.8
-%define net_imap_version 0.5.8
+%define net_imap_version 0.5.15
 %define net_pop_version 0.1.2
 %define net_smtp_version 0.5.1
 %define nkf_version 0.2.0
@@ -1053,7 +1053,7 @@ sed -i '/def test_ctx_server_session_cb$/,/^  end$/ s/^/#/' test/openssl/test_ss
 
 %files
 %defattr(644,root,root,755)
-%doc NEWS.md LEGAL BSDL README.md README.EXT ChangeLog
+%doc NEWS.md LEGAL BSDL README.md README.EXT
 %attr(755,root,root) %{_bindir}/ruby
 %{_libdir}/libruby.so.*.*.*
 %ghost %{_libdir}/libruby.so.%{ruby_version}
diff --git a/extract-gem-versions.sh b/extract-gem-versions.sh
old mode 100644
new mode 100755
index c5d21e5..fcc5e18
--- a/extract-gem-versions.sh
+++ b/extract-gem-versions.sh
@@ -1,5 +1,19 @@
 #!/bin/sh
-# Extract gem versions used in rpm.spec
+# Extract gem versions from Ruby source tree and compare/update ruby.spec.
+
+UPDATE=0
+if [ "$1" = "--update" ]; then
+    UPDATE=1
+    shift
+elif [ "$1" = "--help" ] || [ "$1" = "-h" ]; then
+    echo "Usage: $0 [--update]"
+    echo
+    echo "Without options: report gem versions that differ between the Ruby"
+    echo "source tree and ruby.spec."
+    echo
+    echo "With --update:   patch ruby.spec to match versions found in the tree."
+    exit 0
+fi
 
 DEST=$(mktemp)
 trap 'rm -rf -- "$DEST"' EXIT
@@ -8,7 +22,7 @@ puts_version() {
     local name="$1"
     local version="$2"
     [ -z "$version" ] && version="UNDETERMINED"
-    echo -e "%define ${name}_ver\t${version}" >> $DEST
+    echo -e "%define ${name}_version\t${version}" >> "$DEST"
 }
 
 ruby_version=$(grep -P '%define\s+ruby_version' ruby.spec | grep -oP '\d\.[\d\.]+')
@@ -16,77 +30,107 @@ patchlevel=$(grep -P '%define\s+patchlevel\s+\d' ruby.spec | grep -oP '\d+')
 
 [ -z "$ruby_version" -o -z "$patchlevel" ] && exit 1
 
-BUILD_DIR="$(rpm --eval '%{_builddir}')/ruby-${ruby_version}.${patchlevel}"
-[ ! -d $BUILD_DIR ] && builder -bp ruby
+BUILD_DIR="$(rpm --eval '%{_builddir}')/ruby-${ruby_version}.${patchlevel}-build/ruby-${ruby_version}.${patchlevel}"
+#echo "BUILD_DIR ${BUILD_DIR}"
+if [ ! -d "$BUILD_DIR" ]; then
+    if command -v builder >/dev/null 2>&1; then
+        builder -bp ruby
+    else
+        rpmbuild -bp ruby.spec
+    fi
+fi
+if [ ! -d "$BUILD_DIR" ]; then
+    echo "ERROR: BUILD_DIR does not exist and could not be prepared." >&2
+    exit 1
+fi
 
 SPEC_DIR=$(pwd)
-cd $BUILD_DIR || exit 1
-
+cd "$BUILD_DIR" || exit 1
 
-ver=$(grep -P "\w+\.version" ext/bigdecimal/bigdecimal.gemspec | head -1 | grep -oP '\d+\.\d+[\d\.]*')
-puts_version "bigdecimal" $ver
+ver=$(grep -P "\w+\.version" .bundle/gems/bigdecimal-*/.bundled.bigdecimal-*.gemspec | head -1 | grep -oP '\d+\.\d+[\d\.]*')
+puts_version "bigdecimal" "$ver"
 
 ver=$(grep "VERSION = " lib/bundler/version.rb | grep -oP '\d+\.\d+[\d\.]*')
-puts_version "bundler" $ver
+puts_version "bundler" "$ver"
 
 ver=$(grep "VERSION = " lib/erb/version.rb | grep -oP '\d+\.\d+[\d\.]*')
-puts_version "erb" $ver
+puts_version "erb" "$ver"
 
-ver=$(grep "_VERSION = " ext/io/console/io-console.gemspec | grep -oP '\d+\.\d+[\d\.]*')
-puts_version "io_console" $ver
+ver=$(grep IO_CONSOLE_VERSION ext/io/console/console.c | grep -oP '\d+\.\d+[\d\.]*')
+puts_version "io_console" "$ver"
 
 ver=$(grep -P "\s+VERSION = " lib/irb/version.rb | grep -oP '\d+\.\d+[\d\.]*')
-puts_version "irb" $ver
+puts_version "irb" "$ver"
 
-ver=$(cat ./ext/json/VERSION | grep -oP '\d+\.\d+[\d\.]*')
-puts_version "json" $ver
+ver=$(cat ext/json/lib/json/version.rb | grep -oP '\d+\.\d+[\d\.]*')
+puts_version "json" "$ver"
 
 for i in etc stringio zlib; do
-    iup=$(echo $i | tr '[a-z]' '[A-Z]')
-    ver=$(grep "${iup}_VERSION" ext/$i/$i.c | grep -oP '\d+\.\d+[\d\.]*')
-    puts_version $i $ver
+    iup=$(echo "$i" | tr 'a-z' 'A-Z')
+    ver=$(grep "${iup}_VERSION" "ext/$i/$i.c" | grep -oP '\d+\.\d+[\d\.]*')
+    puts_version "$i" "$ver"
 done
 
 ver=$(grep -P "\w+\.version\s+" ext/openssl/openssl.gemspec | head -1 | grep -oP '\d+\.\d+[\d\.]*')
-puts_version "openssl" $ver
+puts_version "openssl" "$ver"
 
 ver=$(grep "VERSION = " ext/psych/lib/psych/versions.rb | head -1 | grep -oP '\d+\.\d+[\d\.]*')
-puts_version "psych" $ver
-
-ver=$(grep -P "\s+VERSION\s+= " lib/racc/info.rb | grep -oP '\d+\.\d+[\d\.]*')
-puts_version "racc" $ver
+puts_version "psych" "$ver"
 
-ver=$(grep -P "\s+VERSION = " lib/rdoc/version.rb | grep -oP '\d+\.\d+[\d\.]*')
-puts_version "rdoc" $ver
+ver=$(grep -P "\s+VERSION\s+=\s+" lib/rdoc/version.rb | grep -oP '\d+\.\d+[\d\.]*')
+puts_version "rdoc" "$ver"
 
-ver=$(grep -P "\w+\.version\s+" ext/readline/readline*.gemspec | head -1 | grep -oP '\d+\.\d+[\d\.]*')
-puts_version "readline" $ver
+ver=$(grep -P "\w+\.version\s+" lib/readline*.gemspec | head -1 | grep -oP '\d+\.\d+[\d\.]*')
+puts_version "readline" "$ver"
 
 ver=$(grep "VERSION = " lib/rubygems.rb | head -1 | grep -oP '\d+\.\d+[\d\.]*')
-puts_version "rubygems" $ver
+puts_version "rubygems" "$ver"
 
-echo "# bundled" >> $DEST
-find .bundle/gems/ -maxdepth 1 -type d | grep -P '\w\-\d+' | sort | perl -pe  's|\.bundle/gems/(\w.+)\-(\d+\.\d+\.\d+)|%define ${1}_ver\t$2|g; s|\-|_|g' >> $DEST
+ver=$(grep -P "\s+VERSION\s+=\s+" lib/syntax_suggest/version.rb | grep -oP '\d+\.\d+[\d\.]*')
+puts_version "syntax_suggest" "$ver"
 
-echo "Determined gem versions:"
-cat $DEST
+# bundled gems from .bundle/gems/
+find .bundle/gems/ -maxdepth 1 -type d | grep -P '\w\-\d+' | sort | \
+    perl -pe 's|\.bundle/gems/(\w.+)\-(\d+\.\d+\.\d+)|%define ${1}_version\t$2|g; s|\-|_|g' >> "$DEST"
 
-cd $SPEC_DIR || exit 1
+cd "$SPEC_DIR" || exit 1
+
+echo
+echo "Determined gem versions:"
+cat "$DEST"
+echo
 
-echo "Checking version macros usage:"
-# determine _ver macros usage
 ec=0
-for i in $(grep -P '^%define\s+\w+_ver\s+\d[\.\d]+$' ruby.spec | awk '{print $2}' | sort -u); do
-    grep -q "%{$i}" ruby.spec
-    if [ $? -eq 0 ]; then
-        grep -qP "%define\s+${i}\s+\d" $DEST
-        if [ $? -ne 0 ]; then
-            echo "$i: MISSING DEFINITION"
-            ec=1
+if [ "$UPDATE" -eq 1 ]; then
+    echo "Updating ruby.spec..."
+    while IFS=$'\t' read -r macro version; do
+        name=${macro#%define }
+        name=${name%_version}
+        if grep -qP "^%define\s+${name}_version\s+" ruby.spec; then
+            old=$(grep -P "^%define\s+${name}_version\s+" ruby.spec | awk '{print $3}')
+            if [ "$old" != "$version" ]; then
+                echo "  $name: $old -> $version"
+                perl -pi -e "s/^(%define\\s+${name}_version\\s+).*/\${1}${version}/" ruby.spec
+            fi
+        #else
+            #echo "  $name: not present in ruby.spec (skipped)"
         fi
-    fi
-done
-[ "$ec" -eq 0 ] && echo " all OK"
+    done < "$DEST"
+    echo "Done."
+else
+    echo "Version differences (source tree vs ruby.spec):"
+    while IFS=$'\t' read -r macro version; do
+        name=${macro#%define }
+        name=${name%_version}
+        if grep -qP "^%define\s+${name}_version\s+" ruby.spec; then
+            old=$(grep -P "^%define\s+${name}_version\s+" ruby.spec | awk '{print $3}')
+            if [ "$old" != "$version" ]; then
+                echo "  $name: ruby.spec=$old, tree=$version"
+                ec=1
+            fi
+        fi
+    done < "$DEST"
+    [ "$ec" -eq 0 ] && echo "  all match"
+fi
 
-rm -f $DEST
-exit $ec
+exit "$ec"
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/ruby.git/commitdiff/79850a954b8604e0d68e1a15d54c176986daba44



More information about the pld-cvs-commit mailing list