Commits (6)
diffoscope (157) UNRELEASED; urgency=medium
diffoscope (157) unstable; urgency=medium
* WIP (generated upon release).
[ Chris Lamb ]
-- Chris Lamb <lamby@debian.org> Fri, 14 Aug 2020 10:09:26 +0100
* Try obsensibly "data" files named .pgp against pgpdump to determine whether
they are PGP files. (Closes: reproducible-builds/diffoscope#211)
* Don't raise an exception when we encounter XML files with "<!ENTITY>"
declarations inside the DTD, or when a DTD or entity references an external
resource. (Closes: reproducible-builds/diffoscope#212)
* Temporarily drop gnumeric from Build-Depends as it has been removed from
testing due to Python 2.x deprecation. (Closes: #968742)
* Codebase changes:
- Add support for multiple file extension matching; we previously supported
only a single extension to match.
- Move generation of debian/tests/control.tmp to an external script.
- Move to our assert_diff helper entirely in the PGP tests.
- Drop some unnecessary control flow, unnecessary dictionary comprehensions
and some unused imports found via pylint.
* Include the filename in the "... not identified by any comparator"
logging message.
-- Chris Lamb <lamby@debian.org> Fri, 21 Aug 2020 12:24:25 +0100
diffoscope (156) unstable; urgency=medium
......
......@@ -31,7 +31,6 @@ Build-Depends:
ghc <!nocheck>,
ghostscript <!nocheck>,
giflib-tools <!nocheck>,
gnumeric <!nocheck>,
gnupg-utils <!nocheck>,
hdf5-tools <!nocheck>,
help2man,
......
......@@ -63,21 +63,7 @@ favicon.png: doc/logo.svg
inkscape -w 32 -h 32 -e $@ $<
override_dh_auto_clean:
@echo "Generating the debian/tests/control file..."
@echo "# DON'T MANUALLY MODIFY!" > debian/tests/control.tmp
@echo "# EDIT debian/tests/control.in INSTEAD!" >> debian/tests/control.tmp
@echo "#" >> debian/tests/control.tmp
@cat debian/tests/control.in >> debian/tests/control.tmp
@sed -i "s#%RECOMMENDS%#$(shell bin/diffoscope --list-debian-substvars | awk -F= '/diffoscope:Recommends/ { print $$2 }')#" debian/tests/control.tmp
@sed -i "s#%PYRECOMMENDS%#$(shell python3 -c "import distutils.core; \
setup = distutils.core.run_setup('setup.py'); \
print(', '.join(sorted(['python3-{}'.format(x) for y in setup.extras_require.values() for x in y])))" \
)#" debian/tests/control.tmp
@sed -i "s,python3-python-debian,python3-debian," debian/tests/control.tmp
@sed -i "s,python3-rpm-python,python3-rpm," debian/tests/control.tmp
@sed -i "s,apktool,apktool [!ppc64el !s390x]," debian/tests/control.tmp
@sed -i "s,fp-utils,fp-utils [!ppc64el !s390x]," debian/tests/control.tmp
@sed -i "s,oggvideotools,oggvideotools [!s390x]," debian/tests/control.tmp
debian/tests/control.sh
@set -e ; if ! diff -q debian/tests/control debian/tests/control.tmp ; then \
echo ;\
echo "The generated control file differs from the actual one." ;\
......
#!/bin/sh
echo "Generating the debian/tests/control file..."
echo "# DON'T MANUALLY MODIFY!" > debian/tests/control.tmp
echo "# EDIT debian/tests/control.in INSTEAD!" >> debian/tests/control.tmp
echo "#" >> debian/tests/control.tmp
cat debian/tests/control.in >> debian/tests/control.tmp
sed -i "s#%RECOMMENDS%#$(bin/diffoscope --list-debian-substvars | awk -F= '/diffoscope:Recommends/ { print $2 }')#" debian/tests/control.tmp
sed -i "s#%PYRECOMMENDS%#$(python3 -c "import distutils.core; \
setup = distutils.core.run_setup('setup.py'); \
print(', '.join(sorted(['python3-{}'.format(x) for y in setup.extras_require.values() for x in y])))" \
)#" debian/tests/control.tmp
sed -i "s,python3-python-debian,python3-debian," debian/tests/control.tmp
sed -i "s,python3-rpm-python,python3-rpm," debian/tests/control.tmp
sed -i "s,apktool,apktool [!ppc64el !s390x]," debian/tests/control.tmp
sed -i "s,fp-utils,fp-utils [!ppc64el !s390x]," debian/tests/control.tmp
sed -i "s,oggvideotools,oggvideotools [!s390x]," debian/tests/control.tmp
......@@ -18,4 +18,4 @@
# You should have received a copy of the GNU General Public License
# along with diffoscope. If not, see <https://www.gnu.org/licenses/>.
VERSION = "156"
VERSION = "157"
......@@ -56,7 +56,7 @@ def describe_cache_file(filename):
with open(filename, "rb") as f:
data = struct.unpack(fmt, f.read(struct.calcsize(fmt)))
kwargs = {x: y for x, y in zip(fields, data)}
kwargs = dict(zip(fields, data))
kwargs["dir_name"] = read_null_terminated_string(f, kwargs["dir"])
......
......@@ -37,10 +37,6 @@ from ..missing_file import MissingFile
from .command import Command
from .specialize import specialize
try:
import tlsh
except ImportError: # noqa
tlsh = None
logger = logging.getLogger(__name__)
......
......@@ -227,7 +227,7 @@ class FIFOFeeder(threading.Thread):
except OSError as e:
if e.errno != errno.ENXIO:
raise
elif self._want_join.is_set():
if self._want_join.is_set():
return
else:
break
......