Skip to content

chore: polish release automation and installer docs#108

Open
pratik50 wants to merge 3 commits into
parseablehq:mainfrom
pratik50:feat/release-follow-up
Open

chore: polish release automation and installer docs#108
pratik50 wants to merge 3 commits into
parseablehq:mainfrom
pratik50:feat/release-follow-up

Conversation

@pratik50
Copy link
Copy Markdown
Contributor

@pratik50 pratik50 commented Jun 6, 2026

Summary

Polishes the release setup after the initial release automation work.

Changes

  • Removes Docker image publishing from GoReleaser
  • Removes Docker Hub login from the release workflow
  • Keeps release output focused on binaries, archives, checksums, and Homebrew tap updates
  • Removes installer testing from the regular build workflow
  • Updates install.sh with clearer PATH guidance for bash, zsh, and fish users
  • Keeps Linux/macOS quick install behavior aligned with ~/.local/bin installs
  • Updates README install/docs and enables SQL/PromQL TUI screenshots

Notes

  • HOMEBREW_TAP_GITHUB_TOKEN is still required for Homebrew tap updates
  • Docker secrets are no longer required for release
  • Installer workflows are intentionally not included for now; install scripts will be tested manually

Summary by CodeRabbit

  • Documentation

    • Added interactive screenshots for SQL TUI and PromQL TUI in the README; added Homebrew install instructions
  • Installation Improvements

    • Installer auto-detects user shell (bash, zsh, fish, fallback) and shows shell-specific PATH setup instructions
  • Release / CI

    • Simplified CI to a single Linux build-and-test job; removed Windows installer CI steps
    • Release workflow no longer performs Docker Hub login
  • Packaging

    • Release tooling now emits a custom checksum file name and no longer builds/publishes Docker images
  • Style

    • CLI help and command usage text simplified for clearer subcommand listings while preserving aliases

@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented Jun 6, 2026

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 09158ebd-d15a-421b-902c-1765185ce95a

📥 Commits

Reviewing files that changed from the base of the PR and between 305e7ba and e7d1102.

📒 Files selected for processing (1)
  • README.md
🚧 Files skipped from review as they are similar to previous changes (1)
  • README.md

📝 Walkthrough

Walkthrough

Removes Windows-installer and Docker publishing steps from CI/release, updates GoReleaser checksum naming, adds shell-specific PATH guidance to the installer, normalizes displayed Cobra Use strings and renders aliases in CLI help, and embeds README screenshots.

Changes

Release Pipeline Simplification and UX Improvements

Layer / File(s) Summary
Platform and distribution removals
.github/workflows/build.yaml, .github/workflows/release.yaml, .goreleaser.yml
Windows installer job removed from build workflow; Docker Hub login step removed from release workflow; GoReleaser dockers block removed and checksum.name_template updated to produce ${binary}_${version}_checksums.txt.
Shell-specific PATH setup in installer
scripts/install.sh
Added detect_user_shell() and print_path_instructions() helpers; post-install PATH check now calls print_path_instructions "$INSTALL_DIR" when INSTALL_DIR is not in PATH.
Documentation screenshots
README.md
Added Homebrew installation subsection and inline Markdown images for the interactive SQL TUI and interactive PromQL TUI, replacing commented placeholders.
CLI usage string cleanup and help rendering
cmd/*, main.go
Removed shorthand segments from Cobra Use strings (keeping shorthands as Aliases) across dataset, profile, query list, role, and user commands; renderCommandHelp updated to print `name

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Possibly related PRs

  • parseablehq/pb#106: Modifies Cobra Use strings for the same CLI subcommands (opposite direction regarding shorthand placement).
  • parseablehq/pb#104: Related to .goreleaser.yml checksum output configuration (checksum.name_template) changes.

Suggested reviewers

  • nitisht

Poem

🐰 I hopped through CI and trimmed the trees,
Installer now whispers PATH by shell with ease,
Docs glow brighter with screenshots in sight,
CLI names show aliases — concise and polite,
A tiny rabbit applauds the leaner release!

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 12.50% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately describes the main changes: polish (refine/improve) release automation and installer docs, which aligns with the PR's primary focus on removing Docker publishing, updating workflows, and improving installer documentation.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Copy Markdown

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🧹 Nitpick comments (1)
scripts/install.sh (1)

69-75: ⚡ Quick win

Consider using idiomatic Fish shell PATH setup.

The current instructions echo fish_add_path into config.fish, causing it to execute on every shell startup. While functional, this is inefficient because fish_add_path modifies universal variables and is designed to run once. The idiomatic Fish approach runs the command directly:

🐟 Proposed idiomatic Fish instructions
 	fish)
 		echo "$install_dir is not in your PATH. Add it with:"
 		echo ""
-		echo "  mkdir -p ~/.config/fish"
-		echo "  echo 'fish_add_path $install_dir' >> ~/.config/fish/config.fish"
-		echo "  source ~/.config/fish/config.fish"
+		echo "  fish -c 'fish_add_path $install_dir'"
 		;;

This approach:

  • Runs from any shell (bash, zsh, or fish)
  • Executes fish_add_path once, persisting via Fish universal variables
  • Avoids redundant execution on every shell startup
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@scripts/install.sh` around lines 69 - 75, The fish case currently appends
"fish_add_path $install_dir" to config.fish causing it to run on every startup;
instead, invoke Fish once to add the path using a one-time universal change:
replace the echo+append lines in the fish) block that reference install_dir with
a command that runs fish -c 'fish_add_path "<install_dir>"' (or equivalent
invocation using the install_dir variable) and remove the lines that write to
~/.config/fish/config.fish and source it so fish_add_path is applied once via
Fish universal variables rather than on every shell startup.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Nitpick comments:
In `@scripts/install.sh`:
- Around line 69-75: The fish case currently appends "fish_add_path
$install_dir" to config.fish causing it to run on every startup; instead, invoke
Fish once to add the path using a one-time universal change: replace the
echo+append lines in the fish) block that reference install_dir with a command
that runs fish -c 'fish_add_path "<install_dir>"' (or equivalent invocation
using the install_dir variable) and remove the lines that write to
~/.config/fish/config.fish and source it so fish_add_path is applied once via
Fish universal variables rather than on every shell startup.

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: b1755cb5-65c5-4723-9dbb-373ca6efcdf8

📥 Commits

Reviewing files that changed from the base of the PR and between 706d987 and 76a6e9c.

⛔ Files ignored due to path filters (2)
  • docs/images/pb-promql-tui.png is excluded by !**/*.png
  • docs/images/pb-sql-tui.png is excluded by !**/*.png
📒 Files selected for processing (5)
  • .github/workflows/build.yaml
  • .github/workflows/release.yaml
  • .goreleaser.yml
  • README.md
  • scripts/install.sh
💤 Files with no reviewable changes (3)
  • .github/workflows/release.yaml
  • .github/workflows/build.yaml
  • .goreleaser.yml

@pratik50 pratik50 self-assigned this Jun 6, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant