Changelog
All notable changes to Brewwery.
v0.9.5 — Cleanup & Services Streaming
Added
- Live stdout/stderr progress for service start, stop, and restart actions.
- Live stdout/stderr progress for confirmed Homebrew cleanup runs.
- Cancellation and timeout controls for service and cleanup operations.
- Context-aware progress summaries for package, service, and cleanup work.
Changed
- Services now use a 5-minute fixed safety timeout.
- Cleanup now uses a 30-minute fixed safety timeout and still requires preview plus confirmation.
- Service and cleanup history entries use final streamed output and distinguish cancellation from failure.
Security
- Service names remain strictly validated before reaching the streaming runner.
- Cleanup streaming exposes only the fixed
brew cleanupoperation. - No generic command, arbitrary argument, PID, signal, or timeout input is exposed to renderer code.
v0.9.4 — Operation Safety
Added
- Confirmation-gated cancellation for active install, uninstall, and upgrade operations.
- Fixed safety timeouts: 15 minutes for uninstall and 45 minutes for install/upgrade.
- Dedicated cancelled and timed-out progress states with readable status messaging.
- Cancelled operation status, filter, count, and neutral toast in History.
Changed
- Only one streaming mutating Homebrew operation can run per renderer at a time.
- Active child processes are stopped if their owner window is destroyed.
- Cancel requests are scoped to an active operation ID owned by the requesting renderer.
Security
- Cancellation does not expose PID access, arbitrary signals, or generic process control to the renderer.
- Existing
shell: false, command allowlists, validation, and confirmation requirements remain intact.
v0.9.3 — Stability & Error Recovery
Added
- Retry actions for formulae, casks, updates, services, cleanup preview, and doctor error states.
- Thirteen Rust unit tests covering Homebrew JSON normalization, parsers, and identifier validation.
- napi-rs test configuration that allows Rust tests to run without a Node host.
Changed
- Streaming install, uninstall, and upgrade output is bounded in both Electron main and renderer memory.
- Large live logs preserve useful beginning and ending sections with a visible trim marker.
- Known issues now distinguish external release constraints from actionable engineering follow-ups.
Security
- Formula, cask, search, and service validation now have regression tests for rejected shell metacharacters and invalid identifiers.
- No new command, IPC, telemetry, account, cloud, paid, or sudo surface was added.
v0.9.2 — RC QA Fixes
Added
- Settings
Check Homebrewaction for explicitbrew updatewith confirmation - Discover collection summary for installed, favorite, available, and total packages
Fixed
- Package detail drawer now scrolls internally, so lower actions and raw details remain reachable
- Search installed status now uses a green installed badge instead of muted text
- Tapped formula identifiers containing
/are accepted for package info, install, uninstall, and upgrade - Favorite buttons update immediately after toggling
- Tray menu no longer shows a disabled app-name item and uses Settings instead of Open Terminal
Security
brew updateremains confirmation-gated- Formula slash support still rejects spaces, shell metacharacters, leading/trailing slashes, repeated slashes, redirection characters, and newlines
v0.9.1 — Discover & Favorites
Added
- Favorites — mark any formula or cask as a favorite and access them instantly from a dedicated Favorites view
- Favorites persist across sessions via local settings
- Favorites badge on package cards and detail drawers
APP_CHANNELupdated tov0.9.1 Discover & Favorites
Improved
- Search & Discovery page performance and result rendering
- Package detail cards now show favorite status inline
- All documentation updated for v0.9.1
v0.9.0 — Release Candidate
Added
APP_CHANNELis nowRelease Candidate- Release Candidate release notes and QA checklist
- Signing and notarization preparation guide
- macOS signing entitlements for future Developer ID builds
Improved
- All documentation updated for v0.9.0 Release Candidate status
- Known limitations documented as release decisions
- Feature freeze documented before v1.0
Known
- Unsigned and not notarized while signing assets are prepared
- Apple Silicon is the primary verified build target
- Cleanup and service actions show final output only (no streaming progress)
v0.8.2 — Light Theme QA Polish
Fixed
- Light theme sidebar logo readability
- Light theme status color contrast
- macOS window resize, maximize, and fullscreen controls
- Window centering reliability
Improved
- Status badges, toasts, progress panels use shared theme tokens
v0.8.1 — Light Theme & Visual Polish
Added
- Working theme selector: System, Dark, and warm Light
- Theme persistence in local settings
- Theme tokens across all components
v0.8.0 — Launch Candidate
Added
pnpm release:verifyverification command- GitHub issue templates for bugs and feature requests
Improved
- Standardized button labels
- Hidden placeholder actions from UI
v0.7.x — Private Beta
- History render batching for large logs
- History and progress output trimming
- Friendly error messages with expandable technical details
- Search installed state reconciliation
- Invalid discovery search query handling
- Explicit
Check for updatesaction - Window centering and sizing fixes
v0.6.x — Private Alpha
- Settings Copy diagnostics action
- Dashboard last-refreshed state and services preview
- History failed-only filter
- Alpha/beta verification and clean-install commands
- ZIP and
.applocal verification paths
v0.5.x — Distribution & Polish
- Production electron-builder macOS config
- Unsigned Apple Silicon DMG/ZIP packaging
- GitHub Actions CI and release workflows
- Tray menu, keyboard shortcuts, onboarding
- Settings page with Homebrew path, theme, history, About
- Custom Homebrew path validation in Rust
- Local
.apptesting workflow
v0.4.x — Search & Discovery
- Dedicated Homebrew discovery/search page
- Package install and uninstall with confirmation
- Streaming progress output for install/uninstall/upgrade
- Strict package name validation
v0.3.x — Cleanup, Doctor & Brewfile
- Cleanup preview and execution with confirmation
- Brew doctor diagnostics parsing
- Brewfile export and read
- Local operation history with search and export
- Result toasts
v0.2.0 — Updates & Services
- Outdated package detection and upgrade flows
- Service status and start/stop/restart with confirmation
- Dashboard backed by real data
v0.1.x — Foundation
- pnpm workspace scaffold
- Electron + React + Vite + TypeScript
- Tailwind CSS dark theme
- Rust napi-rs core
- Homebrew detection and package/cask listing
- Package detail drawers with search, sort, filter
- Read-only operation model
Last updated on