Your Mac has 47 outdated packages and 2.3GB of old versions sitting around. Let’s fix that.

Check outdated packages

1
2
3
4
5
6
7
8
# List all outdated packages
brew outdated

# Show what will be upgraded
brew outdated --verbose

# Check specific package
brew outdated <package-name>

Update Homebrew and packages

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
# Update Homebrew itself (fetch latest package info)
brew update

# Upgrade all outdated packages
brew upgrade

# Upgrade specific package only
brew upgrade <package-name>

# Update Homebrew + upgrade all packages (common combo)
brew update && brew upgrade

Find and remove unused dependencies

1
2
3
4
5
6
7
8
# List packages installed as dependencies but no longer needed
brew autoremove --dry-run

# Actually remove them
brew autoremove

# Alternative: list all dependencies no longer needed
brew leaves

Note: brew leaves shows top-level packages you installed directly (not dependencies). Everything else could potentially be removed if no longer needed.

Clean up old versions

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
# Remove old versions of installed packages
brew cleanup

# See what will be cleaned without removing
brew cleanup --dry-run

# Clean up everything older than 30 days
brew cleanup --prune=30

# Remove ALL old versions (aggressive)
brew cleanup -s

# Check how much space you'll save
brew cleanup --dry-run | grep "=>"

Check Homebrew health

1
2
3
4
5
# Diagnose potential issues
brew doctor

# See what's taking up space
brew info --installed | grep "GB\|MB"

Useful info commands

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
# List all installed packages
brew list

# List top-level packages (not dependencies)
brew leaves

# Show package details
brew info <package-name>

# Show package dependencies
brew deps <package-name>

# Show what depends on a package
brew uses <package-name> --installed

Complete maintenance routine

1
2
3
4
5
6
# Full cleanup in one go
brew update && \
brew upgrade && \
brew autoremove && \
brew cleanup --prune=30 && \
brew doctor

Pin packages (prevent updates)

1
2
3
4
5
6
7
8
# Pin a package to current version
brew pin <package-name>

# Unpin it
brew unpin <package-name>

# List pinned packages
brew list --pinned

Pro tip: Run brew update && brew upgrade && brew cleanup monthly to keep your system tidy. Use brew autoremove to catch orphaned dependencies. The cleanup command alone can often reclaim 1-2GB.