runBrew dispatched onto the global concurrent queue, so overlapping operations (refresh timer firing mid-upgrade, quick manual actions) ran multiple brew processes at once — each able to summon its own sudo password dialog, hence duplicate password windows. A private serial queue makes every brew command wait for the previous one, so a second dialog cannot appear while one is open. Log output no longer interleaves either. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> |
||
|---|---|---|
| .claude/skills | ||
| asset | ||
| BrewBar | ||
| BrewBar.xcodeproj | ||
| BrewBarTests | ||
| .gitignore | ||
| .swiftlint.yml | ||
| LICENSE | ||
| README.md | ||