Skip to content

v0.3.0

Choose a tag to compare

@github-actions github-actions released this 07 Mar 16:49
· 564 commits to main since this release
2b15e59

New docs: whatsapp-rust.jlucaso.com

What's Changed

  • Refactor buffer pooling to plaintext-only and implement zero-copy encrypted buffers by @jlucaso1 in #207
  • feat: add support for extra stanza nodes in message sending and editing by @jlucaso1 in #214
  • refactor: replace IndexMap with custom Attrs type for better performance and cache locality by @jlucaso1 in #223
  • feat: convert dependencies to workspace references across multiple crates by @jlucaso1 in #222
  • feat: add benchmarks for libsignal cryptographic operations and include futures as a dev dependency by @jlucaso1 in #224
  • perf: optimize libsignal reducing allocations by @jlucaso1 in #225
  • Registers an external event handler to the core event bus. by @rvoidex7 in #226
  • feat: implement message revocation functionality with RevokeType support by @jlucaso1 in #220
  • refactor: split noise module by @jlucaso1 in #232
  • feat!: add platform_type support to fix device display name by @jlucaso1 in #234
  • feat: add group creation by @jlucaso1 in #236
  • feat: type-safe IQ protocol architecture with derive macros by @jlucaso1 in #237
  • Fix regular low bug by @jlucaso1 in #239
  • feat: add unified session telemetry by @jlucaso1 in #238
  • perf: Cache Edwards public key for XEdDSA signatures (-27% signing, with lazy key gen) by @jlucaso1 in #240
  • fix: Prevent MAC verification failures by checking session existence before establishment by @jlucaso1 in #241
  • perf: Enhance signing performance by caching scalar representation in PrivateKey by @jlucaso1 in #242
  • fix: Parse device JID attribute in device notifications by @jlucaso1 in #243
  • refactor: Simplify quote handling by using build_quote_context and strip nested mentions by @jlucaso1 in #244
  • perf(encoder): skip JID parsing for long strings by @Copilot in #245
  • feat(libsignal): amortized eviction for message key storage by @Copilot in #246
  • Cache SenderKeyMessage ciphertext to avoid re-decode by @Copilot in #248
  • Refactor get_children_by_tag to return Iterator instead of Vec by @Copilot in #247
  • Refactor Attrs to use NodeValue enum for JID storage optimization by @Copilot in #249
  • feat: Implement bidirectional ProtocolNode types for prekey responses by @jlucaso1 in #250
  • Fix message decryption errors by @jlucaso1 in #254
  • feat: implement local re-queueing for group encrypted messages to tolerate out-of-order delivery of sender keys. by @jlucaso1 in #255
  • chore(deps): bump typed-builder from 0.20.1 to 0.23.2 by @dependabot[bot] in #252
  • feat: enhance chatstate parsing with detailed error handling and self-echo detection by @jlucaso1 in #260
  • feat: improve send group message by @jlucaso1 in #259
  • feat: add support for business notifications and status updates by @jlucaso1 in #261
  • chore(deps): bump rand_core from 0.9.5 to 0.10.0 by @dependabot[bot] in #263
  • Fix portable_simd API compatibility with current nightly by @0ldev in #262
  • ⚡ Optimize N+1 delete query in app state mutations by @jlucaso1 in #265
  • ⚡ Optimize app state mutation persistence with batch inserts by @jlucaso1 in #266
  • Add group management IQs and participant types by @jlucaso1 in #268
  • Offload app state patch processing to blocking thread by @jlucaso1 in #267
  • feat: add props_hash to device table for delta updates and refactor related logic by @jlucaso1 in #269
  • chore: remove some unused structs and cleanup todos by @jlucaso1 in #270
  • feat: add skip_history_sync option to BotBuilder and Client for ignoring history sync notifications by @jlucaso1 in #277
  • Feat support download unencrypted media by @jlucaso1 in #278
  • perf: binary by @jlucaso1 in #279
  • feat: tc token by @jlucaso1 in #280
  • fix: use fresh stanza ID for edit_message to prevent server dedup by @199-bio in #295
  • fix: use while loop for app state sync pagination by @jlucaso1 in #296
  • fix: gate Connected event behind critical app state sync on pairing by @jlucaso1 in #297
  • feat: batched multi-collection app state sync with incremental updates by @jlucaso1 in #298
  • feat: status sending by @jlucaso1 in #299
  • fix: improve offline reconnection handling by @jlucaso1 in #301
  • Automate publishing process by @jlucaso1 in #300

New Contributors

  • @rvoidex7 made their first contribution in #226
  • @0ldev made their first contribution in #262
  • @199-bio made their first contribution in #295

Full Changelog: v0.2.0...v0.3.0