./sysutils/py-diffoscope, In-depth comparison of files, archives, and directories

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]


Branch: CURRENT, Version: 255, Package name: py311-diffoscope-255, Maintainer: pkgsrc-users

diffoscope will try to get to the bottom of what makes files or
directories different. It will recursively unpack archives of many kinds
and transform various binary formats into more human readable form to
compare them. It can compare two tarballs, ISO images, or PDF just as
easily.

It can be scripted through error codes, and a report can be produced
with the detected differences. The report can be text or HTML.
When no type of report has been selected, diffoscope defaults
to write a text report on the standard output.

diffoscope will exit with 0 if there's no differences and 1 if there
are. An HTML report can be produced with the detected differences.

diffoscope is developed as part of the "reproducible builds" Debian
project.
It is meant to be able to quickly understand why two builds of the same
package produce different outputs. diffoscope was previously named
debbindiff.


Required to run:
[editors/vim] [archivers/gtar-base] [devel/py-curses] [devel/py-setuptools] [devel/colordiff] [sysutils/py-magic] [archivers/py-libarchive-c] [devel/py-tlsh] [lang/python37]

Required to build:
[pkgtools/cwrappers]

Master sites:

Filesize: 3096.236 KB

Version history: (Expand)


CVS history: (Expand)


   2024-01-28 22:04:45 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
py-diffoscope: updated to 255

255
* Add/fix compatibility for Python progressbar 2.5 & 3.0 etc.
* Update copyright years.
   2024-01-25 00:53:04 by Adam Ciarcinski | Files touched by this commit (3) | Package updated
Log message:
py-diffoscope: updated to 254

254

* Reflow some code according to black.
* Add support for comparing the 'eXtensible ARchive' (.XAR/.PKG) file format.
* Add external tool on GNU Guix for 7z.
   2024-01-20 17:03:03 by Thomas Klausner | Files touched by this commit (1)
Log message:
py-diffoscope: add missing tools
   2024-01-15 21:03:39 by Amitai Schleier | Files touched by this commit (3) | Package updated
Log message:
py-diffoscope: update to 253. Changes:

253:
- Improve DOS/MBR extraction by adding support for 7z.
  (Closes: reproducible-builds/diffoscope#333)
- Process objdump symbol comment filter inputs as the Python "bytes" type
  (and not str). (Closes: reproducible-builds/diffoscope#358)
- Add a missing RequiredToolNotFound import.
- Update copyright years.

252:
- As UI/UX improvement, try and avoid printing an extended traceback if
  diffoscope runs out of memory. This may not always be possible to detect.
- Mark diffoscope as stable in setup.py (for PyPI.org). Whatever diffoscope
  is, at least, not "alpha" anymore.

251:
- If the equivalent of `file -i` returns text/plain, fallback to comparing
  this file as a text file. This especially helps when file(1) miscategorises
  text files as some esoteric type. (Closes: Debian:#1053668)
- Update copyright years.

250:
- Fix compatibility with file 5.45. (Closes: reproducible-builds/diffoscope#351)
- Add external tool references for GNU Guix (for html2text and ttx).

249:
- Add specialize_as() method, and use it to speed up .smali comparison in
  APKs. (Closes: reproducible-builds/diffoscope!108)
- Add documentation for the new specialize_as, and expand the documentation
  of `specialize` too. (Re: reproducible-builds/diffoscope!108)
- Update copyright years.
- Correct typos in diffoscope/presenters/utils.py.

248:
- Merge Docker "RUN" commands into single layer.

247:
- Fix compataibility with file(1) version 5.45.
- Use assert_diff in test_uimage and test_cpio.
- xb-tool has moved in Debian bookworm.

246:
- Add support for LLVM 16.

245:
- Don't include file size in image metadata; it is, at best, distracting and
  it is already in the directory metadata.
- Move to using assert_diff in ICO and JPEG tests.
- Update copyright years.

244:
- Address compatibility with python-libarchive-c version 5.
  (Closes: reproducible-builds/diffoscope#344)
- Testsuite changes:
  - Mark that test_dex::test_javap_14_differences requires procyon.
  - Fix "test skipped" textual reason generation in the case of a required
    version being outside of the required range.
  - Temporarily mark some Android-related as XFAIL due to Debian bugs
    #1040941 and #1040916.

243:
- Drop Jenkins build reference in README.rst.
- Update FreeBSD package names
- Improve the documentation on to produce that binary blob that in the arsc
  comparator.

242:
- If the binwalk Python module is not available, ensure the user knows they
  may be missing more differences in, for example, concatenated .cpio
  archives.
- Factor out routine to generate a human-readable comments when
  Python modules are missing.

241:
- Add a missing 'raise' statement dropped in 2d95ae41e. Thanks, Mattia!
- document sending out an email upon release

240:
- Update Lintian override info format in debian/source/lintian-overrides.
- Add Lintian overrides for some "very long lines" in test cases.
- Update Lintian overrides for tests being tagged source-is-missing or
  prebuilt.
- Add Lintian override for very long lines for debian/tests/control.
- Re-add two Lintian overrides about (well-known) source-is-missing
  instances.
- Drop the use of include_package_data=True in setup.py.

239:
- Fix compatibility with pypdf 3.x, and correctly restore test data.
  (Closes: reproducible-builds/diffoscope#335)
- Rework PDF annotations processing into a separate method.

238:
- autopkgtest: fix tool name in the skippable list.

237:
- autopkgtest: only install aapt and dexdump on architectures where they are
  available. (Closes: #1031297)
- compartors/pdf:
  + Drop backward compatibility assignment.
  + Fix flake warnings, potentially reinstating PyPDF 1.x support (untested).

236:
- Update code to match latest version of Black. (Closes: #1031433)
- Require at least Black version 23.1.0 to run the internal Black tests.
- Update copyright years.

235:
- Update .gitlab-ci.yml to push versioned tags to the container registry.
  (Closes: reproducible-builds/diffoscope!119)
- Fix compatibility with PyPDF2. (Closes: reproducible-builds/diffoscope#331)
- Fix compatibility with ImageMagick 7.1.
  (Closes: reproducible-builds/diffoscope#330)
- Update from PyPDF2 to pypdf. (Closes: #1029741, #1029742)
- Add support for Android resources.arsc files.
  (Closes: reproducible-builds/diffoscope!116)
- Add support for dexdump. (Closes: reproducible-builds/diffoscope#134)
- Improve DexFile's FILE_TYPE_RE and add FILE_TYPE_HEADER_PREFIX, and remove
  "Dalvik dex file" from ApkFile's FILE_TYPE_RE as well.
- Update external tool for isoinfo on guix.
  (Closes: reproducible-builds/diffoscope!124)

234:
- test_text_proper_indentation requires at least file version 5.44.
  (Closes: reproducible-builds/diffoscope#329)

pkgsrc changes:
- Convert to wheel.mk.
   2023-01-28 01:50:28 by Pierre Pronchery | Files touched by this commit (2) | Package updated
Log message:
py-diffoscope: update to 233

Changes in version 233:

[ FC Stegerman ]
* Split packaging metadata into an extras_require.json file instead of using
  the pep517 and the pip modules directly. This was causing build failures if
  not using a virtualenv and/or building without internet access.
  (Closes: #1029066, reproducible-builds/diffoscope#325)

[ Vagrant Cascadian ]
* Add an external tool reference for GNU Guix (lzip).
* Drop an external tool reference for GNU Guix (pedump).

[ Chris Lamb ]
* Split inline Python code in shell script to generate test dependencies to a
  separate Python script.
* No need for "from __future__ import print_function" import in setup.py
  anymore.
* Comment and tidy the new extras_require.json handling.

Changes in version 232:

[ Chris Lamb ]
* Allow ICC tests to (temporarily) fail.
* Update debian/tests/control after the addition of PyPDF 3 support.

[ FC Stegerman ]
* Update regular expression for Android .APK files.

[ Sam James ]
* Support PyPDF version 3.
   2023-01-07 08:20:29 by Pierre Pronchery | Files touched by this commit (2) | Package updated
Log message:
py-diffoscope: update to 231

Changes in version 231:

* Improve "[X] may produce better output" messages. Based on a patch by
  Helmut Grohne. (Closes: #1026982)

Changes in version 230:

[ Chris Lamb ]
* Fix compatibility with file(1) version 5.43; thanks, Christoph Biedl.

[ Jelle van der Waa ]
* Support Berkeley DB version 6.
   2022-12-28 04:58:58 by Pierre Pronchery | Files touched by this commit (2) | Package updated
Log message:
py-diffoscope: updated to 229

Changes in 229:

[ Chris Lamb ]
* Skip test_html.py::test_diff if html2text is not installed.
  (Closes: #1026034)

[ Holger Levsen ]
* Bump standards version to 4.6.2, no changes needed.

Changes in 228:

[ FC Stegerman ]
* As an optimisation, don't run apktool if no differences are detected before
  the signing block. (Closes: reproducible-builds/diffoscope!105)

[ Chris Lamb ]
* Support both the python3-progressbar and python3-progressbar2 Debian
  packages, two modules providing the "progressbar" Python module.
  (Closes: reproducible-builds/diffoscope#323)
* Ensure we recommend apksigcopier. (Re: reproducible-builds/diffoscope!105)
* Make the code clearer around generating the Debian substvars and tidy
  generation of os_list.
* Update copyright years.

Changes in 227:

[ Chris Lamb ]
* Don't attempt to attach text-only differences notice if there are no
  differences to begin with. (Closes: #1024171, #1024349)
* Don't run Python decompiling tests on Python bytecode that both file(1)
  cannot yet detect and Python 3.11 cannot demarshall. (Closes: #1024335)
   2022-11-09 23:10:21 by Pierre Pronchery | Files touched by this commit (3) | Package updated
Log message:
py-diffoscope: update to 226

Changes since 224:

[ Christopher Baines ]
* Add an lzip comparator with tests.

[ Chris Lamb ]
* Add support for comparing the "text" content of HTML files using \ 
html2text.
  (Closes: #1022209, reproducible-builds/diffoscope#318)
* Misc/test improvements:
  * Drop the ALLOWED_TEST_FILES test; it's mostly just annoying.
  * Drop other copyright notices from lzip.py and test_lzip.py.
  * Use assert_diff helper in test_lzip.py.
  * Pylint tests/test_source.py.

[ Mattia Rizzolo ]
* Add lzip to debian dependencies.

[ Chris Lamb ]
* Add support for detecting ordering-only differences in XML files.
  (Closes: #1022146)
* Fix an issue with detecting ordering differences. (Closes: #1022145)
* Add support for ttx(1) from fonttools.
  (Re: reproducible-builds/diffoscope#315)
* Test improvements:
  - Tidy up the JSON tests and use assert_diff over get_data and manual
    assert in XML tests.
  - Rename order1.diff to json_expected_ordering_diff for consistency.
  - Temporarily allow the stable-po pipeline to fail in the CI.
* Use consistently capitalised "Ordering" everywhere we use the word in
  diffoscope's output.