CHANGELOG 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. Changes to 0.4.20
  2. - merge in a compatability layer for the upstream libmagic python binding.
  3. Since both this package and that one are called 'magic', this compat layer
  4. removes a very common source of runtime errors. Use of that libmagic API will
  5. produce a deprecation warning.
  6. - support python 3.9 in tests and pypi metadata
  7. - add support for magic_descriptor functions, which take a file descriptor
  8. rather than a filename.
  9. - sometimes the returned description includes snippets of the file, e.g a title
  10. for MS Word docs. Since this is in an unknown encoding, we would throw a
  11. unicode decode error trying to decode. Now, it decodes with
  12. 'backslashreplace' to handle this more gracefully. The undecodable characters
  13. are replaced with hex escapes.
  14. - add support for MAGIC_EXTENSION, to return possible file extensions.
  15. - add mypy typing stubs file, for type checking
  16. Changes in 0.4.18
  17. - Make bindings for magic_[set|get]param optional, and throw NotImplementedError
  18. if they are used but not supported. Only call setparam() in the constructor if
  19. it's supported. This prevents breakage on CentOS7 which uses an old version of
  20. libmagic.
  21. - Add tests for CentOS 7 & 8
  22. Changes in 0.4.16 and 0.4.17
  23. - add MAGIC_MIME_TYPE constant, use that in preference to MAGIC_MIME internally.
  24. This sets up for a breaking change in a future major version bump where
  25. MAGIC_MIME will change to mathch magic.h.
  26. - add magic.version() function to return library version
  27. - add setparam/getparam to control internal behavior
  28. - increase internal limits with setparam to prevent spurious error on some jpeg files
  29. - various setup.py improvements to declare modern python support
  30. - support MSYS2 magic dlls
  31. - fix warning about using 'is' on an int in python 3.8
  32. - include tests in source distribution
  33. - many test improvements:
  34. -- tox runner support
  35. -- remove deprecated test_suite field from setup.py
  36. -- docker tests that cover all LTS ubuntu versions
  37. -- add test for snapp file identification
  38. - doc improvements
  39. -- document dependency install process for debian
  40. -- various typos
  41. -- document test running process