Skip to content

Conversation

@p-linnane
Copy link
Member

  • Have you followed the guidelines in our Contributing document?
  • Have you checked to ensure there aren't other open Pull Requests for the same change?
  • Have you added an explanation of what your changes do and why you'd like us to include them?
  • Have you written new tests for your changes? Here's an example.
  • Have you successfully run brew style with your changes locally?
  • Have you successfully run brew typecheck with your changes locally?
  • Have you successfully run brew tests with your changes locally?

Removing some dead code for versions of macOS Homebrew no longer runs on.

Copilot AI review requested due to automatic review settings November 7, 2025 21:52
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR removes support for legacy macOS versions (10.9 through 10.14, also known as Mavericks through Mojave). The changes clean up code and configuration files that were specifically maintained for these older operating systems.

  • Removes version-specific Xcode and CLT handling for macOS 10.11 through 10.14
  • Deletes pkgconfig files for macOS 10.9 through 10.14
  • Removes workarounds for building on these legacy macOS versions
  • Updates minimum supported versions to macOS 10.15 (Catalina) and later

Reviewed Changes

Copilot reviewed 82 out of 82 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
Library/Homebrew/test/bundle/mac_app_store_dumper_spec.rb Removes test case line for "Install macOS High Sierra" entry
Library/Homebrew/os/mac/xcode.rb Removes Xcode version mappings for macOS 10.11-10.14 in latest_version, minimum_version, latest_clang_version methods, and removes 10.14-specific installation instructions
Library/Homebrew/os/mac/sdk.rb Removes code for reading pre-10.14 SDK settings from plist files
Library/Homebrew/os/mac/pkgconfig/10.9/* Deletes all pkgconfig files for macOS 10.9 (Mavericks)
Library/Homebrew/os/mac/pkgconfig/10.10/* Deletes all pkgconfig files for macOS 10.10 (Yosemite)
Library/Homebrew/os/mac/pkgconfig/10.11/* Deletes all pkgconfig files for macOS 10.11 (El Capitan)
Library/Homebrew/os/mac/pkgconfig/10.12/* Deletes all pkgconfig files for macOS 10.12 (Sierra)
Library/Homebrew/os/mac/pkgconfig/10.13/* Deletes all pkgconfig files for macOS 10.13 (High Sierra)
Library/Homebrew/os/mac/pkgconfig/10.14/* Deletes all pkgconfig files for macOS 10.14 (Mojave)
Library/Homebrew/extend/os/mac/formula.rb Removes clock_gettime workaround for macOS 10.11 with Xcode 8.0+
Library/Homebrew/extend/os/mac/extend/ENV/super.rb Removes GNU Autotools symbol filtering workarounds for macOS 10.11-10.12
Library/Homebrew/brew.sh Updates comment to remove reference to specific Safari version on 10.12
Comments suppressed due to low confidence (1)

Library/Homebrew/os/mac/xcode.rb:141

  • The conditional logic has been simplified by removing the macOS 10.14 special case, but this introduces a potential issue. The removed code provided specific instructions for macOS 10.14 users about installing Command Line Tools 11.3.1 since it wasn't available from xcode-select. Without this special case, macOS 10.14 users (if they somehow still exist in the codebase) would now get generic instructions that might not work for their version. However, given the PR's purpose of dropping support for macOS 10.14 and earlier, this is acceptable if documented that 10.14 is no longer supported. Consider verifying that the minimum supported version is clearly documented elsewhere in the codebase.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Copy link
Member

@issyl0 issyl0 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great finds!

@p-linnane p-linnane added this pull request to the merge queue Nov 8, 2025
Merged via the queue into main with commit 307c79c Nov 8, 2025
50 checks passed
@p-linnane p-linnane deleted the rm-old-macos-code branch November 8, 2025 17:09
Copy link
Member

@MikeMcQuaid MikeMcQuaid left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice cleanup, thanks!

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.

5 participants