chore: Add Homebrew formula for v0.10.1 and remove old formulas

This commit is contained in:
Steve Yegge
2025-10-20 22:21:08 -07:00
parent 19b3200cd4
commit 50a0846763
4 changed files with 3 additions and 61 deletions

View File

@@ -83,7 +83,7 @@
{"id":"bd-176","title":"Fix cross-platform signal handling in daemon.go","description":"Replace hard-coded Unix signals with platform-aware helpers: signal.Notify with daemonSignals, use isReloadSignal(), use sendStopSignal() instead of process.Signal(syscall.SIGTERM)","status":"closed","priority":1,"issue_type":"bug","created_at":"2025-10-20T21:09:05.317357-07:00","updated_at":"2025-10-20T21:24:56.70424-07:00","closed_at":"2025-10-20T21:24:56.70424-07:00"}
{"id":"bd-177","title":"Fix cross-platform process management in daemon.go","description":"Replace direct syscall.SysProcAttr assignments with configureDaemonProcess() helper in migrateToGlobalDaemon() and other start/stop flows","status":"closed","priority":1,"issue_type":"bug","created_at":"2025-10-20T21:09:09.213639-07:00","updated_at":"2025-10-20T21:27:10.908884-07:00","closed_at":"2025-10-20T21:27:10.908884-07:00"}
{"id":"bd-178","title":"Add Windows CI build to GitHub Actions","description":"Add windows-latest job that builds bd.exe and runs unit tests to catch cross-platform issues","status":"closed","priority":1,"issue_type":"task","created_at":"2025-10-20T21:09:12.978711-07:00","updated_at":"2025-10-20T21:27:40.120681-07:00","closed_at":"2025-10-20T21:27:40.120681-07:00"}
{"id":"bd-179","title":"bd uses wrong default prefix when database filename indicates different prefix","description":"When creating issues without explicit --id flag, bd defaults to 'bd-' prefix even when the database filename and existing issues use a different prefix (e.g., 'wy-').","design":"## Bug Report\n\n**Environment:**\n- bd version: 0.9.11 (based on metadata)\n- Database: .beads/wy-.db\n- Directory: /Users/stevey/ai/flutter/wyvern\n\n**Observed Behavior:**\nWhen running `bd create task \"title\"` without --id flag, new issues get assigned `bd-*` IDs even though:\n- Database filename is `.beads/wy-.db` (implies wy- prefix)\n- All existing issues use `wy-*` prefix (wy-1 through wy-77)\n- No prefix metadata stored in database\n\n**Evidence:**\n```sql\nsqlite3 .beads/wy-.db \"SELECT * FROM issue_counters;\"\nwy|72\nbd|29\n```\n\nThe bd counter was incremented when I accidentally created bd-23 through bd-29 (now deleted).\n\n**Expected Behavior:**\nbd should derive the default prefix from:\n1. Database filename (`wy-.db` → `wy-` prefix), OR\n2. Most recently used prefix in the database, OR \n3. Prefix stored in metadata table\n\nAccording to `bd init --help`:\n\u003e -p, --prefix string Issue prefix (default: current directory name)\n\nBut database filename convention appears to be `\u003cprefix\u003e.db`, so wy-.db should mean wy- is the intended prefix.\n\n**Workaround:**\nUse explicit `--id` flag: `bd create task \"title\" --id wy-73`\n\n**Reproduction:**\n```bash\n# In a directory with .beads/wy-.db containing wy-* issues\nbd create task \"test\"\n# Creates bd-* issue instead of wy-* issue\n```\n\n**Suggested Fix:**\n1. Store the intended prefix in metadata table during `bd init`\n2. When creating issues, check metadata for preferred prefix\n3. Fallback to extracting prefix from database filename\n4. Last resort: use directory name\n\n**Related Code:**\nLikely in issue counter/ID generation logic where new IDs are assigned.","status":"in_progress","priority":2,"issue_type":"task","created_at":"2025-10-20T22:10:24.611471-07:00","updated_at":"2025-10-20T22:12:12.098428-07:00"}
{"id":"bd-179","title":"bd uses wrong default prefix when database filename indicates different prefix","description":"When creating issues without explicit --id flag, bd defaults to 'bd-' prefix even when the database filename and existing issues use a different prefix (e.g., 'wy-').","design":"## Bug Report\n\n**Environment:**\n- bd version: 0.9.11 (based on metadata)\n- Database: .beads/wy-.db\n- Directory: /Users/stevey/ai/flutter/wyvern\n\n**Observed Behavior:**\nWhen running `bd create task \"title\"` without --id flag, new issues get assigned `bd-*` IDs even though:\n- Database filename is `.beads/wy-.db` (implies wy- prefix)\n- All existing issues use `wy-*` prefix (wy-1 through wy-77)\n- No prefix metadata stored in database\n\n**Evidence:**\n```sql\nsqlite3 .beads/wy-.db \"SELECT * FROM issue_counters;\"\nwy|72\nbd|29\n```\n\nThe bd counter was incremented when I accidentally created bd-23 through bd-29 (now deleted).\n\n**Expected Behavior:**\nbd should derive the default prefix from:\n1. Database filename (`wy-.db` → `wy-` prefix), OR\n2. Most recently used prefix in the database, OR \n3. Prefix stored in metadata table\n\nAccording to `bd init --help`:\n\u003e -p, --prefix string Issue prefix (default: current directory name)\n\nBut database filename convention appears to be `\u003cprefix\u003e.db`, so wy-.db should mean wy- is the intended prefix.\n\n**Workaround:**\nUse explicit `--id` flag: `bd create task \"title\" --id wy-73`\n\n**Reproduction:**\n```bash\n# In a directory with .beads/wy-.db containing wy-* issues\nbd create task \"test\"\n# Creates bd-* issue instead of wy-* issue\n```\n\n**Suggested Fix:**\n1. Store the intended prefix in metadata table during `bd init`\n2. When creating issues, check metadata for preferred prefix\n3. Fallback to extracting prefix from database filename\n4. Last resort: use directory name\n\n**Related Code:**\nLikely in issue counter/ID generation logic where new IDs are assigned.","status":"closed","priority":2,"issue_type":"task","created_at":"2025-10-20T22:10:24.611471-07:00","updated_at":"2025-10-20T22:16:25.606694-07:00","closed_at":"2025-10-20T22:16:25.606694-07:00"}
{"id":"bd-18","title":"Fix: bd init --prefix test -q flag not recognized","description":"The init command doesn't recognize the -q flag. When running 'bd init --prefix test -q', it fails silently or behaves unexpectedly. The flag should either be implemented for quiet mode or removed from documentation if not supported.","status":"closed","priority":2,"issue_type":"bug","created_at":"2025-10-16T20:46:08.971822-07:00","updated_at":"2025-10-20T16:02:06.032275-07:00","closed_at":"2025-10-17T00:09:18.921816-07:00"}
{"id":"bd-19","title":"Implement storage driver interface for pluggable backends","description":"Create abstraction layer for storage to support multiple backends (SQLite, Postgres, Turso, in-memory testing, etc.).\n\n**Current state:** All storage logic hardcoded to SQLite in internal/storage/sqlite/sqlite.go\n\n**Proposed design:**\n\n```go\n// internal/storage/storage.go\ntype Store interface {\n // Issue CRUD\n CreateIssue(issue *Issue) error\n GetIssue(id string) (*Issue, error)\n UpdateIssue(id string, updates *Issue) error\n DeleteIssue(id string) error\n ListIssues(filter *Filter) ([]*Issue, error)\n \n // Dependencies\n AddDependency(from, to string, depType DependencyType) error\n RemoveDependency(from, to string, depType DependencyType) error\n GetDependencies(id string) ([]*Dependency, error)\n \n // Counters, stats\n GetNextID(prefix string) (string, error)\n GetStats() (*Stats, error)\n \n Close() error\n}\n```\n\n**Benefits:**\n- Better testing (mock/in-memory stores)\n- Future flexibility (Postgres, cloud APIs, etc.)\n- Clean architecture (business logic decoupled from storage)\n- Enable Turso or other backends without refactoring everything\n\n**Implementation steps:**\n1. Define Store interface in internal/storage/storage.go\n2. Refactor SQLiteStore to implement interface\n3. Update all commands to use interface, not concrete type\n4. Add MemoryStore for testing\n5. Add driver selection via config (storage.driver = sqlite|turso|postgres)\n6. Update tests to use interface\n\n**Note:** This is valuable even without adopting Turso. Good architecture practice.\n\n**Context:** From GH issue #2 RFC evaluation. Driver interface is low-cost, high-value regardless of whether we add alternative backends.","status":"closed","priority":2,"issue_type":"feature","created_at":"2025-10-16T20:46:08.971822-07:00","updated_at":"2025-10-20T16:02:06.032562-07:00","closed_at":"2025-10-17T23:46:22.447301-07:00"}
{"id":"bd-2","title":"Sub-task under A","description":"","status":"closed","priority":1,"issue_type":"task","created_at":"2025-10-16T20:46:08.971822-07:00","updated_at":"2025-10-20T16:02:06.032798-07:00","closed_at":"2025-10-16T10:07:34.130096-07:00"}

View File

@@ -1,8 +1,8 @@
class Bd < Formula
desc "AI-supervised issue tracker for coding workflows"
homepage "https://github.com/steveyegge/beads"
url "https://github.com/steveyegge/beads/archive/refs/tags/v0.10.0.tar.gz"
sha256 "9279266d01840e6421d61fdc5240dbd19e85089f4a373b5d42ecaff74045d0c9"
url "https://github.com/steveyegge/beads/archive/refs/tags/v0.10.1.tar.gz"
sha256 "efe26286a1747c10c8e6fee62226d6a4bb1b52520a721e89d9b469026f81d4dd"
license "MIT"
head "https://github.com/steveyegge/beads.git", branch: "main"

View File

@@ -1,29 +0,0 @@
class Bd < Formula
desc "AI-supervised issue tracker for coding workflows"
homepage "https://github.com/steveyegge/beads"
url "https://github.com/steveyegge/beads/archive/refs/tags/v0.9.10.tar.gz"
sha256 "e4dd12ebe8d27c5edab68e24f244ef55809e6b95c75179e2a57c866e5623443f"
license "MIT"
head "https://github.com/steveyegge/beads.git", branch: "main"
depends_on "go" => :build
def install
# Build the CLI
system "go", "build", *std_go_args(ldflags: "-s -w -X main.Version=#{version}"), "./cmd/bd"
end
test do
# Test that the binary runs and outputs version
output = shell_output("#{bin}/bd version")
assert_match "bd version #{version}", output
# Test init command
system bin/"bd", "init", "--prefix=test"
assert_predicate testpath/".beads/test.db", :exist?
# Test list command (should show no issues)
list_output = shell_output("#{bin}/bd list --db=#{testpath}/.beads/test.db")
assert_match "Found 0 issues", list_output
end
end

View File

@@ -1,29 +0,0 @@
class Bd < Formula
desc "AI-supervised issue tracker for coding workflows"
homepage "https://github.com/steveyegge/beads"
url "https://github.com/steveyegge/beads/archive/refs/tags/v0.9.8.tar.gz"
sha256 "f5c35edaea7f12013cc3ce2237971ae188be226ae3eb6fad18f2f3afbf83d73f"
license "MIT"
head "https://github.com/steveyegge/beads.git", branch: "main"
depends_on "go" => :build
def install
# Build the CLI
system "go", "build", *std_go_args(ldflags: "-s -w -X main.Version=#{version}"), "./cmd/bd"
end
test do
# Test that the binary runs and outputs version
output = shell_output("#{bin}/bd version")
assert_match "bd version #{version}", output
# Test init command
system bin/"bd", "init", "--prefix=test"
assert_predicate testpath/".beads/test.db", :exist?
# Test list command (should show no issues)
list_output = shell_output("#{bin}/bd list --db=#{testpath}/.beads/test.db")
assert_match "Found 0 issues", list_output
end
end