KnugiHK
322b12a5a4
Fix a crash in message counting if chat filter is in use
2026-01-24 18:02:30 +08:00
KnugiHK
28ba97d72f
Fix CI on Windows
2026-01-24 17:38:22 +08:00
KnugiHK
eab98ba0d6
Fix crash on pre-release versions and enable update checks for pre-releases
2026-01-24 17:20:07 +08:00
KnugiHK
f920ca82b4
Refactor the logging facility a bit
2026-01-24 17:05:14 +08:00
KnugiHK
4eed3ca321
Refactor CLEAR_LINE in a more pythonic way
...
So it is easier for contributor to write a logging line for this project.
2026-01-24 16:48:07 +08:00
KnugiHK
746e4e1ac5
Fix and improve the logging facility for incremental merge
2026-01-24 16:24:10 +08:00
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
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
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
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
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
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
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
KnugiHK
8f29fa0505
Center the version string in the exporter banner
2026-01-06 20:35:02 +08:00
KnugiHK
412efd66a0
Add --tg as an alias to --telegram
2026-01-01 15:06:21 +08:00
KnugiHK
aef568b80b
Merge branch 'main' into dev
2025-12-27 16:48:47 +08:00