Commit Graph

16 Commits

Author SHA1 Message Date
Joshua Watt
e9bd99fe38 diffoscope: upgrade 163 -> 164
[ Chris Lamb ]
* Truncate jsondiff differences at 512 bytes lest they consume the
  entire page.
* Wrap our external call to cmp(1) with a profile (to match the internal
  profiling).
* Add a note regarding the specific ordering of the new
  all_tools_are_listed test.

[ Dimitrios Apostolou ]
* Performance improvements:
  - Improve speed of has_same_content by spawning cmp(1) less
    frequently.
  - Log whenever the external cmp(1) command is spawn.ed
  - Avoid invoking external diff for identical, short outputs.
* Rework handling of temporary files:
  - Clean up temporary directories as we go along, instead of at the
    end.
  - Delete FIFO files when the FIFO feeder's context manager exits.

[ Mattia Rizzolo ]
* Fix a number of potential crashes in --list-debian-substvars,
  including explicitly listing lipo and otool as external tools.
 - Remove redundant code and let object destructors clean up after
   themselves.

[ Conrad Ratschan ]
* Add a comparator for Flattened Image Trees (FIT) files, a boot image
  format used by U-Boot.

(From OE-Core rev: 65feaffe9857029fa230935cb0c3e8e6f2815776)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-01-16 22:39:35 +00:00
Alexander Kanavin
b24831ee76 diffoscope: upgrade 161 -> 163
(From OE-Core rev: 431c43b24d6ee85ba8d1ab89f4ed71f0ff4f79b9)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-12-30 14:01:06 +00:00
Alexander Kanavin
faef5ddfab diffoscope: upgrade 160 -> 161
(From OE-Core rev: 1d2d6b801d553d63db671e5f574c892f4623b753)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-11-03 08:21:12 +00:00
Pierre-Jean Texier
602066af70 diffoscope: upgrade 158 -> 160
This includes the following changes:

Version 159:

* Show "ordering differences only" in strings(1) output.
  (Closes: reproducible-builds/diffoscope#216)
* Don't alias output from "os.path.splitext" to variables that we do not end
  up using.
* Don't raise exceptions when cleaning up after a guestfs cleanup failure.
* Make "Command" subclass a new generic Operation class.

Version 160:

* Check that pgpdump is actually installed before attempting to run it.
  Thanks to Gianfranco Costamagna (locutusofborg). (Closes: #969753)
* Add some documentation for the EXTERNAL_TOOLS dictionary.
* Ensure we check FALLBACK_FILE_EXTENSION_SUFFIX, otherwise we run pgpdump
  against all files that are recognised by file(1) as "data".

(From OE-Core rev: 6433feb0705f969923d032cc289e7b210e11aa23)

Signed-off-by: Pierre-Jean Texier <pjtexier@koncepto.io>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-09-14 00:14:28 +01:00
Joshua Watt
ca71b89c6c diffoscope: upgrade 156 -> 158
(From OE-Core rev: 017aff2bc127cad6c9d0f6feefc2e200a06efec2)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-09-02 16:00:46 +01:00
Alexander Kanavin
aa897962cb diffoscope: upgrade 153 -> 156
(From OE-Core rev: 9ce0e882347ef3e3daec5201cad37f4ce6aff859)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-08-25 16:00:10 +01:00
Oleksandr Kravchuk
3d418733ff diffoscope: update to 153
(From OE-Core rev: c0b921ef38f4740212b167463c3afa9709e06f53)

Signed-off-by: Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-07-27 19:58:09 +01:00
Joshua Watt
dac51d26bb diffoscope: upgrade 150 -> 151
* Improvements and bug fixes:

  - Pass the absolute path when extracting members from SquashFS images as we
    run the command with our working directory set to the temporary
    directory. (Closes: #964365, reproducible-builds/diffoscope#189)
  - Increase the minimum length of the output from strings(1) to 8 characters
    to avoid unnecessary diff noise. (Re. reproducible-builds/diffoscope#148)

* Logging improvements:

  - Fix the compare_files message when the file does not have a literal name.
  - Reduce potential log noise by truncating the has_some_content messages.

* Codebase changes:

  - Clarify use of a "null" diff in order to remember an exit code.
  - Don't alias a variable when don't end up it; use "_" instead.
  - Use a  "NullChanges" file to represent missing data in the Debian package
    comparator.
  - Update some miscellaneous terms.

(From OE-Core rev: afbf68ddd20463ec7e584b481af6344482180ce0)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-07-18 11:06:32 +01:00
Pierre-Jean Texier
2ebb7ac4bb diffoscope: upgrade 148 -> 150
This includes the following changes:

Version 149:

* Update tests for file 5.39. (Closes: reproducible-builds/diffoscope#179)
* Downgrade the tlsh warning message to an "info" level warning.
  (Closes: #888237, reproducible-builds/diffoscope#29)
* Use the CSS "word-break" property over manually adding U+200B zero-width
  spaces that make copy-pasting cumbersome.
  (Closes: reproducible-builds/diffoscope!53)
* Codebase improvements:
  - Drop some unused imports from the previous commit.
  - Prevent an unnecessary .format() when rendering difference comments.
  - Use a semantic "AbstractMissingType" type instead of remembering to check
    for both "missing" files and missing containers.
* Allow user to mask/filter reader output via --diff-mask=REGEX.
  (MR: reproducible-builds/diffoscope!51)
* Make --html-dir child pages open in new window to accommodate new web
  browser content security policies.
* Fix the --new-file option when comparing directories by merging
  DirectoryContainer.compare and Container.compare.
  (Closes: reproducible-builds/diffoscope#180)
* Fix zsh completion for --max-page-diff-block-lines.
* Do not warn about missing tlsh during tests.

Version 150:

* Don't crash when listing entries in archives if they don't have a listed
  size (such as hardlinks in .ISO files).
  (Closes: reproducible-builds/diffoscope#188)
* Dump PE32+ executables (including EFI applications) using objdump.
  (Closes: reproducible-builds/diffoscope#181)
* Tidy detection of JSON files due to missing call to File.recognizes that
  checks against the output of file(1) which was also causing us to attempt
  to parse almost every file using json.loads. (Whoops.)
* Drop accidentally-duplicated copy of the new --diff-mask tests.
* Logging improvements:
  - Split out formatting of class names into a common method.
  - Clarify that we are generating presenter formats in the opening logs.
* Remove objdjump(1) offsets before instructions to reduce diff noise.
  (Closes: reproducible-builds/diffoscope!57)

(From OE-Core rev: 9ef1a0aa143c72d51ae52c0e1f7476743813f434)

Signed-off-by: Pierre-Jean Texier <pjtexier@koncepto.io>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-07-05 15:04:40 +01:00
Alexander Kanavin
bde2c1709d diffoscope: upgrade 147 -> 148
(From OE-Core rev: 3a551dff6f75f1abedd22f0c96062441ec4e80b6)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-06-28 08:36:00 +01:00
Pierre-Jean Texier
3a4de9ac82 diffoscope: upgrade 146 -> 147
This includes the following changes:

* New features:

  - Add output from strings(1) to ELF binaries. It is intended this will
    expose expose build paths that are hidden somewhere within the objdump(1)
    output. (Closes: reproducible-builds/diffoscope#148)
  - Add basic zsh shell tab-completion support.
    (Closes: reproducible-builds/diffoscope#158)

* Bug fixes:

  - Prevent a traceback when comparing a PDF document that does not contain
    any metadata, ie. it is missing a PDF "/Info" stanza.
    (Closes: reproducible-builds/diffoscope#150)
  - Fix compatibility with jsondiff 1.2.0 which was causing a traceback and
    log the version of jsondiff we are using to aid debugging in the future.
    (Closes: reproducible-builds/diffoscope#159
  - Fix an issue in GnuPG keybox handling that left filenames in the diff.
  - Don't mask an existing test name; ie. ensure it is actually run.

* Reporting:

  - Log all calls to subprocess.check_output by using our own wrapper utility.
    (Closes: reproducible-builds/diffoscope#151)

* Code improvements:

  - Replace references to "WF" with "Wagner-Fischer" for clarity.
  - Drop a large number of unused imports (list_libarchive,
    ContainerExtractionError, etc.)
  - Don't assign exception to a variable that we do not use.
  - Compare string values with the equality operator, not via "is" identity.
  - Don't alias an open file to a variable when we don't use it.
  - Don't alias "filter" builtin.
  - Refactor many small parts of the HTML generation, dropping explicit
    u"unicode" strings, tidying the generation of the "Offset X, Y lines
    modified" messages, moving to PEP 498 f-strings where appropriate, etc.
  - Inline a number of single-used utility methods.

(From OE-Core rev: d6350dd5cdb252216494475b87edf42e0bdfdb19)

Signed-off-by: Pierre-Jean Texier <pjtexier@koncepto.io>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-06-15 14:53:45 +01:00
Pierre-Jean Texier
6b4299df5d diffoscope: upgrade 144 -> 146
See full changelog https://diffoscope.org/news/diffoscope-146-released/

(From OE-Core rev: 942a02154c6b20a5cce583607b6f36bb7657ef0d)

Signed-off-by: Pierre-Jean Texier <pjtexier@koncepto.io>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-06-04 13:27:32 +01:00
Joshua Watt
369b442099 diffoscope: upgrade 143 -> 144
(From OE-Core rev: 75e89667c973c18a9794167cb5c357f6464cc63a)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-05-24 23:56:03 +01:00
Alexander Kanavin
8041bc55f4 diffoscope: update to 143
(From OE-Core rev: b318cc76f84bf90687a8a603a8fb1e3d3a6803b0)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-05-05 13:19:54 +01:00
Richard Purdie
2c3b751a12 diffoscope: Exclude from musl builds
Various dependencies don't build for musl so exclude this recipe too, at
least for now until the issues are resolved to avoid build failures in
world builds.

(From OE-Core rev: 085b0a3337e04e14e0d922a9028a7748dc81c4d0)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-02-14 13:07:23 +00:00
Joshua Watt
282d42fe3d recipes-support: Add diffoscope recipe
Diffoscope is the universal diff tool, capable of comparing many
different formats.

(From OE-Core rev: c92cf366c301a98ff1546d80d6c3a138f952252a)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-02-14 13:07:23 +00:00