Fix Ruby minitest support (RHBZ#2229653)
This commit is contained in:
parent
22a5e52508
commit
355dd7fcfc
102
0001-ruby-Replace-MiniTest-with-Minitest.patch
Normal file
102
0001-ruby-Replace-MiniTest-with-Minitest.patch
Normal file
@ -0,0 +1,102 @@
|
|||||||
|
From fbcff7fbd8f96214c7f13f36bd7669a9142824ab Mon Sep 17 00:00:00 2001
|
||||||
|
From: "Richard W.M. Jones" <rjones@redhat.com>
|
||||||
|
Date: Mon, 7 Aug 2023 10:21:54 +0100
|
||||||
|
Subject: [PATCH 1/3] ruby: Replace MiniTest with Minitest
|
||||||
|
|
||||||
|
Apparently the old MiniTest module is somewhat ancient. Use "new"
|
||||||
|
Minitest module instead. This was broken by the following change in
|
||||||
|
minitest 5.19:
|
||||||
|
|
||||||
|
https://github.com/minitest/minitest/commit/a2c6c18570f6f0a1bf6af70fe3b6d9599a13fdd6
|
||||||
|
|
||||||
|
Fixes: https://bugzilla.redhat.com/show_bug.cgi?id=2229653
|
||||||
|
---
|
||||||
|
ruby/tests/tc_010_load.rb | 2 +-
|
||||||
|
ruby/tests/tc_021_close.rb | 2 +-
|
||||||
|
ruby/tests/tc_120_rlenvalue.rb | 2 +-
|
||||||
|
ruby/tests/tc_130_special.rb | 2 +-
|
||||||
|
ruby/tests/tc_200_write.rb | 2 +-
|
||||||
|
ruby/tests/tc_210_setvalue.rb | 2 +-
|
||||||
|
6 files changed, 6 insertions(+), 6 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/ruby/tests/tc_010_load.rb b/ruby/tests/tc_010_load.rb
|
||||||
|
index 76fef60..58fac33 100644
|
||||||
|
--- a/ruby/tests/tc_010_load.rb
|
||||||
|
+++ b/ruby/tests/tc_010_load.rb
|
||||||
|
@@ -17,7 +17,7 @@
|
||||||
|
|
||||||
|
require File::join(File::dirname(__FILE__), 'test_helper')
|
||||||
|
|
||||||
|
-class TestLoad < MiniTest::Unit::TestCase
|
||||||
|
+class TestLoad < Minitest::Test
|
||||||
|
def test_load
|
||||||
|
h = Hivex::open("../images/minimal", {})
|
||||||
|
refute_nil (h)
|
||||||
|
diff --git a/ruby/tests/tc_021_close.rb b/ruby/tests/tc_021_close.rb
|
||||||
|
index 38b88a9..bc8f79d 100644
|
||||||
|
--- a/ruby/tests/tc_021_close.rb
|
||||||
|
+++ b/ruby/tests/tc_021_close.rb
|
||||||
|
@@ -17,7 +17,7 @@
|
||||||
|
|
||||||
|
require File::join(File::dirname(__FILE__), 'test_helper')
|
||||||
|
|
||||||
|
-class TestClose < MiniTest::Unit::TestCase
|
||||||
|
+class TestClose < Minitest::Test
|
||||||
|
def test_close
|
||||||
|
h = Hivex::open("../images/minimal", {})
|
||||||
|
refute_nil (h)
|
||||||
|
diff --git a/ruby/tests/tc_120_rlenvalue.rb b/ruby/tests/tc_120_rlenvalue.rb
|
||||||
|
index 6a2fb72..ee881bb 100644
|
||||||
|
--- a/ruby/tests/tc_120_rlenvalue.rb
|
||||||
|
+++ b/ruby/tests/tc_120_rlenvalue.rb
|
||||||
|
@@ -23,7 +23,7 @@
|
||||||
|
|
||||||
|
require File::join(File::dirname(__FILE__), 'test_helper')
|
||||||
|
|
||||||
|
-class TestRLenValue < MiniTest::Unit::TestCase
|
||||||
|
+class TestRLenValue < Minitest::Test
|
||||||
|
def test_RLenValue
|
||||||
|
h = Hivex::open(File::join(ENV['abs_srcdir'], '..', 'images', 'rlenvalue_test_hive'), {})
|
||||||
|
refute_nil(h)
|
||||||
|
diff --git a/ruby/tests/tc_130_special.rb b/ruby/tests/tc_130_special.rb
|
||||||
|
index 7570824..6179f51 100644
|
||||||
|
--- a/ruby/tests/tc_130_special.rb
|
||||||
|
+++ b/ruby/tests/tc_130_special.rb
|
||||||
|
@@ -3,7 +3,7 @@
|
||||||
|
|
||||||
|
require File::join(File::dirname(__FILE__), 'test_helper')
|
||||||
|
|
||||||
|
-class TestRLenValue < MiniTest::Unit::TestCase
|
||||||
|
+class TestRLenValue < Minitest::Test
|
||||||
|
def test_RLenValue
|
||||||
|
h = Hivex::open(File::join(ENV['abs_srcdir'], '..', 'images', 'special'), {})
|
||||||
|
refute_nil(h)
|
||||||
|
diff --git a/ruby/tests/tc_200_write.rb b/ruby/tests/tc_200_write.rb
|
||||||
|
index 463283e..a713d77 100644
|
||||||
|
--- a/ruby/tests/tc_200_write.rb
|
||||||
|
+++ b/ruby/tests/tc_200_write.rb
|
||||||
|
@@ -17,7 +17,7 @@
|
||||||
|
|
||||||
|
require File::join(File::dirname(__FILE__), 'test_helper')
|
||||||
|
|
||||||
|
-class TestWrite < MiniTest::Unit::TestCase
|
||||||
|
+class TestWrite < Minitest::Test
|
||||||
|
def test_write
|
||||||
|
h = Hivex::open("../images/minimal", {:write => 1})
|
||||||
|
refute_nil (h)
|
||||||
|
diff --git a/ruby/tests/tc_210_setvalue.rb b/ruby/tests/tc_210_setvalue.rb
|
||||||
|
index 736b073..2ffd07b 100644
|
||||||
|
--- a/ruby/tests/tc_210_setvalue.rb
|
||||||
|
+++ b/ruby/tests/tc_210_setvalue.rb
|
||||||
|
@@ -17,7 +17,7 @@
|
||||||
|
|
||||||
|
require File::join(File::dirname(__FILE__), 'test_helper')
|
||||||
|
|
||||||
|
-class TestSetValue < MiniTest::Unit::TestCase
|
||||||
|
+class TestSetValue < Minitest::Test
|
||||||
|
def test_set_value
|
||||||
|
h = Hivex::open("../images/minimal", {:write => 1})
|
||||||
|
refute_nil (h)
|
||||||
|
--
|
||||||
|
2.41.0
|
||||||
|
|
160
0002-ruby-Get-rid-of-old-Test-Unit-compatibility.patch
Normal file
160
0002-ruby-Get-rid-of-old-Test-Unit-compatibility.patch
Normal file
@ -0,0 +1,160 @@
|
|||||||
|
From 6dbbc474d3df5cdfd21ed5e692b3a58136fffc42 Mon Sep 17 00:00:00 2001
|
||||||
|
From: "Richard W.M. Jones" <rjones@redhat.com>
|
||||||
|
Date: Mon, 7 Aug 2023 10:41:26 +0100
|
||||||
|
Subject: [PATCH 2/3] ruby: Get rid of old Test::Unit compatibility
|
||||||
|
|
||||||
|
Minitest is now required to run the Ruby unit tests.
|
||||||
|
|
||||||
|
This compatibility was added back in commit 3f3bc6af07 ("ruby: tests:
|
||||||
|
convert from Test::Unit to MiniTest (RHBZ#1090407)", 2014), but is
|
||||||
|
broken by the change from MiniTest to Minitest.
|
||||||
|
---
|
||||||
|
ruby/Makefile.am | 3 +--
|
||||||
|
ruby/tests/tc_010_load.rb | 3 ++-
|
||||||
|
ruby/tests/tc_021_close.rb | 3 ++-
|
||||||
|
ruby/tests/tc_120_rlenvalue.rb | 3 ++-
|
||||||
|
ruby/tests/tc_130_special.rb | 3 ++-
|
||||||
|
ruby/tests/tc_200_write.rb | 3 ++-
|
||||||
|
ruby/tests/tc_210_setvalue.rb | 3 ++-
|
||||||
|
ruby/tests/test_helper.rb | 31 -------------------------------
|
||||||
|
8 files changed, 13 insertions(+), 39 deletions(-)
|
||||||
|
delete mode 100644 ruby/tests/test_helper.rb
|
||||||
|
|
||||||
|
diff --git a/ruby/Makefile.am b/ruby/Makefile.am
|
||||||
|
index 0e9a868..7a5fe42 100644
|
||||||
|
--- a/ruby/Makefile.am
|
||||||
|
+++ b/ruby/Makefile.am
|
||||||
|
@@ -23,8 +23,7 @@ EXTRA_DIST = \
|
||||||
|
ext/hivex/_hivex.c \
|
||||||
|
lib/hivex.rb \
|
||||||
|
run-ruby-tests \
|
||||||
|
- tests/tc_*.rb \
|
||||||
|
- tests/test_helper.rb
|
||||||
|
+ tests/tc_*.rb
|
||||||
|
|
||||||
|
CLEANFILES = \
|
||||||
|
lib/*~ \
|
||||||
|
diff --git a/ruby/tests/tc_010_load.rb b/ruby/tests/tc_010_load.rb
|
||||||
|
index 58fac33..8efac36 100644
|
||||||
|
--- a/ruby/tests/tc_010_load.rb
|
||||||
|
+++ b/ruby/tests/tc_010_load.rb
|
||||||
|
@@ -15,7 +15,8 @@
|
||||||
|
# along with this program; if not, write to the Free Software
|
||||||
|
# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||||
|
|
||||||
|
-require File::join(File::dirname(__FILE__), 'test_helper')
|
||||||
|
+require 'minitest/autorun'
|
||||||
|
+require 'hivex'
|
||||||
|
|
||||||
|
class TestLoad < Minitest::Test
|
||||||
|
def test_load
|
||||||
|
diff --git a/ruby/tests/tc_021_close.rb b/ruby/tests/tc_021_close.rb
|
||||||
|
index bc8f79d..b3aaa10 100644
|
||||||
|
--- a/ruby/tests/tc_021_close.rb
|
||||||
|
+++ b/ruby/tests/tc_021_close.rb
|
||||||
|
@@ -15,7 +15,8 @@
|
||||||
|
# along with this program; if not, write to the Free Software
|
||||||
|
# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||||
|
|
||||||
|
-require File::join(File::dirname(__FILE__), 'test_helper')
|
||||||
|
+require 'minitest/autorun'
|
||||||
|
+require 'hivex'
|
||||||
|
|
||||||
|
class TestClose < Minitest::Test
|
||||||
|
def test_close
|
||||||
|
diff --git a/ruby/tests/tc_120_rlenvalue.rb b/ruby/tests/tc_120_rlenvalue.rb
|
||||||
|
index ee881bb..f40735d 100644
|
||||||
|
--- a/ruby/tests/tc_120_rlenvalue.rb
|
||||||
|
+++ b/ruby/tests/tc_120_rlenvalue.rb
|
||||||
|
@@ -21,7 +21,8 @@
|
||||||
|
# length and offset for this value cell should be 37 bytes, position
|
||||||
|
# 8712.
|
||||||
|
|
||||||
|
-require File::join(File::dirname(__FILE__), 'test_helper')
|
||||||
|
+require 'minitest/autorun'
|
||||||
|
+require 'hivex'
|
||||||
|
|
||||||
|
class TestRLenValue < Minitest::Test
|
||||||
|
def test_RLenValue
|
||||||
|
diff --git a/ruby/tests/tc_130_special.rb b/ruby/tests/tc_130_special.rb
|
||||||
|
index 6179f51..49a635b 100644
|
||||||
|
--- a/ruby/tests/tc_130_special.rb
|
||||||
|
+++ b/ruby/tests/tc_130_special.rb
|
||||||
|
@@ -1,7 +1,8 @@
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
# -*- ruby -*-
|
||||||
|
|
||||||
|
-require File::join(File::dirname(__FILE__), 'test_helper')
|
||||||
|
+require 'minitest/autorun'
|
||||||
|
+require 'hivex'
|
||||||
|
|
||||||
|
class TestRLenValue < Minitest::Test
|
||||||
|
def test_RLenValue
|
||||||
|
diff --git a/ruby/tests/tc_200_write.rb b/ruby/tests/tc_200_write.rb
|
||||||
|
index a713d77..4ce0586 100644
|
||||||
|
--- a/ruby/tests/tc_200_write.rb
|
||||||
|
+++ b/ruby/tests/tc_200_write.rb
|
||||||
|
@@ -15,7 +15,8 @@
|
||||||
|
# along with this program; if not, write to the Free Software
|
||||||
|
# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||||
|
|
||||||
|
-require File::join(File::dirname(__FILE__), 'test_helper')
|
||||||
|
+require 'minitest/autorun'
|
||||||
|
+require 'hivex'
|
||||||
|
|
||||||
|
class TestWrite < Minitest::Test
|
||||||
|
def test_write
|
||||||
|
diff --git a/ruby/tests/tc_210_setvalue.rb b/ruby/tests/tc_210_setvalue.rb
|
||||||
|
index 2ffd07b..c3624ef 100644
|
||||||
|
--- a/ruby/tests/tc_210_setvalue.rb
|
||||||
|
+++ b/ruby/tests/tc_210_setvalue.rb
|
||||||
|
@@ -15,7 +15,8 @@
|
||||||
|
# along with this program; if not, write to the Free Software
|
||||||
|
# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||||
|
|
||||||
|
-require File::join(File::dirname(__FILE__), 'test_helper')
|
||||||
|
+require 'minitest/autorun'
|
||||||
|
+require 'hivex'
|
||||||
|
|
||||||
|
class TestSetValue < Minitest::Test
|
||||||
|
def test_set_value
|
||||||
|
diff --git a/ruby/tests/test_helper.rb b/ruby/tests/test_helper.rb
|
||||||
|
deleted file mode 100644
|
||||||
|
index f939b94..0000000
|
||||||
|
--- a/ruby/tests/test_helper.rb
|
||||||
|
+++ /dev/null
|
||||||
|
@@ -1,31 +0,0 @@
|
||||||
|
-# hivex Ruby bindings -*- ruby -*-
|
||||||
|
-# Copyright (C) 2009-2014 Red Hat Inc.
|
||||||
|
-#
|
||||||
|
-# This program is free software; you can redistribute it and/or modify
|
||||||
|
-# it under the terms of the GNU General Public License as published by
|
||||||
|
-# the Free Software Foundation; either version 2 of the License, or
|
||||||
|
-# (at your option) any later version.
|
||||||
|
-#
|
||||||
|
-# This program is distributed in the hope that it will be useful,
|
||||||
|
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
-# GNU General Public License for more details.
|
||||||
|
-#
|
||||||
|
-# You should have received a copy of the GNU General Public License
|
||||||
|
-# along with this program; if not, write to the Free Software
|
||||||
|
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||||
|
-
|
||||||
|
-begin
|
||||||
|
- require 'minitest/autorun'
|
||||||
|
-rescue LoadError
|
||||||
|
- require 'test/unit'
|
||||||
|
- MiniTest = Test
|
||||||
|
- module Test
|
||||||
|
- Assertions = Unit::Assertions
|
||||||
|
- module Assertions
|
||||||
|
- alias refute_nil assert_not_nil
|
||||||
|
- end
|
||||||
|
- end
|
||||||
|
-end
|
||||||
|
-
|
||||||
|
-require 'hivex'
|
||||||
|
--
|
||||||
|
2.41.0
|
||||||
|
|
80
0003-build-Go-back-to-gettext-0.19.patch
Normal file
80
0003-build-Go-back-to-gettext-0.19.patch
Normal file
@ -0,0 +1,80 @@
|
|||||||
|
From 326399ceef0c904f78cdd5da17f7ca724292b4f8 Mon Sep 17 00:00:00 2001
|
||||||
|
From: "Richard W.M. Jones" <rjones@redhat.com>
|
||||||
|
Date: Mon, 7 Aug 2023 10:36:46 +0100
|
||||||
|
Subject: [PATCH 3/3] build: Go back to gettext 0.19
|
||||||
|
|
||||||
|
Commit 850feece ("build: Remove gnulib") unintentionally(?) moved to
|
||||||
|
GNU gettext 0.21. However this is not available in RHEL 8, and
|
||||||
|
doesn't contain any new features we need. Go back to 0.19 from RHEL 8.
|
||||||
|
|
||||||
|
Update: commit 850feece47b052e568392e83bff2bcdb2886f14d
|
||||||
|
---
|
||||||
|
configure.ac | 2 +-
|
||||||
|
po/Makevars.template | 29 -----------------------------
|
||||||
|
2 files changed, 1 insertion(+), 30 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/configure.ac b/configure.ac
|
||||||
|
index 946c261..7a8b664 100644
|
||||||
|
--- a/configure.ac
|
||||||
|
+++ b/configure.ac
|
||||||
|
@@ -136,7 +136,7 @@ AS_IF([test "x$with_readline" != xno],
|
||||||
|
|
||||||
|
dnl For i18n.
|
||||||
|
AM_GNU_GETTEXT([external])
|
||||||
|
-AM_GNU_GETTEXT_VERSION([0.21])
|
||||||
|
+AM_GNU_GETTEXT_VERSION([0.19])
|
||||||
|
AM_ICONV
|
||||||
|
|
||||||
|
dnl libxml2 (optional).
|
||||||
|
diff --git a/po/Makevars.template b/po/Makevars.template
|
||||||
|
index 86a11f1..4a9ff7d 100644
|
||||||
|
--- a/po/Makevars.template
|
||||||
|
+++ b/po/Makevars.template
|
||||||
|
@@ -1,8 +1,4 @@
|
||||||
|
# Makefile variables for PO directory in any package using GNU gettext.
|
||||||
|
-#
|
||||||
|
-# Copyright (C) 2003-2019 Free Software Foundation, Inc.
|
||||||
|
-# This file is free software; the Free Software Foundation gives
|
||||||
|
-# unlimited permission to use, copy, distribute, and modify it.
|
||||||
|
|
||||||
|
# Usually the message domain is the same as the package name.
|
||||||
|
DOMAIN = $(PACKAGE)
|
||||||
|
@@ -24,13 +20,6 @@ XGETTEXT_OPTIONS = --keyword=_ --keyword=N_
|
||||||
|
# their copyright.
|
||||||
|
COPYRIGHT_HOLDER = Free Software Foundation, Inc.
|
||||||
|
|
||||||
|
-# This tells whether or not to prepend "GNU " prefix to the package
|
||||||
|
-# name that gets inserted into the header of the $(DOMAIN).pot file.
|
||||||
|
-# Possible values are "yes", "no", or empty. If it is empty, try to
|
||||||
|
-# detect it automatically by scanning the files in $(top_srcdir) for
|
||||||
|
-# "GNU packagename" string.
|
||||||
|
-PACKAGE_GNU =
|
||||||
|
-
|
||||||
|
# This is the email address or URL to which the translators shall report
|
||||||
|
# bugs in the untranslated strings:
|
||||||
|
# - Strings which are not entire sentences, see the maintainer guidelines
|
||||||
|
@@ -62,21 +51,3 @@ USE_MSGCTXT = no
|
||||||
|
# --previous to keep previous msgids of translated messages,
|
||||||
|
# --quiet to reduce the verbosity.
|
||||||
|
MSGMERGE_OPTIONS =
|
||||||
|
-
|
||||||
|
-# These options get passed to msginit.
|
||||||
|
-# If you want to disable line wrapping when writing PO files, add
|
||||||
|
-# --no-wrap to MSGMERGE_OPTIONS, XGETTEXT_OPTIONS, and
|
||||||
|
-# MSGINIT_OPTIONS.
|
||||||
|
-MSGINIT_OPTIONS =
|
||||||
|
-
|
||||||
|
-# This tells whether or not to regenerate a PO file when $(DOMAIN).pot
|
||||||
|
-# has changed. Possible values are "yes" and "no". Set this to no if
|
||||||
|
-# the POT file is checked in the repository and the version control
|
||||||
|
-# program ignores timestamps.
|
||||||
|
-PO_DEPENDS_ON_POT = yes
|
||||||
|
-
|
||||||
|
-# This tells whether or not to forcibly update $(DOMAIN).pot and
|
||||||
|
-# regenerate PO files on "make dist". Possible values are "yes" and
|
||||||
|
-# "no". Set this to no if the POT file and PO files are maintained
|
||||||
|
-# externally.
|
||||||
|
-DIST_DEPENDS_ON_UPDATE_PO = yes
|
||||||
|
--
|
||||||
|
2.41.0
|
||||||
|
|
12
hivex.spec
12
hivex.spec
@ -10,7 +10,7 @@
|
|||||||
|
|
||||||
Name: hivex
|
Name: hivex
|
||||||
Version: 1.3.23
|
Version: 1.3.23
|
||||||
Release: 11%{?dist}
|
Release: 12%{?dist}
|
||||||
Summary: Read and write Windows Registry binary hive files
|
Summary: Read and write Windows Registry binary hive files
|
||||||
|
|
||||||
License: LGPL-2.1 AND LGPL-2.0-or-later AND GPL-2.0-or-later
|
License: LGPL-2.1 AND LGPL-2.0-or-later AND GPL-2.0-or-later
|
||||||
@ -26,6 +26,13 @@ Source1: http://libguestfs.org/download/hivex/%{name}-%{version}.tar.gz.s
|
|||||||
Source2: libguestfs.keyring
|
Source2: libguestfs.keyring
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
|
# Upstream patches to fix Ruby minitest support.
|
||||||
|
# https://bugzilla.redhat.com/show_bug.cgi?id=2229653
|
||||||
|
Patch: 0001-ruby-Replace-MiniTest-with-Minitest.patch
|
||||||
|
Patch: 0002-ruby-Get-rid-of-old-Test-Unit-compatibility.patch
|
||||||
|
# Another upstream patch, not required.
|
||||||
|
Patch: 0003-build-Go-back-to-gettext-0.19.patch
|
||||||
|
|
||||||
BuildRequires: make
|
BuildRequires: make
|
||||||
BuildRequires: autoconf, automake, libtool, gettext-devel
|
BuildRequires: autoconf, automake, libtool, gettext-devel
|
||||||
BuildRequires: perl-interpreter
|
BuildRequires: perl-interpreter
|
||||||
@ -319,6 +326,9 @@ fi
|
|||||||
|
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Mon Aug 07 2023 Richard W.M. Jones <rjones@redhat.com> - 1.3.23-12
|
||||||
|
- Fix Ruby minitest support (RHBZ#2229653)
|
||||||
|
|
||||||
* Thu Jul 20 2023 Fedora Release Engineering <releng@fedoraproject.org> - 1.3.23-11
|
* Thu Jul 20 2023 Fedora Release Engineering <releng@fedoraproject.org> - 1.3.23-11
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user