diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml
index b8d64d08..87f0ad11 100644
--- a/.github/workflows/release.yml
+++ b/.github/workflows/release.yml
@@ -446,15 +446,19 @@ jobs:
if [ -z "$FULL_CHANGELOG" ]; then
CHANGELOG="See release notes on GitHub for details."
else
- # Convert GitHub Markdown to Telegram Markdown:
- # - **text** → *text* (GitHub bold to Telegram bold)
- # - ### Header → *Header* (headers to bold)
- # - Add extra line break before major list items for readability
+ # Convert GitHub Markdown to Telegram HTML:
+ # - **text** → text
+ # - `code` → code
+ # - ### Header → Header
+ # - Escape HTML special chars first
CHANGELOG=$(echo "$FULL_CHANGELOG" | \
- sed 's/\*\*\([^*]*\)\*\*/*\1*/g' | \
- sed 's/^### \(.*\)$/*\1*/g' | \
- sed 's/^## \(.*\)$/*\1*/g' | \
- sed 's/^- \*\*\([^:]*\):\*\*/\n• *\1:*/g' | \
+ sed 's/&/\&/g' | \
+ sed 's/\</g' | \
+ sed 's/>/\>/g' | \
+ sed 's/`\([^`]*\)`/\1<\/code>/g' | \
+ sed 's/\*\*\([^*]*\)\*\*/\1<\/b>/g' | \
+ sed 's/^### \(.*\)$/\1<\/b>/g' | \
+ sed 's/^## \(.*\)$/\1<\/b>/g' | \
sed 's/^- /• /g' | \
sed 's/^ - / ◦ /g')
@@ -482,23 +486,23 @@ jobs:
ARM64_APK=$(find ./release -name "*arm64*.apk" | head -1)
ARM32_APK=$(find ./release -name "*arm32*.apk" | head -1)
- # Prepare message with changelog (files uploaded separately)
+ # Prepare message with changelog (HTML format)
printf '%s\n' \
- "*SpotiFLAC Mobile ${VERSION} Released!*" \
+ "SpotiFLAC Mobile ${VERSION} Released!" \
"" \
- "*What's New:*" \
+ "What's New:" \
"${CHANGELOG}" \
"" \
- "[View Release Notes](https://github.com/${{ github.repository }}/releases/tag/${VERSION})" \
+ "View Release Notes" \
> /tmp/telegram_message.txt
MESSAGE=$(cat /tmp/telegram_message.txt)
- # Send message first
+ # Send message first (using HTML parse mode)
curl -s -X POST "https://api.telegram.org/bot${TELEGRAM_BOT_TOKEN}/sendMessage" \
-d chat_id="${TELEGRAM_CHANNEL_ID}" \
-d text="${MESSAGE}" \
- -d parse_mode="Markdown" \
+ -d parse_mode="HTML" \
-d disable_web_page_preview="true"
# Upload arm64 APK to channel