Skip to content

Releases: emcd/python-detextive

v3.1

17 Feb 06:18
v3.1
620623b

Choose a tag to compare

detextive v3.1 (2026-02-17)

Enhancements

  • API: Add Behaviors.utf_16_32_requires_byte_order to optionally reject
    BOM-less trial decodes for generic utf-16 and utf-32 while keeping
    permissive behavior as the default.

Repairs

  • API: Report UTF charset results from BOM provenance rather than decode codec
    choice so utf-8-sig is returned only when a UTF-8 BOM is present, and
    apply the same provenance normalization to UTF-16/UTF-32 reporting across
    decode, detection, and inference surfaces.

v3.0

14 Feb 04:40
v3.0
d37c9dd

Choose a tag to compare

detextive v3.0 (2026-02-14)

Enhancements

  • API: Add decode_inform to return decoded text together with charset, MIME
    type, and line-separator metadata in a single call.
  • API: Honor supplied textual http_content_type metadata consistently across
    decode and inference paths, including header-guided charset trial decode.

Removals

  • API: Remove charset_default, mimetype_default, and
    mimetype_supplement parameters from decode so decoding follows
    decode-or-error semantics instead of fallback-return inference semantics.
  • API: Replace Behaviors.charset_detect and Behaviors.mimetype_detect
    tristates with booleans; pass True or False instead of
    BehaviorTristate values.

Repairs

  • Fix UTF-8 content incorrectly decoded when charset detector misidentifies encoding, causing mojibake with non-ASCII characters and emoji.
  • Fix malformed http_content_type parameter parsing so inference no longer
    raises raw ValueError for invalid header parameter syntax.
    Also include the resolved MIME type value in TextualMimetypeInvalidity
    messages.
  • Reject binary content with non-textual MIME types instead of attempting to decode, preventing false positives where binary data was incorrectly decoded as text.

v1.0

12 Aug 18:14
v1.0
b5d36da

Choose a tag to compare

Detextive v1.0 (2025-08-12)

Enhancements

  • Provide LineSeparators enum with detection, normalization, and nativization
    methods.
  • Provide detect_charset, detect_mimetype,
    detect_charset_and_mimetype, is_textual_mimetype, and
    is_textual_content.