Matheus Filype
b7960dbb9a
feat: Optimize Offline Node Processing with Batching and Event Loop Yielding ( #2138 )
...
* fix: improve message resend logic by adding checks for message IDs
* Revert "fix: improve message resend logic by adding checks for message IDs"
This reverts commit c03f9d8e6fc6cbfbb9d1f8f67c169700e704213d.
* fix(messages-recv): improve offline node processing and error handling
* feat: improve offline node processing by yielding to event loop
2025-12-12 06:50:18 +02:00
Rajeh Taher
a7a53ad815
auth-utils: release transaction mutex after references are 0 ( #2153 )
2025-12-12 04:36:47 +02:00
YonkoSam
1e6f65cf5e
fix Memory leak in makeMutex - Promise never gets garbage collected ( #2151 )
...
* Memory leak in makeMutex - Promise never gets garbage collected
Hey, I've been debugging a memory leak in my application and traced it back to the makeMutex implementation.
The current implementation chains promises indefinitely without ever breaking the chain:
Every call to mutex() creates a new Promise that awaits the previous task, then becomes the new task. The problem is the old promises never get released because each one holds a reference to the previous through the closure.
What I found
Took a heap snapshot after running for a while and found hundreds of Promises from make-mutex.js holding ~15MB and growing. The retainer graph shows a long chain of Promises all pointing back to each other.
Since processingMutex handles every incoming message/notification, this chain grows constantly and never shrinks.
This keeps the same mutex behavior but lets the GC clean up old promises every 50 tasks instead of holding them forever.
* Refactor makeMutex to use AsyncMutex directly
* lint
* revert
2025-12-12 04:35:24 +02:00
Matheus Filype
829fa8d601
feat: Mutex redesign - isolate event processing for better ordering and throughput ( #2137 )
...
* fix: improve message resend logic by adding checks for message IDs
* Revert "fix: improve message resend logic by adding checks for message IDs"
This reverts commit c03f9d8e6fc6cbfbb9d1f8f67c169700e704213d.
* fix: introduce separate mutexes for message, receipt, app state patch, and notification processing
* fix: remove unused processing mutex for notifications
2025-12-12 04:34:59 +02:00
Rajeh Taher
8e93934eb7
readme: editorial changes
...
Added support and sponsorship information to README.
2025-12-10 23:00:55 +02:00
Rajeh Taher
cfca468df2
Update README.md
2025-12-10 23:00:26 +02:00
Rajeh Taher
4e9600396b
readme: typo
...
Removed mention of discount for multiple hours in support section.
2025-12-10 22:39:31 +02:00
Rajeh Taher
1afb0a9af6
readme: updates
2025-12-10 22:37:48 +02:00
João Lucas de Oliveira Lopes
43d1787532
fix: improve media upload handling and reduce memory pressure ( #2128 )
...
* fix: improve media upload handling and reduce memory pressure
* fix: enhance media upload functionality and add comprehensive tests
2025-12-06 03:06:24 +02:00
João Lucas de Oliveira Lopes
674f116b00
fix(messages-recv): cancel pending phone requests for message retries ( #2147 )
2025-12-05 23:41:14 +02:00
YonkoSam
96e4e04239
Await cache checks for message resend logic ( #2136 )
2025-12-05 23:40:38 +02:00
github-actions[bot]
cb8b3717aa
chore(release): v7.0.0-rc.9
2025-11-21 15:38:40 +00:00
Rajeh Taher
f46e8b118c
messages-recv: handle newsletter and unavailable message acks
2025-11-21 17:35:46 +02:00
Rajeh Taher
23f1268918
messages-recv: remove outdated case for privacy_token
2025-11-21 17:09:06 +02:00
Rajeh Taher
9720ff49ca
Merge remote-tracking branch 'origin/master'
2025-11-19 17:15:38 +02:00
Rajeh Taher
a3950dfb7e
funding: add vinikjkkj to GitHub Sponsors list
2025-11-19 17:15:31 +02:00
github-actions[bot]
b371cac3a8
chore(release): v7.0.0-rc.8
2025-11-19 15:01:16 +00:00
Rajeh Taher
6c4790087e
Merge remote-tracking branch 'origin/master'
2025-11-19 16:57:29 +02:00
Rajeh Taher
129df47fbb
revert #2010
2025-11-19 16:57:22 +02:00
Rajeh Taher
e3cc1acec0
messages-recv: ignore only view once messages
2025-11-19 16:54:57 +02:00
Rajeh Taher
0c22abb1df
readmes: remove survey message
2025-11-19 16:47:53 +02:00
github-actions[bot]
b75caf6186
chore(release): v7.0.0-rc.7
2025-11-19 14:38:47 +00:00
Rajeh Taher
247c717881
messages, auth: rename 'contacts-tc-token' to tctoken
2025-11-19 16:35:18 +02:00
Rajeh Taher
50d410d117
chore: lint
2025-11-19 16:25:56 +02:00
Rajeh Taher
235d7ec6f6
eslint: fix after a pr
2025-11-19 15:32:48 +02:00
João Lucas de Oliveira Lopes
7254917c53
test: add unit tests for LIDMappingStore and message processing utilities ( #1949 )
...
* test: add unit tests for LIDMappingStore and message processing utilities
* Update src/__tests__/Signal/lid-mapping.test.ts
Co-authored-by: Rajeh Taher <rajeh@reforward.dev >
* Update src/__tests__/Utils/process-message.test.ts
Co-authored-by: Rajeh Taher <rajeh@reforward.dev >
* Update src/__tests__/Utils/process-message.test.ts
Co-authored-by: Rajeh Taher <rajeh@reforward.dev >
---------
Co-authored-by: Rajeh Taher <rajeh@reforward.dev >
2025-11-19 15:26:34 +02:00
Clayton Lopes
ae5260fc96
Fix memory leak caused by missing TTL in cache ( #2044 )
2025-11-19 15:23:34 +02:00
vini
a70e4da1c4
feat(signal): better parity with whatsapp web ( #1967 )
2025-11-19 15:20:49 +02:00
Marc Knaup
3be21f8b99
Added missing attribute to community participant removal ( #2004 )
2025-11-19 15:20:07 +02:00
Anychat LLC
2779c9df08
Update messages-media.ts ( #1988 )
...
Fix of issue https://github.com/WhiskeySockets/Baileys/issues/1986
2025-11-19 15:19:56 +02:00
Skid
9e7de2f494
new rule: no-floating-promises ( #2073 )
2025-11-19 15:18:42 +02:00
Cassio Santos
5c456e514e
fix: cannot send message on new Whatsapp Business limited accounts ( #2080 )
...
* fix: cannot send message on new Whatsapp Business limited accounts
* chore: add woraround to resend the message on 475 errors
* fix: lint
* fix: add handler
* fix: lint
* Update src/Socket/messages-send.ts
---------
Co-authored-by: Rajeh Taher <rajeh@reforward.dev >
2025-11-19 15:18:19 +02:00
Muhammad Restu
0145e4c710
Fix jimp type check from 'object' to 'function' ( #2034 )
...
Fixes the error “No image processing library is available.” even when Jimp is installed.
In recent versions of Jimp, Jimp is now defined as a class instead of an object, which breaks the existing type check.
*Idk if this is useless/useful
2025-11-19 15:17:59 +02:00
vini
40f128d88a
feat(events): decrypt event responses ( #2056 )
2025-11-19 15:17:21 +02:00
vini
b4863b624e
refactor(retry): improve message encryption and retry logic ( #2055 )
2025-11-19 15:13:51 +02:00
João Lucas de Oliveira Lopes
9b012baa5c
fix: suppress receipts for newsletter messages to prevent disconnection ( #2071 )
2025-11-19 15:13:03 +02:00
João Lucas de Oliveira Lopes
e5f820d119
fix: gracefully handle unavailable view-once messages and improve log error ( #2070 )
2025-11-19 15:12:28 +02:00
Rajeh Taher
abf5af0e72
history: improve history sync and support new payload
2025-11-07 00:16:15 +02:00
Rajeh Taher
a8b8eceb72
waproto, validate-connection: Update headers and proto to latest version
2025-11-06 23:41:41 +02:00
George Hazan
ba32ef9110
let's make the example working ( #2017 )
2025-11-05 23:28:03 +02:00
github-actions[bot]
4599ff84bb
chore(release): v7.0.0-rc.6
2025-10-19 22:37:38 +00:00
Rajeh Taher
88c5377ec6
ci: fix changelog gen
2025-10-20 01:34:15 +03:00
Rajeh Taher
29318cf6c2
chore: lint and re-organize
2025-10-20 00:37:37 +03:00
Rajeh Taher
cc3cd17392
cleanup: remove string lid / jid refs and improve hosted support
2025-10-20 00:05:54 +03:00
Rajeh Taher
2e47d4b66b
messages-send, signal: improve hosted device support + patch cache
2025-10-19 23:56:05 +03:00
Rajeh Taher
928fa6ac66
messages-recv: simplify retry logic + re-do acks
2025-10-18 21:02:58 +03:00
Rajeh Taher
7ee0b61716
chore: lint
2025-10-18 20:35:36 +03:00
Rajeh Taher
07536dedfc
process-message: check fromMe properly in message addons
2025-10-18 20:28:58 +03:00
Rajeh Taher
ca50338be1
signal: process devices sequentially
2025-10-18 20:28:03 +03:00
Rajeh Taher
9f787c51d3
libsignal: Fix sending to hosted devices
2025-10-18 20:27:06 +03:00