Releases: ReagentX/imessage-exporter
Releases · ReagentX/imessage-exporter
Live Oak
Version 2.2.1 Live Oak contains the following fixes and improvements:
- Support filtering conversations to export for #61
- Adds
--conversation-filter
CLI arg to filter conversations based on a specified string pattern -
Supports partial matches and multiple patterns
--conversation-filter "[email protected]"
exports conversations with[email protected]
--conversation-filter "[email protected],+15558675309"
exports all conversations with[email protected]
or+15558675309
--conversation-filter "@apple.com"
exports all conversations where the participant info contains@apple.com
- Group conversations with selected participants are always included
- Adds
- Expand compatibility mode for #346 and #365
- More compatibility conversions supported
video/quicktime
→video/mp4
audio/x-caf
→audio/mp4
image/heic-sequence
→image/gif
- Refactor
--copy-method
CLI arg:-c clone
copies files without converting-c basic
converts HEIC files to JPEG-c full
converts HEIC files to JPEG, CAF to MP4, and MOV to MP4
- More compatibility conversions supported
- Improvements
- Fixes
- Miscellaneous
- Rework test fixtures
- Refactor file compatibility modules
- Add diagnostics for detected encoders/converters
- Bump dependencies
- Build with latest
rustc
Live Oak
Version 2.2.0 Live Oak contains the following fixes and improvements:
- Support filtering conversations to export for #61
- Adds
--conversation-filter
CLI arg to filter conversations based on a specified string pattern -
Supports partial matches and multiple patterns
--conversation-filter "[email protected]"
exports conversations with[email protected]
--conversation-filter "[email protected],+15558675309"
exports all conversations with[email protected]
or+15558675309
--conversation-filter "@apple.com"
exports all conversations where the participant info contains@apple.com
- Group conversations with selected participants are always included
- Adds
- Expand compatibility mode for #346 and #365
- More compatibility conversions supported
video/quicktime
→video/mp4
audio/x-caf
→audio/mp4
image/heic-sequence
→image/gif
- Refactor
--copy-method
CLI arg:-c clone
copies files without converting-c basic
converts HEIC files to JPEG-c full
converts HEIC files to JPEG, CAF to MP4, and MOV to MP4
- More compatibility conversions supported
- Improvements
- Fixes
- Miscellaneous
- Rework test fixtures
- Refactor file compatibility modules
- Add diagnostics for detected encoders/converters
- Bump dependencies
- Build with latest
rustc
Prickly Pear
Version 2.1.1 Prickly Pear contains the following fixes and improvements:
- Support new iOS 18 features
- Support Handwritten messages for #31
- Improvements
- Make deduplication deterministic for chats and handles
- As a side effect, this also makes exported filenames deterministic
- Increase performance of HTML entity sanitization logic
- Reduced export size with improved attachment handling
- Only copy attachments in threaded messages once
- Share attachments across TXT and HTML exports in the same directory
- Improve file creation error messages
- Attribute old style sticker reactions to senders
- Make deduplication deterministic for chats and handles
- Fixes
- Miscellaneous
- Documentation updates
Reaction
has been renamedTapback
throughout the library- Build with latest
rustc
Prickly Pear
Version 2.1.0 Prickly Pear contains the following fixes and improvements:
- Support new iOS 18 features
- Support Handwritten messages for #31
- Improvements
- Make deduplication deterministic for chats and handles
- As a side effect, this also makes exported filenames deterministic
- Increase performance of HTML entity sanitization logic
- Reduced export size with improved attachment handling
- Only copy attachments in threaded messages once
- Share attachments across TXT and HTML exports in the same directory
- Improve file creation error messages
- Attribute old style sticker reactions to senders
- Make deduplication deterministic for chats and handles
- Fixes
- Miscellaneous
- Documentation updates
Reaction
has been renamedTapback
throughout the library- Build with latest
rustc
California Poppy
Version 2.0.1 California Poppy contains the following fixes and improvements:
- Implement a custom, pure Rust
typedstream
deserializer- Support parsing message body components from deserialized
typedstream
data - Support interactive message text using deserialized
attributedBody
range attributes:- Mentions for #18
- Unit conversions
- Deep Links
- Emails/Phone numbers
- OTP/2FA
- And more!
- Refactor
EditedMessage
design to support multi-part messages- Support unsending and editing specific message parts for #277
- Use new
typedstream
deserializer for edited message body data
- Support parsing message body components from deserialized
- Fixes
- 2x faster performance:
- Use
BufWriter<File>
instead ofPathBuf
inExporter
structs - Use column names for
messages
table queries against most recent table schema
- Use
- Miscellaneous
- Update MIME type parsing logic
- Significantly improve Windows compatibility
- Do not emit HEIC converter logs if
--copy-method
is notcompatible
- Major documentation updates
- Humanize output of CLI progress bar
- Better HTML sanitization for message body content
- Add more FAQs
- Build with latest
rustc
Beach Strawberry
Version 1.9.0 Beach Strawberry contains the following fixes and improvements:
- Rework edited message parsing logic
- Improve accuracy of estimated export size for #246
- Improve backwards compatibly for #188
- Improve Windows compatibility by removing dependency on
HOME
environment variable - Add diagnostic docs for #223
- Support Imagemagick v7 for #263
- Support legacy location sharing messages for #271
- Improve SharePlay message display
- Remove last remaining
unwrap()
calls in library and binary code- The only remaining
unwrap()
calls are in tests - None exist in library or app code
- The only remaining
- Add missing viewport tag to improve mobile display:
- Add missing documentation to table struct fields
- Miscellaneous docs updates, code cleanups, and small speedups
- Build with latest
rustc
Velvet Ash
Version 1.8.0 Velvet Ash contains the following fixes and improvements:
- Upgrade Clap from 3.x to 4.x for #198
- Use new
ExportType
enum - Resolve GHSA-g98v-hv3f-hcfr
- Use new
- Use PST timezone for tests for #199
- Check for available disk space before writing export files for #201
- Prevents exporting if there is not enough disk space
- Dismissible with
--ignore-disk-warning
- Use correct date offset in Check In messages for #202
- Improve
html
escape logic for text to fix #32 and #217 - Properly render thread originators that were edited for #220
- Improve exported data quality
- Simplify Apple Pay and Apple Cash bubbles in
html
exports - Simplify Find My bubbles in
html
andtxt
exports - Support parsing
Placemark
data from shared Maps links - Properly handle Handwritten message placeholder
- Properly handle all unsent message types, not just text
- Simplify Apple Pay and Apple Cash bubbles in
- Add some new diagnostics:
- Total number of messages
- Total database size
- Attachment size referenced in table
- Attachment size on disk
Example output
iMessage Database Diagnostics Message diagnostic data: Total messages: 97541 Messages not associated with a chat: 3406 Messages belonging to more than one chat: 29 Attachment diagnostic data: Total attachments: 36636 Data referenced in table: 32.11 GB Data present on disk: 27.73 GB Missing files: 6231 (17%) No path provided: 6132 No file located: 99 Global diagnostic data: Total database size: 199.43 MB Duplicated contacts: 76 Duplicated chats: 16
- Miscellaneous docs updates, code cleanups, and small speedups
Laurel Sumac
Version 1.7.0 Laurel Sumac contains the following fixes and improvements:
- iOS 17 and macOS Sonoma Support!
- Emit clearer error if the specified database path exists but is not an iMessage database for #177
- Support custom attachment root for #178
- Make
chat
service_name
fieldOptional
for #181 - Downgrade error to warning when
no-lazy
flag is set fortxt
exports for #189 - Support parsing App Store app links for #196
- Build with latest
rustc
Checker Mallow
Version 1.6.0 Checker Mallow contains the following fixes and improvements:
- Make
handle_id
field optional for #148 - Make attachment file paths relative to the export directory in #152 (contributed by @mxswd)
- Add links between threaded messages in
HTML
exports for #154 - Make audio messages display properly for #155
- Resolve bug where multiple
~
in filepaths got replaced with$HOME
for #156 - Add better fallback SQL for backwards compatibility with iOS 14/15 in #157
- Correct HTML and CSS mistakes in #162 (Contributed by @dviner)
- Add attachment file size information to diagnostics and exports
- Update uninstall steps
- Resolve file name extension bug for #164
- Build with latest
rustc
Arroyo Lupine
Version 1.5.0 Arroyo Lupine contains the following fixes and improvements:
- Rework attachment management logic
- Improve attachment and message table diagnostics
- Allow attachment backup for
txt
exports - Support diagnostics for iOS backups for #118
- Automatically detect backup platform for #121
- Add uninstall steps for #122
- Add option to keep original image formats for #125
- Better dedupe logic to fix #135
- Build with latest
rustc