Releases: Labault/mac-dev-setup
Releases · Labault/mac-dev-setup
Release list
v1.9.0
Changed
- Documentation overhaul for newcomers: a "Who this is for" and "Make it yours"
framing plus profile-choice-before-install in the README; a browsable
docs/README.mdindex with per-page breadcrumbs; a system-overview diagram
and corrected architecture SVGs; CI/License/platform badges and a
"inspect the script first" note; and accuracy fixes (the CI doc no longer
lists non-existent workflows, an env-var reference table, keyboard label). - Consolidated documentation folders: moved
shellcheckandpre-commitunder
docs/quality/, and renameddocs/vscode/todocs/editors/(it holds VS
Code and Sublime Text).
v1.8.0
Added
mac doctor --summaryflag to collapse the undeclared Homebrew package list
to a count, making the output usable in screenshots and narrow terminals.- Screenshots for
bat,duf,dust,lsd,tokei, and
mac doctor --fix --summaryillustrating tool behavior and diagnostic output
directly in the docs. - Visual assets roadmap (
docs/assets/ROADMAP.md) tracking all planned and
actioned screenshots across 12 phases with capture rules and a validation
checklist. lsd --tree scripts/screenshot in the architecture documentation.
Changed
- Merged
docs/containers/(ctop, OrbStack) intodocs/docker/so all
container tooling lives in one place; updated the inbound links. - Documented the existing
mac doctor --summaryandmac vscode --with-optional
flags in the README so it matches the scripts. - Removed a stray
</details>tag from the README "What's included" section. - Hardened the command-layer and setup scripts with
set -euo pipefail
(doctor, setup, uninstall, defaults, keyboard, vscode, brew, git, zsh, php)
and guarded the previously unset$CIreference inscripts/setup.sh. - Unified shell style across the CLI: every executable now uses
set -euo pipefail, function-local variables are declared withlocal, and
small nits (--help|-hspacing,$HOMEpaths, quoting) were normalized. - Normalized documentation headings to sentence case (notably the
docs/php/
pages) and added the missing Rollback section todocs/php/xdebug.md. - Restructured the SwiftBar
sites.5m.shplugin so its pure helpers are unit
testable, and guarded its detail-array expansion underset -u. - Expanded the Bats suite from 78 to 99 tests, adding coverage for the
hardening guard, uninstall safety refusals, the SwiftBar helpers,brew.sh,
zsh.shbackup/idempotency, and the logging stderr routing. - Extracted
tests/test_helper.bash(make_stub_bin,write_stub) and adopted
it in the doctor, php, brew, and swiftbar tests, removing four divergent copies
of the stub-PATH setup idiom. - Inserted missing image references in
docs/git/git.md(git-delta diff) and
docs/troubleshooting/troubleshooting.md(mac doctorreport and
mac doctor --fix --summary). - Fixed
.git/info/excludepattern fromROADMAP.mdto/ROADMAP.mdto
prevent the local planning file from inadvertently excluding
docs/assets/ROADMAP.md. - Standardized all shell script shebangs from
#!/bin/bashto
#!/usr/bin/env bashfor consistency and portability.
Removed
- Removed the per-version release-criteria documents (
docs/releases/v0.1.0.md,
docs/releases/v1.0.0.md); theCHANGELOG.mdis now the single source of
truth for release history. The release workflow remains in
docs/releases/release-process.md.
Security
path_managernow rejects directories containing shell metacharacters before
writing the managed PATH block into the user's profile, closing a
command-injection sink reachable throughMAC_DEV_SETUP_BIN_DIR.mac php xdebug enable/disableback up an existing99-xdebug.inibefore
overwriting or removing it, preventing silent loss of a custom config.
Mac Dev Setup v1.7.0
What's changed
Added
- SwiftBar added to the full profile — shell scripts in a folder become auto-refreshing menu bar items, used for VPS and site uptime monitoring.
- Sentry documentation for Symfony projects covering SDK integration, release tracking, environment filtering, and exception ignore list.
Full changelog: https://github.com/Labault/mac-dev-setup/blob/main/CHANGELOG.md
Mac Dev Setup v1.6.0
What's changed
Added
- Claude desktop app, Ollama, and Sublime Text added to the full profile with documentation.
- Codex CLI documented (npm global install, no cask).
- codexbar and claude-monitor promoted from TOOLING to USED with expanded documentation.
Full changelog: https://github.com/Labault/mac-dev-setup/blob/main/CHANGELOG.md
Mac Dev Setup v1.5.0
What's changed
Added
- Raycast, CleanShot X, Obsidian, Notion, and GIMP added to the full profile with inventory classification and documentation.
Full changelog: https://github.com/Labault/mac-dev-setup/blob/main/CHANGELOG.md
Mac Dev Setup v1.4.0
What's changed
Added
- Bruno, Google Chrome, and Firefox added to the full profile with inventory classification and documentation.
- Web service documentation for Excalidraw, RealFaviconGenerator, remove.bg, and ImageMagick.
Full changelog: https://github.com/Labault/mac-dev-setup/blob/main/CHANGELOG.md
Mac Dev Setup v1.3.0
What's changed
Added
mac php xdebug status|enable|disablecommand to manage the Homebrew PHP Xdebug configuration while keeping it disabled by default.- PHP/Symfony toolchain documentation covering the shared Homebrew runtime, Xdebug policy, and PHPStan project setup.
- PHP project-level guides for PCOV coverage, Pest, PHP-CS-Fixer, Rector, Infection mutation testing, and mise evaluation.
Full changelog: https://github.com/Labault/mac-dev-setup/blob/main/CHANGELOG.md
Mac Dev Setup v1.2.0
What's changed
Changed
- Made
mac doctorprofile-aware: it now runsbrew bundle checkagainst the active profile and reports which declared packages are missing. - Added non-blocking Homebrew drift detection to
mac doctorfor installed packages not declared by any setup profile. - Added managed Zsh configuration drift reporting to
mac doctor. - Added
mac doctor --fixflag that prints reconciliation commands without executing them. - Clarified
mac doctorstatus output with explicit in-sync, drift, and missing markers.
Full changelog: https://github.com/Labault/mac-dev-setup/blob/main/CHANGELOG.md
Mac Dev Setup v1.1.0
What's changed
Added
- BATS consistency check that fails when a Homebrew profile entry is missing from the inventory.
Changed
- Added focused inventory documentation for Antidote, autojump, claude-monitor, Ice, KeeWeb, libpq, lsd, Stats, swaks, terminal-notifier, Ukelele, and uv.
- Expanded the Homebrew inventory so every profile package is represented.
- Updated the macOS CI Node setup action to
actions/setup-node@v6. - Skipped host-global Homebrew diagnostics on GitHub-hosted runners so CI only reports issues owned by the repository profiles.
- Replaced the deprecated Homebrew
tldrformula with the maintained officialtlrcclient while keeping thetldrcommand available. - Removed the deprecated
vialcask from the full profile until Homebrew offers a trusted installation path again. - Updated the swaks documentation link to its GitHub repository to avoid intermittent documentation link-check timeouts.
Full changelog: https://github.com/Labault/mac-dev-setup/blob/main/CHANGELOG.md