summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2025-09-04Edit README.mdHEADmasterjvoisin
2025-09-04Switch the project from 0xacab to githubjvoisin
While the folks running 0xacab are much more lovely than the github ones, this project has outgrown the former: - Github offers beefy continuous integration, make it easier to run the testsuite on every python version, instead of using a weird docker-based contraption. Moreover, I'd rather burn some Microsoft money than 0xacab one. - Opening an account on 0xacab is non-trivial (by design), making it tedious for people to report issues and contribute to mat2. - Gitlab is becoming unbearably slow and convoluted, even compared to Github's awful Copilot/AI push. It's a sad state of affairs, but it's a pragmatic decision. People who don't have a Github account can still report issues and send patches by sending me an email.
2025-09-01Fix issue introduced in f073444jvoisin
The continuous integration on 0xacab didn't run, so it didn't catch this issue. It seems like we'll have to move to github or whatever instead, sigh.
2025-09-01Remove mypy from the CIjvoisin
It has always been useless a best, and a nuisance most of the times.
2025-08-25Fix a broken testjvoisin
Reported-By: https://github.com/NixOS/nixpkgs/issues/436421
2025-04-03Fix HEIC parsing with the latest exiftooljvoisin
2025-04-03Disable webp tests for nowjvoisin
``` ====================================================================== ERROR: test_all_parametred (tests.test_libmat2.TestCleaning.test_all_parametred) (case={'name': 'webp', 'parser': <class 'libmat2.images.WEBPParser'>, 'meta': {'Warning': '[minor] Improper EXIF header'}, 'expected_meta': {}}) ---------------------------------------------------------------------- Traceback (most recent call last): File "/builds/jvoisin/mat2/libmat2/images.py", line 109, in __init__ GdkPixbuf.Pixbuf.new_from_file(self.filename) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ gi.repository.GLib.GError: gdk-pixbuf-error-quark: Couldn’t recognize the image file format for file “./tests/data/clean.webp” (3) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/builds/jvoisin/mat2/tests/test_libmat2.py", line 557, in test_all_parametred p1 = case['parser'](target) File "/builds/jvoisin/mat2/libmat2/images.py", line 111, in __init__ raise ValueError ValueError ``` Pending on https://0xacab.org/georg/mat2-ci-images/-/issues/14
2025-04-03Properly handle an exceptionjvoisin
``` Traceback (most recent call last): File "/builds/jvoisin/mat2/tests/test_deep_cleaning.py", line 147, in test_office meta = p.get_meta() File "/builds/jvoisin/mat2/libmat2/archive.py", line 155, in get_meta zin.extract(member=item, path=temp_folder) ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/zipfile/__init__.py", line 1762, in extract return self._extract_member(member, path, pwd) ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/zipfile/__init__.py", line 1829, in _extract_member os.makedirs(upperdirs, exist_ok=True) ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^ File "<frozen os>", line 227, in makedirs OSError: [Errno 28] No space left on device: '/tmp/tmptl1ibyv6/word/theme' ``` This should never happen™, but just in case…
2025-03-18Add webp supportVincent Deffontaines
2025-01-09CI: run tests via python3.{13,14}georg
2025-01-09Significantly improve portability0.13.5jvoisin
2025-01-09Bump the changelogjvoisin
2024-09-13Wait to remove elements until they are all processedAlex Marchant
2024-09-13Catch a MemoryError in cairojvoisin
This should close #202
2024-07-18Keep orientation metadatamatiargs
2024-04-05Remove a duplicate functionjvoisin
This is a leftover from today's best-effort merges.
2024-04-05Remove dangling references from document.xml.relsAlex Marchant
The file `word/_rels/document.xml.rels` is similar to `[Content_Types].xml` and has references to other files in the archive. If those references aren't removed Word refuses to open the document. # Please enter the commit message for your changes. Lines starting
2024-04-05Merge branch 'alexmarchant-utf-8-encode-all'jvoisin
2024-04-05Strip comment references from document.xmlAlex Marchant
2024-04-03Make utf-8 explicit in all tree.write callsAlex Marchant
2024-04-03Strip comment references from document.xmlAlex Marchant
2024-04-03Add test that checks if comments.xml is removed without errorsAlex Marchant
2024-04-03Update comments file regexAlex Marchant
2024-01-02Add python3.12 in the CIjvoisin
2023-12-31Improve the pyproject.yaml filejvoisin
Prompted by !113
2023-11-21Update Arch Linux package URL in INSTALL.mdjvoisin
Patch by https://github.com/felixonmars
2023-11-13Raise a ValueError for invalid FLAC files to please mypyjvoisin
2023-11-13parsers: Inherit the sandbox option when creating additional parsersRomain Vigier
2023-11-13mat2: Fix the --no-sandbox argumentRomain Vigier
The --no-sandbox argument was parsed incorrectly, meaning no sandbox was used when it was absent and the sandbox being used when it was present.
2023-11-08Fix the CI on Debianjvoisin
2023-09-08Provide a name for the loggersjvoisin
2023-09-07Properly handle a cairo exceptionjvoisin
2023-08-31setup: use share/man/man1 for man1 Rui Chen
2023-08-03tests: drop duplicate dirty.epub file; it's stored below data/ as wellgeorg
2023-08-02Fix the project name in pyproject.tomljvoisin
2023-08-02Bump the changelog0.13.4jvoisin
2023-07-11Add the manpage to the PyPI packagejvoisin
This should close #192
2023-07-11Add more files to ignore for MSOffice documentsJason Smalls
2023-07-11Add a variant mimetype for bmpJason Smalls
2023-07-11Harden get_meta in archive.py against variants of CVE-2022-35410Jason Smalls
2023-06-05Mention wp-mat in the readmejvoisin
2023-05-03Use proper type annotations instead of commentsjvoisin
2023-05-03Make use of is_dir/isdir for archivesjvoisin
2023-04-11Add some documentation about OSXjvoisin
2023-03-21CI: codespell: drop obsolete list of ignored wordsgeorg
codespell was dropped via a63011b3f62d8de15cb27c0af0ccd46edbd2cfc4. Accordingly, this commit does some cleanup.
2023-03-20CI: shallow clone repository and limit depth to 5georg
The previous commit changed the strategy to 'clone', instead of 'fetch' as before. While this fixes permission errors, it is also slower, as an existing checkout of the repository will be ignored. To overcome this, this commit limits the depth to 5.
2023-03-20CI: 'clone' git repository instead of 'fetch'georg
While the former is slower, the later might lead to errors such as "fatal: detected dubious ownership in repository at" which is fixed GitLab upstream via https://gitlab.com/gitlab-org/gitlab-runner/-/merge_requests/3538, but not yet released. Closes #191
2023-03-15CI: Add python3.{7,8,9,10,11} test jobsgeorg
Closes #187
2023-03-12Fix the CI on Archlinuxjvoisin
2023-03-07fix: Typing in the parser factoryGu1nn3zz