Your message dated Wed, 02 Oct 2019 15:50:01 +0000
with message-id <e1ifgt7-000gmv...@fasolo.debian.org>
and subject line Bug#940159: fixed in realmd 0.16.3-3
has caused the Debian Bug report #940159,
regarding realmd: FTBFS with GLib 2.62: ERROR: missing test
to be marked as done.
This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.
(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact ow...@bugs.debian.org
immediately.)
--
940159: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=940159
Debian Bug Tracking System
Contact ow...@bugs.debian.org with problems
--- Begin Message ---
Source: realmd
Version: 0.16.3-2
Severity: important
Tags: ftbfs bullseye sid patch fixed-upstream
When built against GLib 2.62, realmd FTBFS with test failures like this:
> make check-TESTS
> make[4]: Entering directory '/<<PKGBUILDDIR>>'
> make[5]: Entering directory '/<<PKGBUILDDIR>>'
> ERROR: test-dn-util 1 - missing test
> ERROR: test-dn-util 2 - missing test
> ERROR: test-dn-util 3 - missing test
> ERROR: test-dn-util 4 - missing test
> ...
This is because it has essentially the same bug that was recently fixed
in gcr: its test scripts (taken from Cockpit) assume GLib tests default to
GTester output syntax (and translate it into TAP in a wrapper script), but
in GLib 2.62+, GLib tests default to TAP (which the wrapper cannot parse).
GLib 2.62 is currently only available in experimental, but we should
upload it to unstable soon.
Fixed upstream in:
https://gitlab.freedesktop.org/realmd/realmd/commit/5ae42c176e7bb550fc6cf10f29e75f58c733ae4f
smcv
>From 5ae42c176e7bb550fc6cf10f29e75f58c733ae4f Mon Sep 17 00:00:00 2001
From: Sumit Bose <sb...@redhat.com>
Date: Fri, 2 Aug 2019 12:10:43 +0200
Subject: [PATCH] Remove support for deprecated gtester format
Support for the already deprecated gtester format was remove from recent
versions of glib2 but the test still call the tab-gtester conversion
tool.
This patch removes tab-gtester and the tab format is used directly.
Related to https://gitlab.freedesktop.org/realmd/realmd/issues/21
---
Makefile.am | 3 +-
build/tap-gtester | 204 ----------------------------------------------
2 files changed, 1 insertion(+), 206 deletions(-)
delete mode 100755 build/tap-gtester
diff --git a/Makefile.am b/Makefile.am
index 27e3494..4ffd5b4 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -161,7 +161,7 @@ endif
#
LOG_DRIVER = $(top_srcdir)/build/tap-driver
-LOG_COMPILER = $(top_srcdir)/build/tap-gtester
+LOG_COMPILER = sh -c '"$$0" "$$@" --tap'
VALGRIND_ARGS = --trace-children=no --quiet --error-exitcode=33 \
--suppressions=valgrind-suppressions --gen-suppressions=all \
@@ -183,7 +183,6 @@ recheck-memory: valgrind-suppressions
EXTRA_DIST += \
$(LOG_DRIVER) \
- $(LOG_COMPILER) \
$(VALGRIND_SUPPRESSIONS) \
$(NULL)
diff --git a/build/tap-gtester b/build/tap-gtester
deleted file mode 100755
index bbda266..0000000
--- a/build/tap-gtester
+++ /dev/null
@@ -1,204 +0,0 @@
-#!/usr/bin/python3
-# This can also be run with Python 2.
-
-# Copyright (C) 2014 Red Hat, Inc.
-#
-# Cockpit is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-#
-# Cockpit 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
-# Lesser General Public License for more details.
-#
-# You should have received a copy of the GNU Lesser General Public License
-# along with Cockpit; If not, see <http://www.gnu.org/licenses/>.
-
-#
-# This is a test output compiler which produces TAP from GTest output
-# if GTest output is detected.
-#
-# Versions of glib later than 2.38.x output TAP natively when tests are
-# run with the --tap option. However we can't depend on such a recent
-# version of glib for our purposes.
-#
-# This implements the Test Anything Protocol (ie: TAP)
-# https://metacpan.org/pod/release/PETDANCE/Test-Harness-2.64/lib/Test/Harness/TAP.pod
-#
-
-import argparse
-import os
-import select
-import signal
-import subprocess
-import sys
-
-# Yes, it's dumb, but strsignal is not exposed in python
-# In addition signal numbers varify heavily from arch to arch
-def strsignal(sig):
- for name in dir(signal):
- if name.startswith("SIG") and sig == getattr(signal, name):
- return name
- return str(sig)
-
-
-class NullCompiler:
- def __init__(self, command):
- self.command = command
-
- def input(self, line):
- sys.stdout.write(line)
-
- def process(self, proc):
- while True:
- line = proc.stdout.readline()
- if not line:
- break
- self.input(line)
- proc.wait()
- return proc.returncode
-
- def run(self, proc, line=None):
- if line:
- self.input(line)
- return self.process(proc)
-
-
-class GTestCompiler(NullCompiler):
- def __init__(self, filename):
- NullCompiler.__init__(self, filename)
- self.test_num = 0
- self.test_name = None
- self.test_remaining = []
-
- def input(self, line):
- line = line.strip()
- if line.startswith("GTest: "):
- (cmd, unused, data) = line[7:].partition(": ")
- cmd = cmd.strip()
- data = data.strip()
- if cmd == "run":
- self.test_name = data
- assert self.test_name in self.test_remaining, "%s %s" % (self.test_name, repr(self.test_remaining))
- self.test_remaining.remove(self.test_name)
- self.test_num += 1
- elif cmd == "result":
- if self.test_name:
- if data == "OK":
- print("ok %d %s" % (self.test_num, self.test_name))
- if data == "FAIL":
- print("not ok %d %s" % (self.test_num, self.test_name))
- self.test_name = None
- elif cmd == "skipping":
- if "/subprocess" not in data:
- print("ok %d # skip -- %s" % (self.test_num, data))
- self.test_name = None
- elif data:
- print("# %s: %s" % (cmd, data))
- else:
- print("# %s" % cmd)
- elif line.startswith("(MSG: "):
- print("# %s" % line[6:-1])
- elif line:
- print("# %s" % line)
- sys.stdout.flush()
-
- def run(self, proc, output=""):
- # Complete retrieval of the list of tests
- output += proc.stdout.read()
- proc.wait()
- if proc.returncode:
- sys.stderr.write("tap-gtester: listing GTest tests failed: %d\n" % proc.returncode)
- return proc.returncode
- self.test_remaining = []
- for line in output.split("\n"):
- if line.startswith("/"):
- self.test_remaining.append(line.strip())
- if not self.test_remaining:
- print("Bail out! No tests found in GTest: %s" % self.command[0])
- return 0
-
- print("1..%d" % len(self.test_remaining))
-
- # First try to run all the tests in a batch
- proc = subprocess.Popen(self.command + ["--verbose" ], close_fds=True,
- stdout=subprocess.PIPE, universal_newlines=True)
- result = self.process(proc)
- if result == 0:
- return 0
-
- if result < 0:
- sys.stderr.write("%s terminated with %s\n" % (self.command[0], strsignal(-result)))
-
- # Now pick up any stragglers due to failures
- while True:
- # Assume that the last test failed
- if self.test_name:
- print("not ok %d %s" % (self.test_num, self.test_name))
- self.test_name = None
-
- # Run any tests which didn't get run
- if not self.test_remaining:
- break
-
- proc = subprocess.Popen(self.command + ["--verbose", "-p", self.test_remaining[0]],
- close_fds=True, stdout=subprocess.PIPE,
- universal_newlines=True)
- result = self.process(proc)
-
- # The various exit codes and signals we continue for
- if result not in [ 0, 1, -4, -5, -6, -7, -8, -11, 33 ]:
- break
-
- return result
-
-def main(argv):
- parser = argparse.ArgumentParser(description='Automake TAP compiler',
- usage="tap-gtester [--format FORMAT] command ...")
- parser.add_argument('--format', metavar='FORMAT', choices=[ "auto", "gtest", "tap" ],
- default="auto", help='The input format to compile')
- parser.add_argument('--verbose', action='store_true',
- default=True, help='Verbose mode (ignored)')
- parser.add_argument('command', nargs=argparse.REMAINDER, help="A test command to run")
- args = parser.parse_args(argv[1:])
-
- output = None
- format = args.format
- cmd = args.command
- if not cmd:
- sys.stderr.write("tap-gtester: specify a command to run\n")
- return 2
- if cmd[0] == '--':
- cmd.pop(0)
-
- proc = None
-
- os.environ['HARNESS_ACTIVE'] = '1'
-
- if format in ["auto", "gtest"]:
- list_cmd = cmd + ["-l", "--verbose"]
- proc = subprocess.Popen(list_cmd, close_fds=True, stdout=subprocess.PIPE,
- universal_newlines=True)
- output = proc.stdout.readline()
- # Smell whether we're dealing with GTest list output from first line
- if "random seed" in output or "GTest" in output or output.startswith("/"):
- format = "gtest"
- else:
- format = "tap"
- else:
- proc = subprocess.Popen(cmd, close_fds=True, stdout=subprocess.PIPE,
- universal_newlines=True)
-
- if format == "gtest":
- compiler = GTestCompiler(cmd)
- elif format == "tap":
- compiler = NullCompiler(cmd)
- else:
- assert False, "not reached"
-
- return compiler.run(proc, output)
-
-if __name__ == "__main__":
- sys.exit(main(sys.argv))
--
2.22.0
--- End Message ---
--- Begin Message ---
Source: realmd
Source-Version: 0.16.3-3
We believe that the bug you reported is fixed in the latest version of
realmd, which is due to be installed in the Debian FTP archive.
A summary of the changes between this version and the previous one is
attached.
Thank you for reporting the bug, which will now be closed. If you
have further comments please address them to 940...@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.
Debian distribution maintenance software
pp.
Laurent Bigonville <bi...@debian.org> (supplier of updated realmd package)
(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmas...@ftp-master.debian.org)
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
Format: 1.8
Date: Wed, 02 Oct 2019 17:26:19 +0200
Source: realmd
Architecture: source
Version: 0.16.3-3
Distribution: unstable
Urgency: medium
Maintainer: Utopia Maintenance Team
<pkg-utopia-maintain...@lists.alioth.debian.org>
Changed-By: Laurent Bigonville <bi...@debian.org>
Closes: 935294 938339 940159
Changes:
realmd (0.16.3-3) unstable; urgency=medium
.
[ Andreas Henriksson ]
* Switch to using python3 during build (Closes: #938339)
* Cherry-pick patch from upstream to fix test failure (Closes: #935294)
.
[ Laurent Bigonville ]
* Fix FTBFS with glib 2.62 (patch from upstream) (Closes: #940159)
* debian/control: Bump Standards-Version to 4.4.1 (no further changes)
* Bump debhelper compatibility to 12
Checksums-Sha1:
1907524a50cf629256053e92e6b6c9889b206155 1763 realmd_0.16.3-3.dsc
765dddb210ebcc679ca0dc3ad638623ef47f7194 25892 realmd_0.16.3-3.debian.tar.xz
781e5a6a49936de0b5461e1aa16891257cc50002 6235 realmd_0.16.3-3_source.buildinfo
Checksums-Sha256:
7b4562d78f01f3d799cc3a207608aa68051c03fd941421ea334d0b5fba5c6a66 1763
realmd_0.16.3-3.dsc
da934b3c88f62c5331681408e8590217f31f052f2682abfa27e2143e3bbceda6 25892
realmd_0.16.3-3.debian.tar.xz
5fbcbcf8476b52e88fe02df77f8530f68d8eea3d1e3e08c42522e4589b511480 6235
realmd_0.16.3-3_source.buildinfo
Files:
376dea1174bbf70caffe01f0f6990b18 1763 admin optional realmd_0.16.3-3.dsc
a817cc1d202f6c2102a99f39deaf77ba 25892 admin optional
realmd_0.16.3-3.debian.tar.xz
59bf4fa199b883b16c7d6e344f86a7d1 6235 admin optional
realmd_0.16.3-3_source.buildinfo
-----BEGIN PGP SIGNATURE-----
iQFFBAEBCAAvFiEEmRrdqQAhuF2x31DwH8WJHrqwQ9UFAl2UwbARHGJpZ29uQGRl
Ymlhbi5vcmcACgkQH8WJHrqwQ9XJeQf/QDiPAhsSnl+/JRyOu+IkU033nWG1dIQ9
glcsKx1+/juaPuDJFMLt+h1g1Q+Jz/9g08M93EPGsa30hJ41gMv4t1wLR+km/Fa9
99QrDRSd2W7eXE9H5yubKu+Ctwenk7cAeeij5xj+N3b665KuKQOQbq+SUsQIKKyQ
LPvs6Q11IMPe8rppLdYuidt8hpE8TfxgS5+UyPkpkig+UUif52HRWNS/eyqNhJkT
2C4oqy8/IQmaNTTV3Ex9r6Xd1LrpZQ7WNrahwmuIa5u4GpLM8MwIeWGJpZUZ/yS+
m/bCFfw0ngxC/Vm2A/h3L2jP7GHmIFB529K1oOQPmtCYO5yJxXC+LQ==
=aq2P
-----END PGP SIGNATURE-----
--- End Message ---