From 3468f21c9a31e95485095552d1994f4abc93cc71 Mon Sep 17 00:00:00 2001 From: Eden Zimbelman Date: Mon, 15 Sep 2025 22:16:24 -0700 Subject: [PATCH 1/7] build: update docs and tag commit with the release version --- Makefile | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/Makefile b/Makefile index 43d56709..d6cbe864 100644 --- a/Makefile +++ b/Makefile @@ -69,3 +69,22 @@ build-ci: clean .PHONY: build-snapshot build-snapshot: clean BUILD_VERSION="$(BUILD_VERSION)" LDFLAGS="$(LDFLAGS)" goreleaser --snapshot --clean --skip=publish --config .goreleaser.yml + +# Update documentation in a commit tagged as the release +.PHONY: release +release: + git diff --quiet + @if echo "$(RELEASE_VERSION)" | grep -q '^v'; then \ + echo "Error: Release version should not begin with a version prefix."; \ + exit 1; \ + fi + @sed -i -E "s#slack_cli_[0-9]+\.[0-9]+\.[0-9]+_macOS_arm64\.tar\.gz#slack_cli_$(RELEASE_VERSION)_macOS_arm64.tar.gz#" docs/guides/installing-the-slack-cli-for-mac-and-linux.md + @sed -i -E "s#slack_cli_[0-9]+\.[0-9]+\.[0-9]+_macOS_amd64\.tar\.gz#slack_cli_$(RELEASE_VERSION)_macOS_amd64.tar.gz#" docs/guides/installing-the-slack-cli-for-mac-and-linux.md + @sed -i -E "s#slack_cli_[0-9]+\.[0-9]+\.[0-9]+_linux_64-bit\.tar\.gz#slack_cli_$(RELEASE_VERSION)_linux_64-bit.tar.gz#" docs/guides/installing-the-slack-cli-for-mac-and-linux.md + @sed -i -E "s/Using slack v[0-9]+\.[0-9]+\.[0-9]+/Using slack v$(RELEASE_VERSION)/" docs/guides/installing-the-slack-cli-for-mac-and-linux.md + @sed -i -E "s#slack_cli_[0-9]+\.[0-9]+\.[0-9]+_windows_64-bit\.zip#slack_cli_$(RELEASE_VERSION)_windows_64-bit.zip#" docs/guides/installing-the-slack-cli-for-windows.md + @sed -i -E "s/Using slack v[0-9]+\.[0-9]+\.[0-9]+/Using slack v$(RELEASE_VERSION)/" docs/guides/installing-the-slack-cli-for-windows.md + git add docs/guides/installing-the-slack-cli-for-mac-and-linux.md + git add docs/guides/installing-the-slack-cli-for-windows.md + git commit -m "chore: release slack-cli $(RELEASE_VERSION)" + git tag v$(RELEASE_VERSION) From 65ac7e9398e9d2fc8793399ddbf623080d9084ff Mon Sep 17 00:00:00 2001 From: Eden Zimbelman Date: Mon, 15 Sep 2025 22:24:01 -0700 Subject: [PATCH 2/7] style: tag and check staged and prefix commit --- Makefile | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/Makefile b/Makefile index d6cbe864..e8b604a8 100644 --- a/Makefile +++ b/Makefile @@ -71,9 +71,10 @@ build-snapshot: clean BUILD_VERSION="$(BUILD_VERSION)" LDFLAGS="$(LDFLAGS)" goreleaser --snapshot --clean --skip=publish --config .goreleaser.yml # Update documentation in a commit tagged as the release -.PHONY: release -release: - git diff --quiet +.PHONY: tag +tag: + git diff --quiet --cached + git diff --quiet docs/guides/installing-the-slack-cli-*.md @if echo "$(RELEASE_VERSION)" | grep -q '^v'; then \ echo "Error: Release version should not begin with a version prefix."; \ exit 1; \ @@ -86,5 +87,5 @@ release: @sed -i -E "s/Using slack v[0-9]+\.[0-9]+\.[0-9]+/Using slack v$(RELEASE_VERSION)/" docs/guides/installing-the-slack-cli-for-windows.md git add docs/guides/installing-the-slack-cli-for-mac-and-linux.md git add docs/guides/installing-the-slack-cli-for-windows.md - git commit -m "chore: release slack-cli $(RELEASE_VERSION)" + git commit -m "chore: release slack-cli v$(RELEASE_VERSION)" git tag v$(RELEASE_VERSION) From c8f58bf28dbfede76ef6167851df763956e8ffc8 Mon Sep 17 00:00:00 2001 From: Eden Zimbelman Date: Mon, 15 Sep 2025 22:27:16 -0700 Subject: [PATCH 3/7] style: order sed for output in make --- Makefile | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/Makefile b/Makefile index e8b604a8..9dc32b56 100644 --- a/Makefile +++ b/Makefile @@ -79,12 +79,12 @@ tag: echo "Error: Release version should not begin with a version prefix."; \ exit 1; \ fi - @sed -i -E "s#slack_cli_[0-9]+\.[0-9]+\.[0-9]+_macOS_arm64\.tar\.gz#slack_cli_$(RELEASE_VERSION)_macOS_arm64.tar.gz#" docs/guides/installing-the-slack-cli-for-mac-and-linux.md - @sed -i -E "s#slack_cli_[0-9]+\.[0-9]+\.[0-9]+_macOS_amd64\.tar\.gz#slack_cli_$(RELEASE_VERSION)_macOS_amd64.tar.gz#" docs/guides/installing-the-slack-cli-for-mac-and-linux.md - @sed -i -E "s#slack_cli_[0-9]+\.[0-9]+\.[0-9]+_linux_64-bit\.tar\.gz#slack_cli_$(RELEASE_VERSION)_linux_64-bit.tar.gz#" docs/guides/installing-the-slack-cli-for-mac-and-linux.md - @sed -i -E "s/Using slack v[0-9]+\.[0-9]+\.[0-9]+/Using slack v$(RELEASE_VERSION)/" docs/guides/installing-the-slack-cli-for-mac-and-linux.md - @sed -i -E "s#slack_cli_[0-9]+\.[0-9]+\.[0-9]+_windows_64-bit\.zip#slack_cli_$(RELEASE_VERSION)_windows_64-bit.zip#" docs/guides/installing-the-slack-cli-for-windows.md - @sed -i -E "s/Using slack v[0-9]+\.[0-9]+\.[0-9]+/Using slack v$(RELEASE_VERSION)/" docs/guides/installing-the-slack-cli-for-windows.md + sed -i -E "s#slack_cli_[0-9]+\.[0-9]+\.[0-9]+_macOS_arm64\.tar\.gz#slack_cli_$(RELEASE_VERSION)_macOS_arm64.tar.gz#" docs/guides/installing-the-slack-cli-for-mac-and-linux.md + sed -i -E "s#slack_cli_[0-9]+\.[0-9]+\.[0-9]+_macOS_amd64\.tar\.gz#slack_cli_$(RELEASE_VERSION)_macOS_amd64.tar.gz#" docs/guides/installing-the-slack-cli-for-mac-and-linux.md + sed -i -E "s#slack_cli_[0-9]+\.[0-9]+\.[0-9]+_linux_64-bit\.tar\.gz#slack_cli_$(RELEASE_VERSION)_linux_64-bit.tar.gz#" docs/guides/installing-the-slack-cli-for-mac-and-linux.md + sed -i -E "s#slack_cli_[0-9]+\.[0-9]+\.[0-9]+_windows_64-bit\.zip#slack_cli_$(RELEASE_VERSION)_windows_64-bit.zip#" docs/guides/installing-the-slack-cli-for-windows.md + sed -i -E "s/Using slack v[0-9]+\.[0-9]+\.[0-9]+/Using slack v$(RELEASE_VERSION)/" docs/guides/installing-the-slack-cli-for-mac-and-linux.md + sed -i -E "s/Using slack v[0-9]+\.[0-9]+\.[0-9]+/Using slack v$(RELEASE_VERSION)/" docs/guides/installing-the-slack-cli-for-windows.md git add docs/guides/installing-the-slack-cli-for-mac-and-linux.md git add docs/guides/installing-the-slack-cli-for-windows.md git commit -m "chore: release slack-cli v$(RELEASE_VERSION)" From 9d134ef1141e3140e988eb67622e283b1ccc1cf8 Mon Sep 17 00:00:00 2001 From: Eden Zimbelman Date: Tue, 16 Sep 2025 10:15:26 -0700 Subject: [PATCH 4/7] docs: usage example inline for variable ideas Co-authored-by: Michael Brooks --- Makefile | 1 + 1 file changed, 1 insertion(+) diff --git a/Makefile b/Makefile index 9dc32b56..622859ae 100644 --- a/Makefile +++ b/Makefile @@ -71,6 +71,7 @@ build-snapshot: clean BUILD_VERSION="$(BUILD_VERSION)" LDFLAGS="$(LDFLAGS)" goreleaser --snapshot --clean --skip=publish --config .goreleaser.yml # Update documentation in a commit tagged as the release +# Usage: `make tag RELEASE_VERSION=3.7.0-example` .PHONY: tag tag: git diff --quiet --cached From 446a893492c4d788caedc871b9ad39c09358ca0c Mon Sep 17 00:00:00 2001 From: Eden Zimbelman Date: Tue, 16 Sep 2025 11:57:07 -0700 Subject: [PATCH 5/7] fix: backup and remove backups for cross compatible script --- Makefile | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/Makefile b/Makefile index 622859ae..e9d7931a 100644 --- a/Makefile +++ b/Makefile @@ -80,12 +80,14 @@ tag: echo "Error: Release version should not begin with a version prefix."; \ exit 1; \ fi - sed -i -E "s#slack_cli_[0-9]+\.[0-9]+\.[0-9]+_macOS_arm64\.tar\.gz#slack_cli_$(RELEASE_VERSION)_macOS_arm64.tar.gz#" docs/guides/installing-the-slack-cli-for-mac-and-linux.md - sed -i -E "s#slack_cli_[0-9]+\.[0-9]+\.[0-9]+_macOS_amd64\.tar\.gz#slack_cli_$(RELEASE_VERSION)_macOS_amd64.tar.gz#" docs/guides/installing-the-slack-cli-for-mac-and-linux.md - sed -i -E "s#slack_cli_[0-9]+\.[0-9]+\.[0-9]+_linux_64-bit\.tar\.gz#slack_cli_$(RELEASE_VERSION)_linux_64-bit.tar.gz#" docs/guides/installing-the-slack-cli-for-mac-and-linux.md - sed -i -E "s#slack_cli_[0-9]+\.[0-9]+\.[0-9]+_windows_64-bit\.zip#slack_cli_$(RELEASE_VERSION)_windows_64-bit.zip#" docs/guides/installing-the-slack-cli-for-windows.md - sed -i -E "s/Using slack v[0-9]+\.[0-9]+\.[0-9]+/Using slack v$(RELEASE_VERSION)/" docs/guides/installing-the-slack-cli-for-mac-and-linux.md - sed -i -E "s/Using slack v[0-9]+\.[0-9]+\.[0-9]+/Using slack v$(RELEASE_VERSION)/" docs/guides/installing-the-slack-cli-for-windows.md + sed -i.bak -E "s#slack_cli_[0-9]+\.[0-9]+\.[0-9]+_macOS_arm64\.tar\.gz#slack_cli_$(RELEASE_VERSION)_macOS_arm64.tar.gz#" docs/guides/installing-the-slack-cli-for-mac-and-linux.md + sed -i.bak -E "s#slack_cli_[0-9]+\.[0-9]+\.[0-9]+_macOS_amd64\.tar\.gz#slack_cli_$(RELEASE_VERSION)_macOS_amd64.tar.gz#" docs/guides/installing-the-slack-cli-for-mac-and-linux.md + sed -i.bak -E "s#slack_cli_[0-9]+\.[0-9]+\.[0-9]+_linux_64-bit\.tar\.gz#slack_cli_$(RELEASE_VERSION)_linux_64-bit.tar.gz#" docs/guides/installing-the-slack-cli-for-mac-and-linux.md + sed -i.bak -E "s#slack_cli_[0-9]+\.[0-9]+\.[0-9]+_windows_64-bit\.zip#slack_cli_$(RELEASE_VERSION)_windows_64-bit.zip#" docs/guides/installing-the-slack-cli-for-windows.md + sed -i.bak -E "s/Using slack v[0-9]+\.[0-9]+\.[0-9]+/Using slack v$(RELEASE_VERSION)/" docs/guides/installing-the-slack-cli-for-mac-and-linux.md + sed -i.bak -E "s/Using slack v[0-9]+\.[0-9]+\.[0-9]+/Using slack v$(RELEASE_VERSION)/" docs/guides/installing-the-slack-cli-for-windows.md + rm docs/guides/installing-the-slack-cli-for-mac-and-linux.md.bak + rm docs/guides/installing-the-slack-cli-for-windows.md.bak git add docs/guides/installing-the-slack-cli-for-mac-and-linux.md git add docs/guides/installing-the-slack-cli-for-windows.md git commit -m "chore: release slack-cli v$(RELEASE_VERSION)" From 5c13f9408ebc9a07e3287ffe5f2a2eeaa2c87189 Mon Sep 17 00:00:00 2001 From: Eden Zimbelman Date: Tue, 16 Sep 2025 15:22:15 -0700 Subject: [PATCH 6/7] style: add section headers to makefile output Co-authored-by: Michael Brooks --- Makefile | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/Makefile b/Makefile index e9d7931a..e01c665c 100644 --- a/Makefile +++ b/Makefile @@ -19,6 +19,9 @@ RELEASE_VERSION := $(shell git describe --tags --match 'v*.*.*') testdir ?= ... testname ?= ./... +FONT_BOLD := $(shell tput bold) +FONT_RESET := $(shell tput sgr0) + # Remove files .PHONY: clean clean: @@ -80,15 +83,19 @@ tag: echo "Error: Release version should not begin with a version prefix."; \ exit 1; \ fi + @printf "$(FONT_BOLD)Updating Docs$(FONT_RESET)\n" sed -i.bak -E "s#slack_cli_[0-9]+\.[0-9]+\.[0-9]+_macOS_arm64\.tar\.gz#slack_cli_$(RELEASE_VERSION)_macOS_arm64.tar.gz#" docs/guides/installing-the-slack-cli-for-mac-and-linux.md sed -i.bak -E "s#slack_cli_[0-9]+\.[0-9]+\.[0-9]+_macOS_amd64\.tar\.gz#slack_cli_$(RELEASE_VERSION)_macOS_amd64.tar.gz#" docs/guides/installing-the-slack-cli-for-mac-and-linux.md sed -i.bak -E "s#slack_cli_[0-9]+\.[0-9]+\.[0-9]+_linux_64-bit\.tar\.gz#slack_cli_$(RELEASE_VERSION)_linux_64-bit.tar.gz#" docs/guides/installing-the-slack-cli-for-mac-and-linux.md sed -i.bak -E "s#slack_cli_[0-9]+\.[0-9]+\.[0-9]+_windows_64-bit\.zip#slack_cli_$(RELEASE_VERSION)_windows_64-bit.zip#" docs/guides/installing-the-slack-cli-for-windows.md sed -i.bak -E "s/Using slack v[0-9]+\.[0-9]+\.[0-9]+/Using slack v$(RELEASE_VERSION)/" docs/guides/installing-the-slack-cli-for-mac-and-linux.md sed -i.bak -E "s/Using slack v[0-9]+\.[0-9]+\.[0-9]+/Using slack v$(RELEASE_VERSION)/" docs/guides/installing-the-slack-cli-for-windows.md + @printf "$(FONT_BOLD)Removing Backups$(FONT_RESET)\n" rm docs/guides/installing-the-slack-cli-for-mac-and-linux.md.bak rm docs/guides/installing-the-slack-cli-for-windows.md.bak git add docs/guides/installing-the-slack-cli-for-mac-and-linux.md git add docs/guides/installing-the-slack-cli-for-windows.md + @printf "$(FONT_BOLD)Git Commit$(FONT_RESET)\n" git commit -m "chore: release slack-cli v$(RELEASE_VERSION)" + @printf "$(FONT_BOLD)Git Tag$(FONT_RESET)\n" git tag v$(RELEASE_VERSION) From 461720a6b3ecc91fcc79b04c2360dafa2e3cee50 Mon Sep 17 00:00:00 2001 From: Eden Zimbelman Date: Tue, 16 Sep 2025 15:36:11 -0700 Subject: [PATCH 7/7] style: include a step for git add --- Makefile | 1 + 1 file changed, 1 insertion(+) diff --git a/Makefile b/Makefile index e01c665c..f2f6b74d 100644 --- a/Makefile +++ b/Makefile @@ -93,6 +93,7 @@ tag: @printf "$(FONT_BOLD)Removing Backups$(FONT_RESET)\n" rm docs/guides/installing-the-slack-cli-for-mac-and-linux.md.bak rm docs/guides/installing-the-slack-cli-for-windows.md.bak + @printf "$(FONT_BOLD)Git Add$(FONT_RESET)\n" git add docs/guides/installing-the-slack-cli-for-mac-and-linux.md git add docs/guides/installing-the-slack-cli-for-windows.md @printf "$(FONT_BOLD)Git Commit$(FONT_RESET)\n"