Skip to content

Releases: tagatac/bagoup

2x faster export to PDF

23 Feb 19:11
7994236

Choose a tag to compare

This version uses WeasyPrint to generate PDFs instead of Wkhtmltopdf. Wkhtmltopdf has been deprecated for years, and it was recently disabled in homebrew. WeasyPrint is much more actively supported.

Two main improvements come with this migration:

  1. Exporting from Messages to PDF with WeasyPrint appears to be about twice as fast as with Wkhtmltopdf.
  2. WeasyPrint utilizes OS-native emojis, so PDF exports more closely match what is seen in Messages.

If you prefer Wkhtmltopdf outputs, there is a new flag to keep using it: --wkhtml. This flag (and Wkhtmltopdf support) will likely be removed in the future.

What's Changed

  • Use installer to install wkhtmltopdf by @tagatac in #73
  • Add a test to compare the versioned example export with a newly generated PDF by @tagatac in #75
  • Switch From wkhtmltopdf to WeasyPrint for PDF Exports by @tagatac in #76
  • Improve PDF title and creator by @tagatac in #78

Full Changelog: v2.4.11...v2.5.0

Fixed copying attachments with PDF export

17 Nov 15:25
3c6af3e

Choose a tag to compare

What's Changed

  • Add option validation by @tagatac in #69
  • Track the full paths of attachments in the Attachment object by @tagatac in #71

Full Changelog: v2.4.10...v2.4.11

Fixed setting the open files limit for wkhtmltopdf

12 Sep 19:38
907e55d

Choose a tag to compare

What's Changed

  • Use ulimit to check the open files soft limit by @tagatac in #66

Full Changelog: v2.4.8...v2.4.10

Fixed embedding URL-unsafe filenames in PDFs

11 Sep 01:50
8d1118a

Choose a tag to compare

For example, images with filenames including the unicode character U+202F.

Full Changelog: v2.4.7...v2.4.8

Fixed PDF creation with many images

10 Sep 21:57
7b4a490

Choose a tag to compare

What's Changed

  • Fix Google 2FA code attribute bodies by @tagatac in #61
  • Increase the open file limit before writing PDFs by @tagatac in #64
  • Bump the minimum supported Go version to 1.20 by @tagatac in #65

Full Changelog: v2.4.6...v2.4.7

Fixed emojis in PDFs

10 Jul 21:15
9529de9

Choose a tag to compare

MaxCDN is no longer hosting twemoji. See twitter/twemoji#580 for more details and https://github.com/jdecked/twemoji for the functional fork.

What's Changed

Full Changelog: v2.4.5...v2.4.6

Support for exporting specific entities only

22 Mar 23:34
63b5198

Choose a tag to compare

New flag:

  -e, --entity=           An entity name to include in the export (matches the folder name in the
                          export, e.g. "John Smith" or "+15551234567"). If given, other entities'
                          chats will not be exported. If this flag is used multiple times, all
                          entities specified will be exported.

What's Changed

  • Remove unnecessary Swift code by @tagatac in #55
  • Remove unnecessary dependencies from Makefile targets by @tagatac in #56
  • Use the retry-action action to retry the codecov uploader action by @tagatac in #57

Full Changelog: v2.4.1...v2.4.5

Big performance gains

21 Nov 20:52
3ae61da

Choose a tag to compare

bagoup now uses an Objective-C binary to extract data from the attributedBody column in the chat database. This typically results in a performance improvement for text exports of more than 10x.

pytypedstream is no longer a dependency.

What's Changed

  • Move from Travis-CI to Github Actions by @tagatac in #47
  • Modernize all dates in the chat_message_join table by @tagatac in #48
  • Use an objective C program to decode typedstreams by @tagatac in #51
  • Break large chats into multiple PDF files by @tagatac in #53

Full Changelog: v2.3.0...v2.4.1

Support for Mac OS 13

04 Dec 00:56

Choose a tag to compare

Note
NEW DEPENDENCY: In order to properly export messages on Mac OS 13, bagoup requires that python-typedstream be installed and that pytypedstream be in your system path.

What's Changed

  • Decode text from the attributedBody column by @tagatac in #42

Full Changelog: v2.2.0...v2.3.0

Re-run support using copied attachments

07 Oct 21:23

Choose a tag to compare

What's Changed

  • Truncate chat filename if it will exceed 255 characters by @tagatac in #34
  • Allow re-runs using copied attachments by @tagatac in #39

Full Changelog: v2.1.2...v2.2.0