Skip to content

Fix Node.js 14 on macOS 15 tests#82

Merged
rochdev merged 3 commits intomainfrom
szegedi/break-system-packages
Jan 21, 2026
Merged

Fix Node.js 14 on macOS 15 tests#82
rochdev merged 3 commits intomainfrom
szegedi/break-system-packages

Conversation

@szegedi
Copy link
Copy Markdown
Contributor

@szegedi szegedi commented Jan 15, 2026

After upgrading runners to macOS 15, we started seeing an error when running pip3 install setuptools for the Node.js 14 or lower branch of darwin-x64-test because pip would be installing the package into the OS default Python installation. An easy way to fix this is to pass the --break-system-packages flag, as these are throwaway VMs.

Full error message
error: externally-managed-environment

× This environment is externally managed
╰─> To install Python packages system-wide, try brew install
    xyz, where xyz is the package you are trying to
    install.
    
    If you wish to install a Python library that isn't in Homebrew,
    use a virtual environment:
    
    python3 -m venv path/to/venv
    source path/to/venv/bin/activate
    python3 -m pip install xyz
    
    If you wish to install a Python application that isn't in Homebrew,
    it may be easiest to use 'pipx install xyz', which will manage a
    virtual environment for you. You can install pipx with
    
    brew install pipx
    
    You may restore the old behavior of pip by passing
    the '--break-system-packages' flag to pip, or by adding
    'break-system-packages = true' to your pip.conf file. The latter
    will permanently disable this error.
    
    If you disable this error, we STRONGLY recommend that you additionally
    pass the '--user' flag to pip, or set 'user = true' in your pip.conf
    file. Failure to do this can result in a broken Homebrew installation.
    
    Read more about this behavior here: <https://peps.python.org/pep-0668/>

note: If you believe this is a mistake, please contact your Python installation or OS distribution provider. You can override this, at the risk of breaking your Python installation or OS, by passing --break-system-packages.
hint: See PEP 668 for the detailed specification.

@szegedi szegedi requested a review from a team as a code owner January 15, 2026 10:05
@szegedi szegedi requested a review from rochdev January 15, 2026 10:30
@szegedi szegedi changed the title Add --break-sytem-packages to pip for macOS 15 Add --break-system-packages to pip for macOS 15 Jan 15, 2026
@szegedi szegedi changed the title Add --break-system-packages to pip for macOS 15 Fix Node.js 14 on macOS 15 tests Jan 15, 2026
@rochdev rochdev merged commit f428f5d into main Jan 21, 2026
205 of 206 checks passed
@szegedi szegedi deleted the szegedi/break-system-packages branch January 22, 2026 10:48
@szegedi szegedi mentioned this pull request Jan 22, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants