From d9533ea4f5eac1104101e2637ce4db53464cb285 Mon Sep 17 00:00:00 2001 From: JoeJoeflyn Date: Thu, 13 Aug 2026 20:33:05 +0700 Subject: [PATCH] Show what changed after a self-managed update lands lerd update fetches and prints the changelog before asking the user to confirm, then downloads, installs, restarts services, and returns without a word about what actually changed. doctor and status both end by pointing the user at lerd whatsnew, so the two commands that did nothing advertise the changelog while the one that just applied it stays silent. Print the same changelog that was already fetched for the confirmation prompt once the update is done, gated on feedback.Interactive() so an unattended or piped run does not dump it into a log. Package-managed installs defer to apt, dnf, or brew and never reach this point. --- internal/cli/update.go | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/internal/cli/update.go b/internal/cli/update.go index fcdfc662..7976ecb7 100644 --- a/internal/cli/update.go +++ b/internal/cli/update.go @@ -188,6 +188,14 @@ func runUpdate(currentVersion string, beta bool) error { // (gated on autostart), so we don't repeat them here. restartLerdUserServices() + + if feedback.Interactive() && changelog != "" { + fmt.Printf("\nWhat's new in v%s (you had v%s):\n\n", lat, cur) + for _, line := range strings.Split(changelog, "\n") { + fmt.Println(line) + } + } + return nil }