Skip to content

fix: Stable channel update uses tagged release #5948#5950

Open
jcontonio wants to merge 1 commit into
basecamp:devfrom
jcontonio:jc/stable-channel-uses-tagged-releases
Open

fix: Stable channel update uses tagged release #5948#5950
jcontonio wants to merge 1 commit into
basecamp:devfrom
jcontonio:jc/stable-channel-uses-tagged-releases

Conversation

@jcontonio
Copy link
Copy Markdown

This PR updates bin/omarchy-update-git to use the latest non-pre-release GitHub release for the stable channel instead of pulling from the tip of master.

Before

The stable channel update pulled from master, meaning any commit pushed to master (including pre-release code) would be delivered to stable users. Running a stable-channel update jumped me from 3.8.0 to 4.0.0alpha!

After

The stable channel now queries GitHub for the latest non-pre-release release and checks out that tag. The rc, edge, and dev channels are unchanged.

To test

  1. I added a test here you can run:
bash test/omarchy-update-git-test.sh
  1. Or manually run an update:
OMARCHY_PATH=~/.local/share/omarchy bash bin/omarchy-update-git
git -C ~/.local/share/omarchy describe --tags --exact-match HEAD

Closes #5948

@jcontonio jcontonio marked this pull request as ready for review May 22, 2026 22:02
Copilot AI review requested due to automatic review settings May 22, 2026 22:02
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Note

Copilot was unable to run its full agentic suite in this review.

Adds “stable channel” behavior to omarchy-update-git so updates land on the latest non–pre-release GitHub release tag instead of the current master tip, and introduces a test to validate that behavior.

Changes:

  • Update bin/omarchy-update-git to detect the version channel and, for stable, checkout the latest non–pre-release release tag.
  • Add an integration-style shell test that builds a local repo with a stable tag and a newer pre-release on master, then asserts stable selects the tag.

Reviewed changes

Copilot reviewed 1 out of 2 changed files in this pull request and generated 2 comments.

File Description
test/omarchy-update-git-test.sh New test to verify stable channel checks out the latest non–pre-release release tag vs master.
bin/omarchy-update-git Implements “stable channel uses latest release tag” logic using gh release list.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.


TMPDIR=$(mktemp -d)

latest_tag=$(gh release list --repo basecamp/omarchy --exclude-pre-releases --limit 1 --json tagName --jq '.[0].tagName')
Comment on lines +38 to +40
git -C "$SEED" commit --allow-empty -m "$latest_tag" -q
git -C "$SEED" tag "$latest_tag"
git -C "$SEED" commit --allow-empty -m "pre-release on master" -q
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.

Omarchy update does not update to the actual latest release

2 participants