Skip to content

Releases: Labault/mac-dev-setup

v1.9.0

Choose a tag to compare

@Labault Labault released this 21 Jun 05:12

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.md index 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 shellcheck and pre-commit under
    docs/quality/, and renamed docs/vscode/ to docs/editors/ (it holds VS
    Code and Sublime Text).

v1.8.0

Choose a tag to compare

@Labault Labault released this 21 Jun 04:00

Added

  • mac doctor --summary flag 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 --summary illustrating 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) into docs/docker/ so all
    container tooling lives in one place; updated the inbound links.
  • Documented the existing mac doctor --summary and mac 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 $CI reference in scripts/setup.sh.
  • Unified shell style across the CLI: every executable now uses
    set -euo pipefail, function-local variables are declared with local, and
    small nits (--help|-h spacing, $HOME paths, quoting) were normalized.
  • Normalized documentation headings to sentence case (notably the docs/php/
    pages) and added the missing Rollback section to docs/php/xdebug.md.
  • Restructured the SwiftBar sites.5m.sh plugin so its pure helpers are unit
    testable, and guarded its detail-array expansion under set -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.sh backup/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 doctor report and
    mac doctor --fix --summary).
  • Fixed .git/info/exclude pattern from ROADMAP.md to /ROADMAP.md to
    prevent the local planning file from inadvertently excluding
    docs/assets/ROADMAP.md.
  • Standardized all shell script shebangs from #!/bin/bash to
    #!/usr/bin/env bash for consistency and portability.

Removed

  • Removed the per-version release-criteria documents (docs/releases/v0.1.0.md,
    docs/releases/v1.0.0.md); the CHANGELOG.md is now the single source of
    truth for release history. The release workflow remains in
    docs/releases/release-process.md.

Security

  • path_manager now rejects directories containing shell metacharacters before
    writing the managed PATH block into the user's profile, closing a
    command-injection sink reachable through MAC_DEV_SETUP_BIN_DIR.
  • mac php xdebug enable/disable back up an existing 99-xdebug.ini before
    overwriting or removing it, preventing silent loss of a custom config.

Mac Dev Setup v1.7.0

Choose a tag to compare

@Labault Labault released this 18 Jun 13:33

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

Choose a tag to compare

@Labault Labault released this 18 Jun 13:22

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

Choose a tag to compare

@Labault Labault released this 18 Jun 13:09

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

Choose a tag to compare

@Labault Labault released this 18 Jun 12:59

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

Choose a tag to compare

@Labault Labault released this 18 Jun 10:48

What's changed

Added

  • mac php xdebug status|enable|disable command 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

Choose a tag to compare

@Labault Labault released this 18 Jun 10:48

What's changed

Changed

  • Made mac doctor profile-aware: it now runs brew bundle check against the active profile and reports which declared packages are missing.
  • Added non-blocking Homebrew drift detection to mac doctor for installed packages not declared by any setup profile.
  • Added managed Zsh configuration drift reporting to mac doctor.
  • Added mac doctor --fix flag that prints reconciliation commands without executing them.
  • Clarified mac doctor status 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

Choose a tag to compare

@Labault Labault released this 18 Jun 10:48

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 tldr formula with the maintained official tlrc client while keeping the tldr command available.
  • Removed the deprecated vial cask 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

v1.0.0

Choose a tag to compare

@Labault Labault released this 18 Jun 05:18

Release v1.0.0