Commit Graph

2260 Commits

Author SHA1 Message Date
Rajeh Taher b1c76ebe2d chore: lint+bugfix 2026-01-18 01:31:56 +02:00
João Lucas de Oliveira Lopes e53fa7b8e5 Feat improve testing coverage e2e (#1799)
* fix: ensure proper socket closure and await connection termination in tests

* feat(tests): enhance E2E tests for image and video message handling, including downloads and group interactions
2026-01-18 01:16:24 +02:00
vini 0b3b2a88cd fix(messages): enhance nullish value checks in message content generation (#2180) 2026-01-18 01:11:33 +02:00
YonkoSam 1408499d7c moved retryCount before validating the session (#2167) 2026-01-18 01:11:10 +02:00
Matheus Filype 349e7bd771 feat: send tctoken to profile update and presence subscribe (#2257)
* 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.

* feat(tc-token): implement buildTcTokenFromJid utility and integrate into chats socket

* fix(tc-token): ensure consistent return value when tcTokenBuffer is absent

* fix(chats): update import path for buildTcTokenFromJid utility
2026-01-18 01:07:53 +02:00
João Lucas de Oliveira Lopes d4ef73aca5 feat: implement automated WhatsApp version update workflow and related scripts (#2130)
* feat: implement automated WhatsApp version update workflow and related scripts

* change cron to weekly

---------

Co-authored-by: Rajeh Taher <rajeh@reforward.dev>
2026-01-18 01:07:05 +02:00
João Lucas de Oliveira Lopes 9611a1a982 fix(WAProto): Handle string values in long fields during JSON serialization (#1991)
* feat: add patch-tojson functionality for improved proto serialization

* Remove patch-tojson functionality and its import from the main index file to streamline the codebase.

* refactor: simplify longToString and longToNumber functions for better readability and performance
2026-01-14 08:33:45 +02:00
vini 432c26a07c fix(messages): handle encryption failures per recipient and fail when all fail (#2226) 2026-01-08 22:07:11 +02:00
vini c392d4ce6c feat: add support for FB and Interop JID encoding/decoding and empty strings (#2189) 2026-01-08 21:56:50 +02:00
Ibrahim Pelumi Lasisi 720cc688d6 fix: avoid variable shadowing and preserve empty business profile fields (#2183)
* Update business.ts

* chore: fix lint issues
2026-01-08 21:56:13 +02:00
Gustavo Quadri 81d9c12e86 fix: getmessagetype to ensure consistency with whatsapp behavior (#2245) 2026-01-08 21:51:34 +02:00
João Lucas de Oliveira Lopes c9c3481817 implement message reporting tokens (#1906)
* feat: implement message reporting tokens and privacy token handling

* feat: add support for privacy tokens in profile picture requests and history sync

* chore: pr feedback purpshell

* fix: improve privacy token handling and error messaging in socket configuration

* feat: enhance privacy token handling with improved sender mapping

* chore: removing tc token in favor of #2080

* chore: revert some unecessary changes

* feat(reporting): enhance reporting token extraction and compilation logic

* feat(reporting): add unit tests for reporting token utilities

* fix(reporting): streamline reporting token attachment logic in message sending

* fix: adjust reporting token inclusion logic to prevent retries

* chore: add return type to shouldIncludeReportingToken and improve getToken function type safety
2026-01-08 21:50:49 +02:00
Skid 4e681d3219 feat: Verify leaf signature (#2208)
* Update WA_CERT_DETAILS with issuer and public key

* certificate validation

* fix:lint

* padding

* lint: fix tab

---------

Co-authored-by: skidy89 <tutorialesyg310@gmail.com>
2026-01-08 21:49:37 +02:00
Matheus Filype 250477497d Add Feature LabelMember (Based on #2164) (#2198)
* 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.

* feat: add group member label update functionality and event emission

* feat: refactor updateMemberLabel function for improved readability

* feat: use optional chaining for label association message in processMessage

* feat: add updateMemberLabel to makeMessagesSocket for enhanced functionality

* fix: correct log message for group member tag update event

Co-authored-by: FgsiDev
2025-12-19 22:00:48 +02:00
vini 925ed6a7b3 feat(appstate): emit setting events (#2057) 2025-12-15 01:21:44 +02:00
Rajeh Taher 4609a3764e event-buffer: prevent loss of type due to buffering (#2179) 2025-12-14 14:16:28 +02:00
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