From 0fd2e6d9fe46d2b5a713df264486e1825b1bd305 Mon Sep 17 00:00:00 2001 From: Marcin Beczynski Date: Tue, 27 Oct 2026 09:19:30 +0100 Subject: [PATCH] docs: cask w tapie aktualizowany recznie po wydaniu (GH013) - packaging/README.md: wydanie publikuje DMG, ale zapis caska do tapu odrzuca regula ochrony main w homebrew-tap (GH013); cask idzie recznym PR-em, wiec tap moze byc wersje za wydaniem. - README.md: usuniety nawias o drugim tapie (wycofany), dopisane, ze cask w tapie moze byc wersje za wydaniem. - BackupImageServiceTests: neutralna sciezka w danych testowych. Co-Authored-By: Claude Opus 5.5 --- README.md | 5 +++-- .../BackupImageServiceTests.swift | 2 +- packaging/README.md | 16 +++++++++++++--- 3 files changed, 17 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index b42a3b9..bb9e122 100644 --- a/README.md +++ b/README.md @@ -112,8 +112,9 @@ It works two ways: ### Upgrading and uninstalling `brew upgrade --cask renacode/tap/cloudmachine` replaces the app without -restarting the Google Drive mount. (Use the full name: a second tap with a -`cloudmachine` cask, left over from testing, makes the short name ambiguous.) +restarting the Google Drive mount. The cask in the tap can be a version +behind the latest GitHub Release: it is updated by a pull request after each +release (see `packaging/README.md`). When Homebrew reopens the app, it reloads the background agents so they run the new version; `cloudmachine-agent drive-status` shows `Agents: OK`. Changes to the mount itself wait for its next start. One such change is rclone's diff --git a/mac-app/Tests/CloudMachineAppTests/BackupImageServiceTests.swift b/mac-app/Tests/CloudMachineAppTests/BackupImageServiceTests.swift index 11efcf5..31488a6 100644 --- a/mac-app/Tests/CloudMachineAppTests/BackupImageServiceTests.swift +++ b/mac-app/Tests/CloudMachineAppTests/BackupImageServiceTests.swift @@ -107,7 +107,7 @@ final class BackupImageServiceTests: XCTestCase { let points = [ "/", "/Volumes/CloudMachine", - "/Users/mbeczynski/.cloudmachine/drive", + "/Users/someone/.cloudmachine/drive", "/Volumes/.timemachine/mac-studio/2026-09-23-101500.backup/CloudMachine", "/Volumes/.timemachine/mac-studio/2026-09-22-231500.backup/CloudMachine", // Trap: a similar name, but NOT under the snapshot directory. diff --git a/packaging/README.md b/packaging/README.md index 83b937a..fb0a829 100644 --- a/packaging/README.md +++ b/packaging/README.md @@ -6,8 +6,14 @@ brew install --cask renacode/tap/cloudmachine The cask lives in [RenaCode/homebrew-tap](https://github.com/RenaCode/homebrew-tap) and is generated: `.github/workflows/release.yml` fills -`homebrew/cloudmachine.rb.in` with the version and the DMG's sha256 and pushes -it to the tap. Edit the template here, never the copy in the tap. +`homebrew/cloudmachine.rb.in` with the version and the DMG's sha256 and tries +to push it to the tap. Edit the template here, never the copy in the tap. + +**Current state:** the release publishes the DMG, but the push of the cask to +the tap is rejected - `homebrew-tap` protects `main` with a ruleset that +requires a pull request (`GH013`). After each release the cask goes into the +tap through a pull request opened by hand (1.3.13 and 1.3.14 went that way), so +until it is merged the tap can be a version behind the latest release. ## Releases @@ -95,7 +101,11 @@ grant Full Disk Access again. is `renacode-tap` (since 2026-10-23; before that a fine-grained PAT). Without the app the release is still published, but the job fails and -prints the cask, so a missing tap update cannot go unnoticed. +prints the cask, so a missing tap update cannot go unnoticed. The job also +fails while the tap's `main` ruleset rejects the push (`GH013`, see the top of this +file): the release and its DMG are there, only the tap is stale. Fill the +template with the release's version and the sha256 from its `.sha256` file and +open a pull request to `homebrew-tap` with the result. ## What the cask does and deliberately does not do