github ReagentX/imessage-exporter 4.3.0
Shining Willow

4 hours ago

iMessage Exporter 4.3.0: Shining Willow contains the following fixes and improvements:

  • New Features
    • macOS Golden Gate and iOS 27 Support
      • Parse SMS filter categories, including allowed, junk, promotional, and transactional messages, for #790
      • Preserve raw filter subcategory values for downstream crate consumers
      • Parse attachment source attribution, including app name, bundle ID, and App Store ID, for #791
      • Identify drawings created with the Messages drawing board
    • Optional message-derived file timestamps for #785
      • Add --use-message-times to stamp each transcript's creation time from its earliest rendered message and modification time from its latest
      • Set each new attachment file's creation time to its message date on macOS and Windows
      • Leave directories and transcript files without messages unchanged
  • Performance
    • Resolve message result-set columns once per query instead of selecting an extraction path and rescanning column names for every row for #792
    • Preserve narrow projections for current schemas and remove redundant joined columns from legacy queries
    • Schema detection is now capability-based
  • Bug Fixes
    • Fix preflight attachment disk-space estimates ignoring conversation and date filters for #778
    • Prevent a solo -p invocation that doesn't request diagnostics or exports from decrypting a database just to do nothing
  • Enhancements
    • Support reordered and omitted optional columns across Messages database schemas and custom message queries
    • Tapbacks and tapback stickers render in chronological order
    • Diagnostic output now shows detected database schema features
    • Expose chat filtering status for #801
  • API Changes
    • Breaking
      • Add filter_action and filter_sub_action fields to Message
      • Message::from_row() now deserializes by column name instead of assuming a fixed positional layout
        • Custom queries must preserve the required rowid, guid, date, is_from_me, num_attachments, and num_replies column names
      • Query methods now take &Capabilities
        • Message::from_guid, stream_rows, get_count, get_replies, get_votes, as_poll
        • Attachment::from_message
    • Ergonomic
      • Add FilterAction with parsing, display, and filtered-category helpers
      • Add Message::filter_action()
      • Add AttachmentAttribution with bundle ID, app name, App Store ID, and drawing-detection helpers
      • Add Attachment::get_attribution()
      • Add tables::capabilities::Capabilities type
        • Capabilities::determine(&Connection) probes a schema once
        • Query construction derives from the result
  • Miscellaneous
    • Reorganize message models into focused modules while preserving their public paths
    • Update supported-version documentation
    • Significant new test coverage
    • Bump dependencies
    • Build with latest rustc

Don't miss a new imessage-exporter release

NewReleases is sending notifications on new releases.