This updates to the latest version of Ruby 3.1. Two of our patches and one distpatch have been upstreamed.
Tested on amd64. Will be committing in a couple days unless I hear objections. Thanks, Jeremy Index: Makefile =================================================================== RCS file: /cvs/ports/lang/ruby/3.1/Makefile,v diff -u -p -u -p -r1.18 Makefile --- Makefile 25 Apr 2024 22:09:25 -0000 1.18 +++ Makefile 29 May 2024 14:37:24 -0000 @@ -1,4 +1,4 @@ -VERSION = 3.1.5 +VERSION = 3.1.6 DISTNAME = ruby-${VERSION} SHARED_LIBS = ruby31 0.0 NEXTVER = 3.2 @@ -8,8 +8,6 @@ SITES.p1 ?= https://github.com/ruby/ope # Backport fix for fixnum*fixnum multiplication on octeon PATCHFILES.p = ruby-octeon-fix-2{fe6245b4309c855e6aca5b786ad50a72d53d278a}.patch -# Backport fix for ASN.1 time test -PATCHFILES.p1 += ruby-asn1time-fix-1{bbc540fe83195e2a54cf40fab448cea2afe4df1d}.patch # Enable HKDF PATCHFILES.p1 += ruby-enable-hkdf-1{9bdd39a7e2a5851c9090889727f54859e63a4ec9}.patch # Fix Ed25519 support Index: distinfo =================================================================== RCS file: /cvs/ports/lang/ruby/3.1/distinfo,v diff -u -p -u -p -r1.10 distinfo --- distinfo 25 Apr 2024 22:09:25 -0000 1.10 +++ distinfo 29 May 2024 14:37:45 -0000 @@ -1,10 +1,8 @@ -SHA256 (ruby-3.1.5.tar.gz) = NoXFHu7hNSwx6gOXBtcZdvU9AKttdzEt5qoauvXNosU= -SHA256 (ruby-asn1time-fix-1.patch) = n3v+hFVd72m+qOQYrHfnU8aKhypFTHkmbw1tdxoj6U4= +SHA256 (ruby-3.1.6.tar.gz) = DQ2vuFnnZ2NDJXGjEJ0VN9l2JmvjCDRFZR3Gje7SXCI= SHA256 (ruby-ed25519-fix-1.patch) = 6Cxx/FbYfJGbhKqdUbAmKvRmZEWpP1MPTZfWWzHoNfg= SHA256 (ruby-enable-hkdf-1.patch) = IUjVM4OMHs4KeZcXAdPW2iMy1voVDuAGtUZBMJovyFY= SHA256 (ruby-octeon-fix-2.patch) = u3ETLnfgMRbVGa6X33NRjdToUT6X+xq5/K7hHrXQwQQ= -SIZE (ruby-3.1.5.tar.gz) = 20884264 -SIZE (ruby-asn1time-fix-1.patch) = 2279 +SIZE (ruby-3.1.6.tar.gz) = 20887803 SIZE (ruby-ed25519-fix-1.patch) = 1496 SIZE (ruby-enable-hkdf-1.patch) = 1471 SIZE (ruby-octeon-fix-2.patch) = 1884 Index: patches/patch-ext_fiddle_closure_c =================================================================== RCS file: patches/patch-ext_fiddle_closure_c diff -N patches/patch-ext_fiddle_closure_c --- patches/patch-ext_fiddle_closure_c 25 Apr 2024 22:09:25 -0000 1.1 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,14 +0,0 @@ -Unbreak compilation of fiddle, breakage introduced in Ruby 3.1.5. - -Index: ext/fiddle/closure.c ---- ext/fiddle/closure.c.orig -+++ ext/fiddle/closure.c -@@ -276,7 +276,7 @@ initialize(int rbargc, VALUE argv[], VALUE self) - result = ffi_prep_closure_loc(pcl, cif, callback, - (void *)self, cl->code); - #else -- result = ffi_prep_closure(pcl, cif, callback, (void *)(data->self)); -+ result = ffi_prep_closure(pcl, cif, callback, (void *)self); - cl->code = (void *)pcl; - i = mprotect(pcl, sizeof(*pcl), PROT_READ | PROT_EXEC); - if (i) { Index: patches/patch-ext_openssl_ossl_pkey_c =================================================================== RCS file: patches/patch-ext_openssl_ossl_pkey_c diff -N patches/patch-ext_openssl_ossl_pkey_c --- patches/patch-ext_openssl_ossl_pkey_c 27 Nov 2022 01:10:37 -0000 1.3 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,15 +0,0 @@ -LibreSSL 3.5 and later provide and need to use -PEM_write_bio_PrivateKey_traditional() - -Index: ext/openssl/ossl_pkey.c ---- ext/openssl/ossl_pkey.c.orig -+++ ext/openssl/ossl_pkey.c -@@ -710,7 +710,7 @@ ossl_pkey_export_traditional(int argc, VALUE *argv, VA - } - } - else { --#if OPENSSL_VERSION_NUMBER >= 0x10100000 && !defined(LIBRESSL_VERSION_NUMBER) -+#if OPENSSL_VERSION_NUMBER >= 0x10100000 - if (!PEM_write_bio_PrivateKey_traditional(bio, pkey, enc, NULL, 0, - ossl_pem_passwd_cb, - (void *)pass)) { Index: pkg/PLIST-main =================================================================== RCS file: /cvs/ports/lang/ruby/3.1/pkg/PLIST-main,v diff -u -p -u -p -r1.8 PLIST-main --- pkg/PLIST-main 25 Apr 2024 22:09:25 -0000 1.8 +++ pkg/PLIST-main 29 May 2024 15:25:59 -0000 @@ -220,7 +220,7 @@ include/ruby-${REV}/ruby/util.h include/ruby-${REV}/ruby/version.h include/ruby-${REV}/ruby/vm.h include/ruby-${REV}/${SUB}/ -include/ruby-${REV}/${SUB}/rb_mjit_min_header-3.1.5.h +include/ruby-${REV}/${SUB}/rb_mjit_min_header-3.1.6.h include/ruby-${REV}/${SUB}/ruby/ include/ruby-${REV}/${SUB}/ruby/config.h @so lib/libruby31.so