Skip to content

brew test-bot --only-setup fails because of dirty homebrew/core repo #13284

Closed as not planned

Description

@heaths

Description

Somewhat recently, when using brew test-bot to update my formulae, brew doctor fails (run during brew test-bot --only-setup) because the homebrew/core repo has uncommitted changes, namely for openssl but I was also seeing git's formula sometimes.

Based on https://github.com/orgs/Homebrew/discussions/6517 I added a step to git -C "$(brew --repository homebrew/core)" clean -df and that has fixed the problem.

Your runner images seem to be left in a dirty state.

This might actually affect all platforms, but macOS 15 images were first to hit the error every time, so I can't say for certain.

Platforms affected

  • Azure DevOps
  • GitHub Actions - Standard Runners
  • GitHub Actions - Larger Runners

Runner images affected

  • Ubuntu 22.04
  • Ubuntu 24.04
  • Ubuntu Slim
  • macOS 13
  • macOS 13 Arm64
  • macOS 14
  • macOS 14 Arm64
  • macOS 15
  • macOS 15 Arm64
  • macOS 26 Arm64
  • Windows Server 2019
  • Windows Server 2022
  • Windows Server 2025

Image version and build link

Version 20251103.0081

Failed build: https://github.com/heaths/homebrew-tap/actions/runs/19257978217/job/55056656173

Is it regression?

Yes. It's been a while since I've run this workflow, but it worked here: https://github.com/heaths/homebrew-tap/actions/runs/18397316728 (runner version 20250928.2397)

Expected behavior

brew doctor runs without finding any issues i.e., no files are uncommitted in the homebrew/core repo.

Actual behavior

brew doctor fails because there are uncommitted files in the homebrew/core repo.

Repro steps

The workflow is mostly the standard brew test-bot-created workflow (I've made some minor edits but unrelated to this issue). Basically, it needs to set up homebrew and eventually runs brew doctor to check for issues including uncommitted files in the homebrew/core repo that might yield inconsistent results when building formulae.

So not so much repro steps, but the workflow shows the steps. At one point I peppered intermitted git -C "$(brew --repository homebrew/core)" status in the workflow and, indeed, even before any brew commands were run, the repo was dirty.

Activity

  1. ZhongRuoyu commented on Nov 12, 2025

    @ZhongRuoyu

    Homebrew maintainer here. I understand that GitHub Actions keep [email protected] in the images due to compatibility issues. We have added a workaround for this on Homebrew's side (Homebrew/brew#21025) so that Homebrew taps can continue to work with the standard workflow. (brew test-bot --cleanup --only-cleanup-before cleans this up.)

  2. erik-bershel commented on Nov 12, 2025

    @erik-bershel
    Contributor

    The problem exists, affecting only macOS, where Homebrew is the primary package manager, and where we use workaround to install an older version of OpenSSL, which is responsible for a significant number of community launches. This same approach is sometimes used to work around issues with other packages of newer versions.

    We'll investigate whether this approach can be used to avoid OpenSSL pinning or to mitigate its consequences before launch, or whether we'll be forced to accept this as expected behavior and ask you to use the Workaround provided by the maintainer above. We'll return with a response based on the results of our brief investigation. Until then, please use any of the patches provided that's convenient for you.

  3. self-assigned this
    on Nov 27, 2025
  4. erik-bershel commented on Dec 25, 2025

    @erik-bershel
    Contributor

    We haven't yet reached a completely safe scenario for using the deprecated OpenSSL 1.1 package, which some users depend on, so we'll leave the situation as is. Overall, this shouldn't be a major issue given the existing workaround, although it is a bug in the broadest sense. The issue will eventually resolve with the upcoming transition to macOS 26. We may be able to deprecate OpenSSL 1.1 on macOS-15, and we'll notify the community separately if that happens.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions