LinuxCommandLibrary

brew-outdated

List outdated Homebrew packages

TLDR

List all outdated casks and formulae

$ brew outdated
copy

List only outdated formulae
$ brew outdated --formula
copy

List only outdated casks
$ brew outdated --cask
copy

SYNOPSIS

brew outdated [options] [formula|cask ...]

PARAMETERS

-d, --debug
    Enable debug output

-q, --quiet
    Suppress non-error messages

--verbose
    Print more verbose operation information

--formula
    List only outdated formulae (default with casks)

--cask
    List only outdated casks

--greedy
    Include casks with auto-update policies

--fetch
    Fetch newest versions from remote repositories

--json=v1
    Output JSON with names and metadata

-h, --help
    Show help message

--version
    Display command version

DESCRIPTION

The brew outdated command identifies Homebrew-installed packages (formulae and casks) that have newer versions available in the remote repositories. It compares the currently installed version against the latest version fetched from Homebrew's taps, such as the core tap or user-added taps.

By default, it lists both outdated formulae (command-line tools, libraries) and casks (GUI apps), showing the installed version and the available update. This helps users maintain up-to-date software stacks without manual checks. On Linux (via Linuxbrew), it focuses primarily on formulae, as cask support is limited compared to macOS.

Running it without arguments scans all installed packages. Specifying formulae limits output to those. Use with --fetch to ensure repositories are updated first. Output is human-readable by default but supports JSON for scripting. It's a safe, read-only operation—no changes are made to installations.

CAVEATS

On Linux, cask support is experimental and limited to Linux-compatible apps; many macOS casks fail. Pinned formulae are excluded unless specified. Requires network access for accurate checks.

EXAMPLES

brew outdated
Lists all outdated packages.

brew outdated --formula wget
Checks only wget formula.

brew outdated --json=v1
JSON output for scripting.

HISTORY

Introduced in early Homebrew versions around 2010 as part of core maintenance commands. Homebrew, created by Max Howell in 2009 for macOS, extended to Linux in 2014 via Linuxbrew (merged 2018). brew outdated evolved with JSON support (~2018) for CI/CD integration.

SEE ALSO

Copied to clipboard