mirror of
https://github.com/Homebrew/brew.git
synced 2025-07-14 16:09:03 +08:00

We have a `HOMEBREW_MACOS_NEWEST_UNSUPPORTED` environment variable and this is used in `MacOSVersion` to determine prerelease versions but we don't have a way of easily determining the newest supported macOS version. `bump-cask-pr` contains logic that assumes the first key/value in `MacOSVersion::SYMBOLS` is the newest macOS version but it recently became clear that this is a prerelease version between WWDC and the subsequent macOS release. Similarly, `dev-cmd/generate-cask-api.rb` tries to compute the newest stable macOS version as `HOMEBREW_MACOS_NEWEST_UNSUPPORTED.to_i - 1` and this will fail if/when we update that variable to `"26"`, as the macOS version before 26 is 15, not 25. This adds a `HOMEBREW_MACOS_NEWEST_SUPPORTED` environment variable, so we have a straightforward way of quickly identifying the newest supported macOS version without having to make potentially unreliable assumptions or do computations to identify the latest non-prerelease `MacOSVersion` value. This also updates the two aforementioned areas to use this environment variable to produce the newest stable macOS version symbol in a more reliable way.