Releases: openclaw/wacli
Releases · openclaw/wacli
v0.8.0
v0.7.0
Changelog
- f77044b bug: recover per media job so a panic no longer kills the worker (#176)
- 9fff67c build: add docs site deployment
- b122dfe build: update go dependencies
- 866e1b5 build: update pnpm metadata
- d9fb426 build: update whatsmeow
- 4517528 ci: opt into Node 24 action runtime
- 78794f9 ci: sync the Homebrew tap on release
- 5c24523 ci: update GitHub actions to Node 24 runtime
- 1b52970 enhance: log stack trace, event type, and counter when recovering sync panics (#178)
- 108da98 feat(cli): add NDJSON lifecycle events
- b24bfc1 feat(messages): add JSON export filters
- f1cb39f feat(send): add sticker messages
- 352caa8 feat(store): migrate historical LID rows to phone numbers
- b0b7786 feat(sync): add webhook signatures
- 2c9fe08 feat: add WhatsApp channels support
- 4aa3ef3 feat: add chat state commands
- f6a9454 feat: add command safety controls
- a2c7803 feat: add history coverage dry-run planning
- af671e1 feat: add local store cleanup commands
- dffcda4 feat: add message list filters (#153) (thanks @draix)
- de84bd2 feat: add opt-in message escape decoding
- 120805d feat: add presence commands (#76) (thanks @redemerco)
- d08620a feat: add profile set-picture command
- 782c290 feat: add quoted text replies (#154) (thanks @draix)
- 91d240a feat: add resilient message reactions
- ed4df0b feat: add send text link previews
- 09b2efb feat: add send text mentions
- da9134e feat: add sent message edit and delete
- cd311e8 feat: add starred message filters
- d0752db feat: add voice note sending
- ec60822 feat: enrich auth and doctor status (#149)
- 7533e4b feat: expose forwarded message metadata
- 403fda0 feat: import system contacts
- 1e8342f feat: improve auth identity and recipient parsing
- a3a620a feat: parse WhatsApp Business message text (#79) (thanks @terry-li-hm)
- 9856075 feat: persist group community hierarchy
- eabf8d6 feat: print raw auth QR payload
- 56f9c26 feat: resolve send recipients by name
- 372e1fc feat: show full message IDs in table output (#13) (thanks @rickhallett)
- 70e5a20 feat: store structured reaction metadata
- 31504a8 feat: support delete-for-me tombstones
- e2bebf6 feat: support phone pairing auth
- 3ce15af feat: support quoted file sends
- 0826cd4 fix(cli): emit event errors under events mode
- eaa7a1b fix(send): delegate sends during sync
- 03e5364 fix(send): store sent reactions locally
- 1b46490 fix(sync): request app-state recovery on lthash mismatch
- a59b960 fix: add sync panic telemetry (#181) (thanks @shaun0927)
- ff63348 fix: add windows lock implementation (#188) (thanks @dinakars777)
- 4f45138 fix: align docs home CTA heights
- 40330f6 fix: allow media downloads to shared output dirs
- e73dba0 fix: attribute LID group history senders (#19) (thanks @entropyy0)
- 515cd43 fix: avoid initial history sync during backfill
- 12e8e1a fix: bound media enqueue backpressure (#121) (thanks @jyothepro)
- 6fac72e fix: decrypt history sync reactions
- 65c9be4 fix: detect FTS5 on existing databases after migration already applied
- 3dfd4f9 fix: detect existing FTS tables after reopen (#185) (thanks @iamhitarth)
- 70f2afd fix: enable UseRetryMessageStore so retry-receipts are handled
- 6076deb fix: enforce private directory permissions
- 999461c fix: escape wildcard list queries
- 7c42182 fix: guard WA client lazy initialization
- b4ca2e3 fix: include image metadata for sends
- 4481fc8 fix: include mapped LID chats in message filters
- 42eb626 fix: keep media workers alive after panics (#179) (thanks @shaun0927)
- ad1f477 fix: keep send alive for retry receipts
- 894bc5d fix: keep sync idle timer on message events (#119) (thanks @jyothepro)
- b2935c1 fix: make message ordering deterministic
- 95f2136 fix: mark missing groups left on refresh
- 21063d8 fix: normalize identities and group left state
- 3e17ff0 fix: normalize phone recipients with plus prefix (#74) (thanks @FrederickStempfle)
- 4eaad5f fix: persist retry messages (#186) (thanks @SimDamDev)
- 3a633d5 fix: reject cgo-disabled cli builds
- 787cfd5 fix: resolve historical LID sender names
- fca5b96 fix: resolve live LID messages before storage
- 66c6d41 fix: resolve mapped LID chats in chat output
- 87095bd fix: resolve mapped chat aliases for message show
- 716e7a8 fix: restrict sqlite database file permissions (#147) (thanks @draix)
- 3031a34 fix: retry transient auth pairing drops
- 3077e62 fix: send OGG audio with WhatsApp codec
- a022c49 fix: show display text in message context (#183) (thanks @fuleinist)
- 6400f5d fix: show rich message details
- 02f98c3 fix: show stored sender names in messages
- 9568cbf fix: surface QR pairing failures
- 0ce9208 fix: surface doctor lock owner state (#105) (thanks @artemgetmann)
- fa1c800 fix: use XDG state dir on Linux
- 54d44b3 fix: validate message search media filters (#128)
- f8ce9ee fix: warn on encrypted reaction decrypt failures
- 2f294e2 fix: warn on rapid send commands
- 259bcf2 messages context: prefer DisplayText over raw Text (issue #173)
- cd98a9d refactor: centralize table output helpers
- 86a43de refactor: split WhatsApp message parsing
- 3c8de4d refactor: split core store schema
- a03b0e9 refactor: split message output formatting
- bd92cc4 refactor: split store chat contact and group methods
- 668d7e5 refactor: split sync event and idle loops
- fae308a refactor: split whatsapp jid and session helpers
- 83d89da security: cap media transfer sizes
- d410e9f security: cap sync storage growth
- ea4ca18 security: reject '?' and '#' in StorePath for whatsmeow session store (#177)
- 2c09f12 security: reject session store URI injection (#180) (thanks @shaun0927)
- 318421d security: validate phone recipients (#144)
v0.6.0
This release contains a massive security sweep resolving multiple underlying vulnerabilities in the SQLite store and path sanitization constraints, as well as fixing the critical sync/reconnect deadlocks.
Huge thanks to @draix for the security patches, and tying off the backlog sweep for @steipete!
What's Changed
- chore(deps): bump filippo.io/edwards25519 from 1.1.0 to 1.1.1 in the go_modules group across 1 directory by @dependabot[bot] in #69
- security: validate SQLite URI path against '?' and '#' injection (#59) by @draix in #141
- security: guard tableHasColumn against empty table name (#58) by @draix in #142
- security: strip null bytes and control chars in path sanitization (#60) by @draix in #140
- bug: escape LIKE wildcard chars in search queries (#56) by @draix in #145
- bug: sanitize FTS5 user queries to prevent query-syntax injection (#57) by @draix in #146
- security: add panic recovery to event handler and media workers (#52) by @draix in #143
- feat: add WACLI_STORE_DIR env variable to configure store directory (#36) by @draix in #150
- fix: force exit on second SIGINT during long-running commands by @dinakars777 in #112
- fix: bound reconnect duration to prevent indefinite lock holding by @dinakars777 in #113
New Contributors
- @dependabot[bot] made their first contribution in #69
- @draix made their first contribution in #141
- @dinakars777 made their first contribution in #112
Full Changelog: v0.5.0...v0.6.0
v0.5.0
WhatsApp Protocol Fix
This release patches a critical bug where WhatsApp rejected the client version with a 405 (Client Outdated) error, breaking connectivity for all users.
- Bumps the underlying
whatsmeowlibrary to match recent WhatsApp protocol changes. - Contains all previous unreleased fixes by @steipete currently residing in main.
What's Changed
- fix: update whatsmeow to fix 405 client outdated error by @alitala2009 in #117
New Contributors
- @alitala2009 made their first contribution in #117
Full Changelog: v0.2.0...v0.5.0
v0.2.0
Changelog
- 85e2e98 Add display text for reactions and replies
- 7175062 Add linked device label
- c0c9067 Merge pull request #4 from zats/device-label
- d3bf6fe Merge pull request #5 from zats/display-text
- 5ef1a52 Merge pull request #7 from plattenschieber/feature/add-filename-flag
- 75d649e Merge pull request #8 from ramarivera/fix/gcc15-cgo-werror
- 8783647 ci: add multi-os release workflow
- aa82566 feat: add --filename flag to override display name when sending files
- 6c764ac fix: add CGO_CFLAGS for GCC 15+ compatibility
- ed1ca55 fix: add changelog entry for send filename (#7) (thanks @plattenschieber)
- e187327 fix: only override device platform when set (#4) (thanks @zats)
- b5daa57 fix: preserve CGO_CFLAGS in build script (#8) (thanks @ramarivera)
- aa07a0d fix: use filePath for MIME detection instead of display name