1
0
Fork 0
Commit Graph

100 Commits

Author SHA1 Message Date
jvoisin f1a071d460 Implement lightweight cleaning for png and tiff 2018-10-23 16:22:11 +02:00
jvoisin 38df679a88 Optimize the handling of problematic files 2018-10-23 13:49:58 +02:00
jvoisin 44f267a596 Improve problematic filenames support 2018-10-22 16:56:05 +02:00
jvoisin 5bc88faedf Fix the testsuite on fedora 2018-10-22 13:55:09 +02:00
jvoisin 83389a63e9 Test mat2's reliability wrt. corrupted video files 2018-10-22 13:42:04 +02:00
jvoisin e70ea811c9 Implement support for .avi files, via ffmpeg
- This commit introduces optional dependencies (namely ffmpeg):
  mat2 will spit a warning when trying to process an .avi file
  if ffmpeg isn't installed.
- Since metadata are obtained via exiftool, this commit
  also refactors a bit our exfitool wrapper.
2018-10-22 12:58:01 +02:00
jvoisin d4c050a738 wtf python 2018-10-18 20:29:50 +02:00
jvoisin f04d4b28fc Fix the tests on Debian? 2018-10-18 20:23:00 +02:00
jvoisin da88d30689 Fix the CI on debian 2018-10-14 10:59:50 +02:00
jvoisin b832a59414 Refactor lightweight mode implementation 2018-10-12 11:49:24 +02:00
jvoisin b9dbd12ef9 Implement recursive metadata for FLAC files
Since FLAC files can contain covers, it makes sense
to parse their metadata
2018-10-11 19:52:47 +02:00
jvoisin b2e153b69c Delete pictures of FLAC files 2018-10-11 18:15:11 +02:00
jvoisin 8675706c93 Improve the display of mat2 when no metadata are found
This should close #74
2018-10-05 12:35:35 +02:00
jvoisin df252fd71a Remove a superfluous import 2018-10-04 16:19:38 +02:00
jvoisin a1c39104fc Make the testsuite runnable on the installed MAT2 2018-10-04 16:16:52 +02:00
jvoisin 84e302ac93 Remove file left behind by the testsuite 2018-10-03 16:38:05 +02:00
jvoisin c67bbafb2c Use [Content_Types].xml to improve MS Office coverage 2018-10-02 11:55:42 -07:00
jvoisin 156e81fb4c Check that cleaning twice doesn't break the file 2018-10-02 16:05:51 +02:00
jvoisin 9578e4b4ee Silence a bit the testsuite 2018-10-02 15:26:13 +02:00
jvoisin e342671ead Remove dangling references in MS Office's [Content_types].xml 2018-09-30 19:53:18 +02:00
jvoisin 719cdf20fa Second pass of minor formatting 2018-09-24 20:15:07 +02:00
jvoisin 2e243355f5 Fix some minor formatting issues 2018-09-24 19:50:24 +02:00
jvoisin 174d4a0ac0 Implement rsid stripping for office files
MS Office XML rsid is a "unique identifier used to track the editing session
when the physical character representing this section mark was last formatted."

See the following links for details:
- https://msdn.microsoft.com/en-us/library/office/documentformat.openxml.wordprocessing.previoussectionproperties.rsidrpr.aspx
- https://blogs.msdn.microsoft.com/brian_jones/2006/12/11/whats-up-with-all-those-rsids/.
2018-09-24 18:03:59 +02:00
jvoisin 9826de3526 Add a test for zip ordering 2018-09-20 14:04:46 +02:00
jvoisin ab71c29a28 Make pyflakes happy 2018-09-20 01:19:22 +02:00
jvoisin 3d2842802c Split the tests 2018-09-20 01:13:59 +02:00
Yoann Lamouroux 0a2a398c9c trivial modification of all shebang.
`/usr/bin/python3` -> `/usr/bin/env python3`

It's always better to trust the environment defined path to bin/python, as
virtualenv become the way to go.
2018-09-12 14:58:27 +02:00
jvoisin 2e9adab86a Improve a cli test resilience 2018-09-06 11:32:29 +02:00
Daniel Kahn Gillmor f3cef319b9 Unknown Members: make policy use an Enum
Closes #60

Note: this changeset also ensures that clean.cleaned.docx is removed
up after the pytest is over.
2018-09-05 18:59:33 -04:00
jvoisin 3649c0ccaf Remove short version of dangerous/advanced options 2018-09-05 17:48:14 +02:00
jvoisin 46bb1b83ea Improve the previous commit 2018-09-05 17:26:09 +02:00
Daniel Kahn Gillmor 10d60bd398 add --unknown-members argument to mat2
This allows the user to make use of parser.unknown_member_policy for
archive formats.

At the suggestion of @jvoisin, it also prints a scary warning if the
user explicitly chooses 'keep'.
2018-09-04 18:28:04 -04:00
dkg e2634f7a50 Logging cleanup 2018-09-01 05:14:32 -07:00
jvoisin b5a9520a60 Add a cli-related test 2018-07-30 22:54:41 +02:00
jvoisin a1257c538b Add some tests about pathological files 2018-07-30 22:36:36 +02:00
jvoisin 5a7c7f35f7 Remove `print` from libmat, and use the `logging` module instead
This should close #28
2018-07-10 21:30:38 +02:00
jvoisin d5861e4653 Implement a check for dependencies in mat2
Example use:

```
$ mat2 -c
Dependencies required for MAT2 0.1.3:
- Cairo: yes
- Exiftool: yes
- GdkPixbuf from PyGobject: yes
- Mutagen: yes
- Poppler from PyGobject: yes
- PyGobject: yes
```

This should close #35
2018-07-10 21:24:26 +02:00
jvoisin bd357b85f8 Remove a useless option that was never implemented anyway 2018-07-09 00:13:16 +02:00
jvoisin f49aa5cab7 Achieve 100% coverage! 2018-07-08 22:27:37 +02:00
jvoisin 52a2c800b7 Bump coverage again 2018-07-08 21:50:52 +02:00
jvoisin ad3e7ccee8 Bump coverage for office files and fix some related crashes 2018-07-08 21:35:45 +02:00
jvoisin 3cd4f9111f Bump coverage for torrent handling 2018-07-08 15:13:03 +02:00
jvoisin b5fcddd6a6 Simplify how torrent files are handled
- Rework the testsuite wrt. torrent
- fail at parser's instantiation on corrupted torrent,
  instead of during `get_meta` or `remove_all` call
2018-07-08 13:49:11 +02:00
jvoisin 9f631a1bb1 Bump a bit the coverage 2018-07-07 18:02:53 +02:00
jvoisin 3d80f97524 Simplify BMP handling 2018-07-06 00:49:17 +02:00
jvoisin 53271495f7 Add support for .txt files 2018-07-06 00:42:09 +02:00
jvoisin bee56a57ce Remove docx revisions 2018-07-01 23:16:14 +02:00
jvoisin 02f7605ac1 MAT2 is now cleaning revisions from odt files! 2018-07-01 21:09:20 +02:00
jvoisin 80fc4ffb40 Remove the thumbnails from libreoffice files 2018-07-01 17:29:05 +02:00
jvoisin 74f2d50433 Split the testsuite a bit and add more tests 2018-06-22 21:16:55 +02:00