Skip to content

Commit ecbd2c8

Browse files
committed
2025.10
1 parent 9d0997b commit ecbd2c8

File tree

8 files changed

+154
-0
lines changed

8 files changed

+154
-0
lines changed

AGENTS.md

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -87,3 +87,27 @@ The ChatWoot overview and app articles share the same WAHA + ChatWoot logo strip
8787
5. Remove `/tmp/logos.png`, `/tmp/waha-chatwoot.png`, and the emoji assets when you're done.
8888

8989
This keeps the branding centred with a comfortable gap and ensures every ChatWoot cover reuses the original artwork.
90+
91+
## WAHA Release Covers (logo + version)
92+
93+
Use this recipe for the monthly WAHA release blog covers. It keeps the "WAHA" headline centred, then places the version label and WAHA logo inside a rounded white pill underneath.
94+
95+
```bash
96+
./scripts/generate-waha-cover.sh \
97+
--version 2025.10 \
98+
--gradient '#0b1120-#0f766e' \
99+
--output content/blog/waha-2025-10/waha-2025-10.png
100+
```
101+
102+
Parameters:
103+
104+
- `--version` sets the label inside the pill; text renders in WAHA green `#10991e`.
105+
- `--gradient` accepts any ImageMagick gradient string (e.g. `'#0f172a-#6d28d9'` for purple). Pick a fresh palette per release.
106+
- `--output` is the target PNG path. The script overwrites the file if it exists.
107+
- `--logo` is optional if you ever need to point at a different mark (defaults to `images/logo.png`).
108+
109+
Tweaks:
110+
111+
- Move the pill closer/further from the headline by editing the `-geometry +0+130` value in the script.
112+
- Shift the version text or logo inside the pill by changing the `-annotate` and `-geometry` offsets in the script.
113+
- Update the font by changing the `FONT` variable if DejaVu Sans is unavailable in a new environment.

content/blog/waha-2025-10/index.md

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
---
2+
title: "WAHA 2025.10 - ChatWoot Pull Commands, Secure Defaults"
3+
description: "ChatWoot history and contact pulls, stronger security defaults, and stability upgrades across WAHA 2025.10."
4+
excerpt: "ChatWoot contact + message pull commands, enforced API credentials, and engine improvements headline WAHA 2025.10."
5+
date: 2025-10-31T08:48:45+00:00
6+
draft: false
7+
images: [ "waha-2025-10.png" ]
8+
categories: [ "Releases" ]
9+
tags: [ ]
10+
contributors: [ "devlikeapro" ]
11+
pinned: false
12+
homepage: false
13+
slug: waha-2025-10
14+
---
15+
16+
## 💬 ChatWoot – Messages Sync
17+
Need old conversations inside ChatWoot? Run `wa/messages pull` to replay WhatsApp chat history, pick the time range, fetch media, and even close conversations during the import. Every switch is explained in the [**💬 ChatWoot – Messages Guide**]({{< relref "/blog/apps-chatwoot-5-messages" >}}).
18+
19+
The dashboard watches each job, keeps rate limits safe, and skips duplicates so long imports do not crash your inbox.
20+
21+
## 👤 ChatWoot – Contacts Sync
22+
`wa/contacts pull` keeps the ChatWoot contact list matched with WhatsApp. It copies names, numbers, avatars, groups, and LIDs, so agents always see the latest profile. Learn how to schedule the sync in the [**👤 ChatWoot – Contacts Guide**]({{< relref "/blog/apps-chatwoot-6-contacts" >}}).
23+
24+
## 🔐 Secure Defaults
25+
Release `2025.10.3` now protects every fresh install. WAHA auto-generates `WAHA_API_KEY`, `WAHA_DASHBOARD_PASSWORD`, and `WHATSAPP_SWAGGER_PASSWORD` when you leave them empty, and it blocks weak passwords such as `0000`, `123`, `admin`, or `waha`. If your setup truly needs to switch any guard off, follow the checklist in [**🔒 Security**]({{< relref "/docs/how-to/security/#how-to-disable-security" >}}).
26+
27+
## 🛠️ Other Fixes
28+
- Voice conversions now work every time (`ffmpeg` goes back to mp3 and WEBJS handles `convert: true`), and channels can receive media again.
29+
- Message reactions, list messages, edited events, and `{device}@lid` group IDs behave the same across engines.
30+
- Sending images through a proxy, loading media over SSL, opening `/about`, and paginating `/messages` all work again after bug fixes.
31+
32+
## 📚 Full Changelog
33+
Open the [**🆕 WAHA 2025.10 Changelog**]({{< relref "/docs/overview/changelog#202510" >}}) to read the full list with issue links and engine notes.
74.5 KB
Loading
14.5 KB
Loading
40.8 KB
Loading
34.5 KB
Loading

hugo_stats.json

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -403,10 +403,14 @@
403403
"-changing-ports-will-not-save-you",
404404
"-channels",
405405
"-chats",
406+
"-chatwoot--contacts-sync",
407+
"-chatwoot--messages-sync",
406408
"-chatwoot-11",
407409
"-chatwoot-app",
410+
"-chatwoot-pull-commands",
408411
"-contacts",
409412
"-dashboard-i18n",
413+
"-engine--api-upgrades",
410414
"-engine-updates",
411415
"-event-message",
412416
"-events",
@@ -415,6 +419,7 @@
415419
"-final-word",
416420
"-fixes--stability",
417421
"-fixes-and-updates",
422+
"-full-changelog",
418423
"-group-receipts-tracking",
419424
"-groups",
420425
"-groups-api---noweb-gows",
@@ -432,19 +437,22 @@
432437
"-new---swagger-white-label",
433438
"-noweb-70-rc",
434439
"-observability",
440+
"-other-fixes",
435441
"-polls",
436442
"-polls-gows",
437443
"-presence",
438444
"-presence-webjs",
439445
"-profile-api",
440446
"-search-channels-api",
447+
"-secure-defaults",
441448
"-security-in-waha-core",
442449
"-send-link-custom-preview",
443450
"-send-poll-vote-api-gows",
444451
"-send-reaction-to-channels",
445452
"-sessions",
446453
"-sessions---filter-chats",
447454
"-sessions---ignore-chats",
455+
"-stability-fixes",
448456
"-stability-improvements",
449457
"-status",
450458
"-storages",

scripts/generate-waha-cover.sh

Lines changed: 89 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,89 @@
1+
#!/usr/bin/env bash
2+
set -euo pipefail
3+
4+
VERSION=""
5+
OUTPUT=""
6+
GRADIENT="#0b1120-#0f766e"
7+
LOGO="images/logo.png"
8+
FONT="DejaVu-Sans-Bold"
9+
10+
usage() {
11+
cat <<USAGE
12+
Usage: $0 --version VERSION --output PATH [--gradient "#start-#end"] [--logo PATH]
13+
14+
Generates a WAHA release cover image with the standard layout.
15+
USAGE
16+
}
17+
18+
while [[ $# -gt 0 ]]; do
19+
case "$1" in
20+
--version)
21+
VERSION="$2"
22+
shift 2
23+
;;
24+
--output)
25+
OUTPUT="$2"
26+
shift 2
27+
;;
28+
--gradient)
29+
GRADIENT="$2"
30+
shift 2
31+
;;
32+
--logo)
33+
LOGO="$2"
34+
shift 2
35+
;;
36+
-h|--help)
37+
usage
38+
exit 0
39+
;;
40+
*)
41+
echo "Unknown option: $1" >&2
42+
usage
43+
exit 1
44+
;;
45+
esac
46+
done
47+
48+
if [[ -z "$VERSION" || -z "$OUTPUT" ]]; then
49+
echo "Error: --version and --output are required." >&2
50+
usage
51+
exit 1
52+
fi
53+
54+
if ! command -v convert >/dev/null 2>&1; then
55+
echo "Error: ImageMagick 'convert' command not found." >&2
56+
exit 1
57+
fi
58+
59+
if [[ ! -f "$LOGO" ]]; then
60+
echo "Error: Logo file '$LOGO' not found." >&2
61+
exit 1
62+
fi
63+
64+
BG=$(mktemp /tmp/waha_bg.XXXXXX.png)
65+
STAGE=$(mktemp /tmp/waha_stage.XXXXXX.png)
66+
PILL=$(mktemp /tmp/waha_pill.XXXXXX.png)
67+
PILL_TXT=$(mktemp /tmp/waha_pill_text.XXXXXX.png)
68+
PILL_READY=$(mktemp /tmp/waha_pill_ready.XXXXXX.png)
69+
LOGO_TMP=$(mktemp /tmp/waha_logo.XXXXXX.png)
70+
71+
cleanup() {
72+
rm -f "$BG" "$STAGE" "$PILL" "$PILL_TXT" "$PILL_READY" "$LOGO_TMP"
73+
}
74+
trap cleanup EXIT
75+
76+
convert -size 600x1200 gradient:"$GRADIENT" -rotate 90 "$BG"
77+
convert "$BG" \
78+
-gravity center -font "$FONT" -pointsize 210 -fill white \
79+
-annotate +0-80 'WAHA' "$STAGE"
80+
convert -size 870x170 xc:none \
81+
-draw "fill white roundrectangle 0,0 869,169 85,85" "$PILL"
82+
convert "$PILL" \
83+
-gravity West -font "$FONT" -pointsize 105 -fill '#10991e' \
84+
-annotate +150+0 "$VERSION" "$PILL_TXT"
85+
convert "$LOGO" -resize 140x140 "$LOGO_TMP"
86+
convert "$PILL_TXT" "$LOGO_TMP" -gravity West -geometry +680+0 -composite "$PILL_READY"
87+
convert "$STAGE" "$PILL_READY" -gravity center -geometry +0+130 -composite "$OUTPUT"
88+
89+
printf "Cover generated: %s\n" "$OUTPUT"

0 commit comments

Comments
 (0)