less than 1 minute read

Homebrew Python packages work by setting up their own package-specific virtual environments. This means you can upgrade them without waiting for the tap.

To find the virtual environment, run head -n 1 against the Homebrew-provided executable. For example, VisiData is vd, so this works:

% head -n 1 $(which vd)
#!/usr/local/Cellar/visidata/1.5.2/libexec/bin/python3.8

Now you can call pip within that virtual directory to perform the upgrade like so:

/usr/local/Cellar/visidata/1.5.2/libexec/bin/pip install -U visidata

Via til.simonwillison.net.

Leave a comment