KnugiHK
1694ae7dd9
Update utility.py
2026-01-24 01:47:45 +08:00
KnugiHK
f05e0d3451
Refactor incremental_merge
2026-01-24 01:33:18 +08:00
KnugiHK
0c5f2b7f13
Add a comment on SQLi in get_chat_condition
2026-01-24 01:19:55 +08:00
KnugiHK
db01d05263
Refactor get_chat_condition to increase maintainability
2026-01-24 00:50:06 +08:00
KnugiHK
2e7953f4ca
Add unit test for get_chat_condition
2026-01-24 00:03:21 +08:00
KnugiHK
95a52231be
Fix the returning string for empty filter list
2026-01-24 00:03:08 +08:00
KnugiHK
bf230db595
Gracefully handle bytes that can't be decoded from db ( #44 )
2026-01-20 23:35:05 +08:00
KnugiHK
242e8ee43a
Fix regressions introduced in 194ed29 (default template swap)
...
This commit restores the logic originally introduced in:
* 265afc1
* 8cf1071
* 177b936
2026-01-20 01:42:30 +08:00
lifnej
c32096b26b
Show sql errors if DEBUG flag is set.
2026-01-20 00:07:04 +08:00
lifnej
4aa1c26232
Missing newline in vcard info log.
2026-01-20 00:06:38 +08:00
KnugiHK
feca9ae8e0
Fix error on database without jid_map table
...
I realized the `jid_map` table might be missing after reviewing @lifnej's work in ee7db80 . This fix adds use the preflight check result for the table before querying it.
I plan to apply this same pattern to other sections where `jid_map` is used.
2026-01-19 22:59:19 +08:00
KnugiHK
92c325294c
Add preflight check to see if the jid_map table exists
2026-01-19 22:53:29 +08:00
KnugiHK
7dbd0dbe3c
Add preflight check to see if transciption column exists
2026-01-19 22:46:30 +08:00
KnugiHK
035e61c4d7
Fix incremental merge CI
2026-01-19 21:31:23 +08:00
KnugiHK
96d323e0ed
Fetch sender_timestamp for future use
...
WhatsApp doesn't show when a reaction was made, and I don't want to mess with a popup in the HTML yet. Let’s just fetch the data for now. It might come in handy later.
Credit to @tlcameron3 from #79
2026-01-19 21:28:50 +08:00
Knugi
35ad2559d7
Merge pull request #193 from m1ndy/feature/export-reactions
...
feat: Add support for exporting message reactions
2026-01-19 20:53:18 +08:00
KnugiHK
8058ed8219
Add tqdm progress bar
2026-01-19 20:49:14 +08:00
KnugiHK
908d8f71ca
Fix merge conflict error
2026-01-19 20:41:45 +08:00
Knugi
f2b6a39011
Merge branch 'dev' into feature/export-reactions
2026-01-19 20:38:20 +08:00
KnugiHK
4f531ec52a
Reverting the __version__ handle
...
See my comment at https://github.com/KnugiHK/WhatsApp-Chat-Exporter/pull/193/changes
2026-01-19 20:36:18 +08:00
KnugiHK
b69f645ac3
Adopt the same lid mapping to all sql query
...
Because the chat filter needs it
2026-01-19 20:29:56 +08:00
KnugiHK
f8b959e1e1
Implement an on-the-fly fix of dot-ending files ( #185 )
2026-01-18 23:03:49 +08:00
KnugiHK
9be210f34a
Implement voice message transcription for Android ( #159 )
2026-01-18 21:59:03 +08:00
KnugiHK
ae7ba3da96
action_type 58 is actually shared with unblocking
2026-01-18 21:53:36 +08:00
KnugiHK
00e58ce2c9
Handle group message sender lid mapping ( #188 )
2026-01-18 21:25:40 +08:00
KnugiHK
4245ecc615
Update android_handler.py
2026-01-17 15:07:16 +08:00
KnugiHK
68dcc6abe0
Improve brute-force offsets with process pool
...
Refactored the brute-force offset search in `_decrypt_crypt14` to use `ProcessPoolExecutor` for better parallelism and performance. Improved progress reporting and clean shutdown on success or interruption.
2026-01-17 14:43:51 +08:00
KnugiHK
c05e76569b
Add more chat type
2026-01-17 13:55:16 +08:00
KnugiHK
a6fe0d93b1
Rename the obj variable to json_obj in telegram_json_format
2026-01-17 13:54:56 +08:00
KnugiHK
2d096eff4d
Add tqdm as dependency
2026-01-17 13:45:39 +08:00
KnugiHK
ea9675973c
Refactor Message class to accept pre-initialized Timing object
...
Pass the `Timing` object directly through `timezone_offset` to avoid repeated initialization of the same object within the `Message` class.
2026-01-17 13:42:11 +08:00
KnugiHK
064b923cfa
Convert time unit for progress
2026-01-17 13:22:56 +08:00
KnugiHK
cd35ffc185
Remove the prompt after user enter the password
2026-01-17 13:19:10 +08:00
KnugiHK
05bd26b8ed
Decrease the default brute force worker to 4
2026-01-17 13:18:49 +08:00
KnugiHK
d200130335
Refactor to use tqdm for showing progress
2026-01-17 13:18:31 +08:00
KnugiHK
1c7d6f7912
Update README.md
2026-01-14 02:10:05 +08:00
KnugiHK
94960e4a23
Add iphone_backup_decrypt as an optional dependency ( #123 )
...
to make managing dependency easier
2026-01-14 02:07:10 +08:00
KnugiHK
79578d867f
Handle new LID mapping #188 , #144 , #168
...
Implements the latest LID mapping changes. This should fully addresses #188 and likely resolves #144 (validation required). Note: A successful fix for #144 deprecates the pending workaround in #168 . Additionally, resolved a bug where chat filters were not working for newly created chat rooms.
2026-01-13 01:52:58 +08:00
KnugiHK
6910cc46a4
Update android_handler.py
2026-01-12 22:55:51 +08:00
KnugiHK
9e0457e720
Adjust the reaction to be render on the bottom left/right corner
...
This makes the reaction match WhatsApp's theme.
2026-01-12 22:54:05 +08:00
KnugiHK
e0967a3104
Defer reaction logging until table existence is confirmed
...
Moved the "Processing reactions..." log entry to occur after the `message_add_on` table check. This prevents the log from appearing on the old WhatsApp schema
2026-01-12 22:23:16 +08:00
KnugiHK
db50f24dd8
Minor formats
2026-01-12 22:19:59 +08:00
Cosmo
75fcf33fda
feat: Add support for exporting message reactions
2026-01-11 07:06:23 -08:00
KnugiHK
0ba81e0863
Implement granular error handling
...
Added and improved layered Zlib and SQLite header checks to distinguish between authentication failures (wrong key) and data corruption.
2026-01-08 23:59:31 +08:00
KnugiHK
647e406ac0
Implement early key validation via authenticated decryption ( #190 )
...
Utilize `decrypt_and_verify` to immediately identify incorrect user-provided keys via GCM tag validation.
2026-01-08 23:57:02 +08:00
KnugiHK
9cedcf1767
Create conftest to oves test_nuitka_binary.py to the end of testing
...
Moves test_nuitka_binary.py to the end and fails if the file is missing.
2026-01-06 23:00:36 +08:00
KnugiHK
93a020f68d
Merge branch 'dev'
0.13.0rc2
2026-01-06 21:19:22 +08:00
KnugiHK
401abfb732
Bump version
2026-01-06 21:19:09 +08:00
KnugiHK
3538c81605
Enhance qouted message resolution to include media caption
...
Modified the `reply_query` to support messages that may not have body text but contain media caption.
2026-01-06 20:59:51 +08:00
KnugiHK
5a20953a81
Optimize quoted message lookups via global in-memory mapping
...
This change replaces the inefficient N+1 SQL query pattern with a pre-computed hash map. By fetching `ZSTANZAID` and `ZTEXT` pairs globally before processing, the exporter can resolve quoted message content in O(1) time.
Crucially, this maintains parity with the Android exporter by ensuring that replies to messages outside the current date or chat filters are still correctly rendered, providing full conversational context without the performance penalty of repeated database hits.
2026-01-06 20:51:29 +08:00