From cf3fefabdac350a9af6dc7cc93037b7ba21ff00b Mon Sep 17 00:00:00 2001 From: Pulse Monitor Date: Tue, 12 Aug 2025 12:59:02 +0000 Subject: [PATCH] fix: correct webhook icon URLs and add release notes - Fix Discord webhook templates to use logo.svg instead of non-existent favicon.svg - Add comprehensive release notes for v4.3.0 about embedded frontend breaking change - Document migration path and benefits of embedded frontend The embedded frontend is a significant architectural improvement that eliminates path-related issues but requires clear communication to users about the change. --- RELEASE_NOTES_v4.3.0.md | 42 +++++++++++++++++++++ internal/notifications/webhook_templates.go | 4 +- 2 files changed, 44 insertions(+), 2 deletions(-) create mode 100644 RELEASE_NOTES_v4.3.0.md diff --git a/RELEASE_NOTES_v4.3.0.md b/RELEASE_NOTES_v4.3.0.md new file mode 100644 index 000000000..dbe57830b --- /dev/null +++ b/RELEASE_NOTES_v4.3.0.md @@ -0,0 +1,42 @@ +# Pulse v4.3.0 Release Notes + +## ⚠️ BREAKING CHANGES + +### Frontend Now Embedded in Binary +Starting with v4.3.0, the frontend is embedded directly in the Pulse binary. This is a significant architectural change that simplifies deployment but has some implications: + +**What Changed:** +- Frontend files are now compiled into the Go binary at build time +- No separate `frontend-modern/` directory needed +- Single binary deployment - truly portable +- Smaller release tarballs + +**Migration Notes:** +- **For manual installations**: Simply replace your binary. The old `frontend-modern/` directory can be deleted +- **For Docker users**: No changes needed, containers will work as normal +- **For developers**: Frontend changes now require recompiling the Go binary (use `scripts/rebuild-frontend.sh`) +- **Auto-updates**: Will work seamlessly from v4.2.1 to v4.3.0+ + +**Benefits:** +- Eliminates redirect loop issues (#304) +- No more path resolution problems +- Simpler installation and deployment +- Consistent behavior across all installation methods +- Reduced deployment size + +## Features +- Embedded frontend for simplified single-binary deployment +- Improved installation experience + +## Bug Fixes +- Fixed redirect loops in various installation scenarios (#304) +- Fixed path resolution issues with community scripts vs manual installs + +## Technical Details +The frontend is embedded using Go's `embed` package. During the build process: +1. Frontend is built with npm +2. Built files are copied to `internal/api/frontend-modern/` +3. Go compiler embeds these files into the binary +4. Runtime serves embedded files directly from memory + +This change makes Pulse a true single-binary application, eliminating an entire class of deployment issues. \ No newline at end of file diff --git a/internal/notifications/webhook_templates.go b/internal/notifications/webhook_templates.go index 00aa7bc74..eea90445f 100644 --- a/internal/notifications/webhook_templates.go +++ b/internal/notifications/webhook_templates.go @@ -22,7 +22,7 @@ func GetWebhookTemplates() []WebhookTemplate { Headers: map[string]string{"Content-Type": "application/json"}, PayloadTemplate: `{ "username": "Pulse Monitoring", - "avatar_url": "https://raw.githubusercontent.com/rcourtman/Pulse/main/frontend-modern/public/favicon.svg", + "avatar_url": "https://raw.githubusercontent.com/rcourtman/Pulse/main/frontend-modern/public/logo.svg", "embeds": [{ "title": "Pulse Alert: {{.Level | title}}", "description": "{{.Message}}", @@ -39,7 +39,7 @@ func GetWebhookTemplates() []WebhookTemplate { "timestamp": "{{.Timestamp}}", "footer": { "text": "Pulse Monitoring", - "icon_url": "https://raw.githubusercontent.com/rcourtman/Pulse/main/frontend-modern/public/favicon.svg" + "icon_url": "https://raw.githubusercontent.com/rcourtman/Pulse/main/frontend-modern/public/logo.svg" } }] }`,