Commit Graph
53196 Commits
Author SHA1 Message Date
Mike McQuaid f1ea3476e9 Merge pull request #24270 from Homebrew/dependabot/github_actions/github-actions-0115aca7cf
build(deps): bump the github-actions group across 1 directory with 13 updates
2026-10-16 08:28:51 +00:00
Mike McQuaid f2bd8a83b0 Merge pull request #24257 from hyuraku/curl-meta-charset
utils/curl: guess charset from a `<meta>` tag
2026-10-16 08:16:08 +00:00
dependabot[bot] b8a0f06809 build(deps): bump the github-actions group across 1 directory with 13 updates
Bumps the github-actions group with 13 updates in the / directory:

| Package | From | To |
| --- | --- | --- |
| [Homebrew/actions/setup-homebrew](https://github.com/homebrew/actions) | `2026.09.28.1` | `2026.10.12.1` |
| [actions/upload-artifact](https://github.com/actions/upload-artifact) | `7.0.1` | `7.0.2` |
| [actions/download-artifact](https://github.com/actions/download-artifact) | `8.0.1` | `8.0.2` |
| [github/codeql-action/upload-sarif](https://github.com/github/codeql-action) | `4.38.2` | `4.38.3` |
| [Homebrew/actions/setup-ruby](https://github.com/homebrew/actions) | `2026.09.28.1` | `2026.10.12.1` |
| [github/codeql-action/init](https://github.com/github/codeql-action) | `4.38.2` | `4.38.3` |
| [github/codeql-action/analyze](https://github.com/github/codeql-action) | `4.38.2` | `4.38.3` |
| [Homebrew/actions/check-commit-format](https://github.com/homebrew/actions) | `2026.09.28.1` | `2026.10.12.1` |
| [Homebrew/actions/create-or-update-issue](https://github.com/homebrew/actions) | `2026.09.28.1` | `2026.10.12.1` |
| [Homebrew/actions/git-user-config](https://github.com/homebrew/actions) | `2026.09.28.1` | `2026.10.12.1` |
| [Homebrew/actions/setup-commit-signing](https://github.com/homebrew/actions) | `2026.09.28.1` | `2026.10.12.1` |
| [Homebrew/actions/git-try-push](https://github.com/homebrew/actions) | `2026.09.28.1` | `2026.10.12.1` |
| [astral-sh/setup-uv](https://github.com/astral-sh/setup-uv) | `10.2.0` | `10.3.0` |



Updates `Homebrew/actions/setup-homebrew` from 2026.09.28.1 to 2026.10.12.1
- [Release notes](https://github.com/homebrew/actions/releases)
- [Changelog](https://github.com/Homebrew/actions/blob/main/release.test.mts)
- [Commits](https://github.com/homebrew/actions/compare/e99025eb970cfa124b8284a35463d87426917478...eb02c69dbabdb66ff183c614f4ce7ab3c077592c)

Updates `actions/upload-artifact` from 7.0.1 to 7.0.2
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](https://github.com/actions/upload-artifact/compare/043fb46d1a93c77aae656e7c1c64a875d1fc6a0a...cf430e030ddbb5b0abf93d22962f4752f3646cd9)

Updates `actions/download-artifact` from 8.0.1 to 8.0.2
- [Release notes](https://github.com/actions/download-artifact/releases)
- [Commits](https://github.com/actions/download-artifact/compare/3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c...9000827ccba6bdab643e8b6fd33ac0654aef8333)

Updates `github/codeql-action/upload-sarif` from 4.38.2 to 4.38.3
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/github/codeql-action/compare/2892aa5e19bbd11bc0cff5427e3b750a04d9e3c2...24c54180a607b1449ed407dd24f251e4e9147c8d)

Updates `Homebrew/actions/setup-ruby` from 2026.09.28.1 to 2026.10.12.1
- [Release notes](https://github.com/homebrew/actions/releases)
- [Changelog](https://github.com/Homebrew/actions/blob/main/release.test.mts)
- [Commits](https://github.com/homebrew/actions/compare/e99025eb970cfa124b8284a35463d87426917478...eb02c69dbabdb66ff183c614f4ce7ab3c077592c)

Updates `github/codeql-action/init` from 4.38.2 to 4.38.3
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/github/codeql-action/compare/2892aa5e19bbd11bc0cff5427e3b750a04d9e3c2...24c54180a607b1449ed407dd24f251e4e9147c8d)

Updates `github/codeql-action/analyze` from 4.38.2 to 4.38.3
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/github/codeql-action/compare/2892aa5e19bbd11bc0cff5427e3b750a04d9e3c2...24c54180a607b1449ed407dd24f251e4e9147c8d)

Updates `Homebrew/actions/check-commit-format` from 2026.09.28.1 to 2026.10.12.1
- [Release notes](https://github.com/homebrew/actions/releases)
- [Changelog](https://github.com/Homebrew/actions/blob/main/release.test.mts)
- [Commits](https://github.com/homebrew/actions/compare/e99025eb970cfa124b8284a35463d87426917478...eb02c69dbabdb66ff183c614f4ce7ab3c077592c)

Updates `Homebrew/actions/create-or-update-issue` from 2026.09.28.1 to 2026.10.12.1
- [Release notes](https://github.com/homebrew/actions/releases)
- [Changelog](https://github.com/Homebrew/actions/blob/main/release.test.mts)
- [Commits](https://github.com/homebrew/actions/compare/e99025eb970cfa124b8284a35463d87426917478...eb02c69dbabdb66ff183c614f4ce7ab3c077592c)

Updates `Homebrew/actions/git-user-config` from 2026.09.28.1 to 2026.10.12.1
- [Release notes](https://github.com/homebrew/actions/releases)
- [Changelog](https://github.com/Homebrew/actions/blob/main/release.test.mts)
- [Commits](https://github.com/homebrew/actions/compare/e99025eb970cfa124b8284a35463d87426917478...eb02c69dbabdb66ff183c614f4ce7ab3c077592c)

Updates `Homebrew/actions/setup-commit-signing` from 2026.09.28.1 to 2026.10.12.1
- [Release notes](https://github.com/homebrew/actions/releases)
- [Changelog](https://github.com/Homebrew/actions/blob/main/release.test.mts)
- [Commits](https://github.com/homebrew/actions/compare/e99025eb970cfa124b8284a35463d87426917478...eb02c69dbabdb66ff183c614f4ce7ab3c077592c)

Updates `Homebrew/actions/git-try-push` from 2026.09.28.1 to 2026.10.12.1
- [Release notes](https://github.com/homebrew/actions/releases)
- [Changelog](https://github.com/Homebrew/actions/blob/main/release.test.mts)
- [Commits](https://github.com/homebrew/actions/compare/e99025eb970cfa124b8284a35463d87426917478...eb02c69dbabdb66ff183c614f4ce7ab3c077592c)

Updates `astral-sh/setup-uv` from 10.2.0 to 10.3.0
- [Release notes](https://github.com/astral-sh/setup-uv/releases)
- [Commits](https://github.com/astral-sh/setup-uv/compare/c18668ad3cf93ea998bef934396af7bb5c839dc7...1c37ad07a6a961277cf70c0d37d6f313000f5884)

---
updated-dependencies:
- dependency-name: Homebrew/actions/setup-homebrew
  dependency-version: 2026.10.12.1
  dependency-type: direct:production
  dependency-group: github-actions
- dependency-name: actions/upload-artifact
  dependency-version: 7.0.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: github-actions
- dependency-name: actions/download-artifact
  dependency-version: 8.0.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: github-actions
- dependency-name: github/codeql-action/upload-sarif
  dependency-version: 4.38.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: github-actions
- dependency-name: Homebrew/actions/setup-ruby
  dependency-version: 2026.10.12.1
  dependency-type: direct:production
  dependency-group: github-actions
- dependency-name: github/codeql-action/init
  dependency-version: 4.38.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: github-actions
- dependency-name: github/codeql-action/analyze
  dependency-version: 4.38.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: github-actions
- dependency-name: Homebrew/actions/check-commit-format
  dependency-version: 2026.10.12.1
  dependency-type: direct:production
  dependency-group: github-actions
- dependency-name: Homebrew/actions/create-or-update-issue
  dependency-version: 2026.10.12.1
  dependency-type: direct:production
  dependency-group: github-actions
- dependency-name: Homebrew/actions/git-user-config
  dependency-version: 2026.10.12.1
  dependency-type: direct:production
  dependency-group: github-actions
- dependency-name: Homebrew/actions/setup-commit-signing
  dependency-version: 2026.10.12.1
  dependency-type: direct:production
  dependency-group: github-actions
- dependency-name: Homebrew/actions/git-try-push
  dependency-version: 2026.10.12.1
  dependency-type: direct:production
  dependency-group: github-actions
- dependency-name: astral-sh/setup-uv
  dependency-version: 10.3.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: github-actions
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-10-16 08:14:12 +00:00
Carlo Cabrera dbdc9b534e Merge pull request #24268 from Homebrew/sponsors-maintainers-man-completions
Update sponsors.
2026-10-16 00:30:03 +00:00
BrewTestBot 974d6a0e03 Update sponsors.
Autogenerated by the [sponsors-maintainers-man-completions](https://github.com/Homebrew/brew/blob/HEAD/.github/workflows/sponsors-maintainers-man-completions.yml) workflow.
2026-10-16 00:11:11 +00:00
Patrick Linnane be9411f7d2 Merge pull request #24266 from Homebrew/tap-migration-full-names
Use full names for tap migration targets
2026-10-15 15:27:13 +00:00
Patrick Linnane 20383ece15 Merge pull request #24263 from Homebrew/no-linkage-api-metadata
Preserve and validate no_linkage metadata
2026-10-15 15:27:05 +00:00
hyuraku dab4105c25 utils/curl: guess charset from a <meta> tag 2026-10-15 21:59:56 +09:00
Patrick Linnane a9aa984cb8 Preserve and validate no_linkage metadata
- `Formula#to_hash` dropped `:no_linkage`, so formulae loaded from the
  API lost the linkage expectations `brew linkage` relies on.
- Emit a `no_linkage_dependencies` name list beside the existing string
  arrays and overlay it when loading, keeping older readers working.
- Reject conflicting `:no_linkage` declarations for one dependency
  within a spec and platform at load time, since the overlay is by name.

Signed-off-by: Patrick Linnane <patrick@linnane.io>
2026-10-15 07:38:40 +00:00
Mike McQuaid f8d1b25f33 Merge pull request #24267 from Homebrew/bundle-tap-spec-reset
Stop bundle specs leaking Tap and Cask doubles
2026-10-15 07:33:46 +00:00
Mike McQuaid c4095a745d Merge pull request #24262 from Homebrew/formula-struct-tag-arrays
Accept dependency tag arrays in API metadata
2026-10-15 07:22:50 +00:00
Patrick Linnane 86dfebb174 Stop bundle specs leaking Tap and Cask doubles
- `Homebrew::Bundle::Tap.taps` and `Homebrew::Bundle::Cask.casks`
  memoise whatever `Tap.select` and `Cask::Caskroom.casks` return, so
  the `instance_double`s stubbed in `tap_spec` and `dumper_spec`
  survived into later examples.
- `npm_spec`'s `Installer.install!` example then hit rspec-mocks'
  "leaked into another example" error whenever a dumper example ran
  first in the same process, failing random test orders.

Signed-off-by: Patrick Linnane <patrick@linnane.io>
2026-10-14 20:50:52 -07:00
Patrick Linnane 9bd5746a1c Merge pull request #24265 from Homebrew/codeowners-self-review
Require lead maintainer review for CODEOWNERS
2026-10-14 23:58:42 +00:00
Patrick Linnane dcffb26f69 Use full names for tap migration targets
- `user/tap/name` targets in `tap_migrations.json` were reduced to the
  bare name, which `Homebrew::Trust.trusted?` never accepts, so these
  formula/cask migrations never ran automatically and suggested a
  `brew trust` command that rejects bare names.
- Keeping the full name also lets third-party cask targets match
  `Tap#cask_tokens`, which lists full names.

Signed-off-by: Patrick Linnane <patrick@linnane.io>
2026-10-14 16:45:01 -07:00
Patrick Linnane 918022ddee Require lead maintainer review for CODEOWNERS
Signed-off-by: Patrick Linnane <patrick@linnane.io>
2026-10-14 16:35:55 -07:00
Patrick Linnane d323f24079 Accept dependency tag arrays in API metadata
- `FormulaStruct` dependency entries only allowed a single tag symbol,
  so `{ "foo" => [:test, :no_linkage] }` failed `T::Props` validation
  under `HOMEBREW_SORBET_RUNTIME` (`brew test`, `test-bot`, `tests`).
- Widen the type so readers accept combined tags before the metadata
  writer starts emitting them.

Signed-off-by: Patrick Linnane <patrick@linnane.io>
2026-10-14 12:45:06 -07:00
Patrick Linnane f63eb293be Merge pull request #24249 from Homebrew/env-build-state
Keep ENV build metadata off the shareable ENV
2026-10-14 16:57:16 +00:00
Mike McQuaid c6c18a4c2e Merge pull request #24260 from Homebrew/approved_review_end_date
Exclude end date from approved-review searches
2026-10-14 16:31:31 +00:00
Mike McQuaid b918fd8044 Exclude end date from approved-review searches
- Keep next-period PRs out of contribution totals, including capped
  repository searches.
- Use the adjusted boundary in cache keys to avoid stale results.
2026-10-14 16:34:03 +01:00
Mike McQuaid d108ec4d28 Merge pull request #24259 from Homebrew/sync-shared-config
Synchronize shared configuration
2026-10-14 15:18:00 +00:00
Mike McQuaid c18602a186 Merge pull request #24258 from HaraldNordgren/info-build-deps-no-bottle
info: show build deps for source installs
2026-10-14 14:00:09 +00:00
BrewTestBot 8271abc330 Homebrew-Governance.md: update to match main configuration 2026-10-14 13:57:52 +00:00
Harald Nordgren ede89af245 info: show build deps for source installs
- `kegs.all?` is vacuously true with no kegs installed, so `brew info`
  hid build deps even when `brew install` would build from source
- the guard also re-implemented `formula_installs_from_source?`
  inline; call it instead, with the other OS check moved inside, so
  the build deps line and "Installs from source: yes" always agree
2026-10-14 15:45:28 +02:00
Justin Krehel 1e13e953a1 Merge pull request #24253 from Homebrew/sync-shared-config
Synchronize shared configuration
2026-10-14 13:42:57 +00:00
Justin Krehel 21a7d64172 Merge pull request #24256 from Homebrew/unified_guidelines
docs: unify formula and cask description guidelines
2026-10-14 13:42:22 +00:00
Mike McQuaid dd73bcf921 Merge pull request #24254 from Homebrew/bundle-upgrade-npm
bundle: upgrade outdated npm packages
2026-10-14 13:14:12 +00:00
Bevan Kay 0e7f70a2bd Unify formula and cask description guidelines
- Move `desc` guidance into a shared `Description-Guidelines` page so
  formulae and casks follow one set of expectations.
- Keep the principle (describe, don't sell) and replace the rigid
  cask-only dos and don'ts with a short list of what to leave out:
  marketing language, feature lists, comparisons with other projects
  and addressing the reader.
- Leave the name and platform rules to `brew style`, which already
  enforces them, so the page only documents what needs judgement.
- Point both cookbooks and the `desc` DSL docs at the new page.
2026-10-14 23:34:49 +11:00
Mike McQuaid d711ac71db bundle: upgrade outdated npm packages
- Honour existing upgrade controls for `npm` dependencies.
- Cache registry queries and report pending upgrades.

Fixes #24248
2026-10-14 10:09:06 +01:00
BrewTestBot 8d958194da Homebrew-Governance.md: update to match main configuration 2026-10-14 08:26:04 +00:00
Bevan Kay 92b8ea8ebd Merge pull request #24252 from Homebrew/sponsors-maintainers-man-completions
Update sponsors.
2026-10-14 00:28:03 +00:00
BrewTestBot 42cd394daa Update sponsors.
Autogenerated by the [sponsors-maintainers-man-completions](https://github.com/Homebrew/brew/blob/HEAD/.github/workflows/sponsors-maintainers-man-completions.yml) workflow.
2026-10-14 00:11:48 +00:00
Bevan Kay 3c1f920b67 Merge pull request #24244 from Homebrew/cask_ci_ignore_apple_apps
cask/ci/check: ignore more running Apple apps
2026-10-13 23:13:51 +00:00
Patrick Linnane 70b274d8b4 Keep ENV build metadata off the shareable ENV
- Ruby 4.1 makes `ENV` Ractor-shareable, so the instance variables that
  `setup_build_environment`, compiler selection and the Superenv
  dependency lists stored on it raise `Ractor::IsolationError`.
  See https://bugs.ruby-lang.org/issues/22291.
- Store that metadata in a private typed `State`: the process `ENV`
  uses one shared instance and Hash environments copy theirs before
  writes, so `dup`/`clone` snapshots keep the old instance-variable
  semantics.
- Require `formula` before the typed dependency setters run under
  runtime Sorbet, since their signatures resolve `Formula` lazily.

Signed-off-by: Patrick Linnane <patrick@linnane.io>
2026-10-13 13:56:21 -07:00
Patrick Linnane 0189694586 Merge pull request #24245 from Homebrew/isolate-terminal-command-specs
test: isolate tty? and command lookup fixtures
2026-10-13 20:24:12 +00:00
Mike McQuaid 642c2c4592 Merge pull request #24247 from Homebrew/cask-audit-resource-bundles
cask/audit: skip resource-only bundles
2026-10-13 20:08:20 +00:00
Mike McQuaid 574f86e061 cask/audit: skip resource-only bundles
- Avoid false Gatekeeper failures for localisation resources.
- Preserve checks for bundles with metadata or native code.
- Assess nested bundles separately from their resource-only parents.

Fixes #24246
2026-10-13 20:51:18 +01:00
Patrick Linnane b763ad1646 test: isolate tty? and command lookup fixtures
- Ruby 4.1's `io-console` prepends `IO#tty?`, which RSpec's
  `any_instance` does not support. Stub `$stdout` instead, which is the
  object `Formatter.columns` and `brew services info` consult.
- Ruby 4.1 returns `Class#subclasses` oldest first, so stale same-named
  stub classes from earlier examples won the lookup in the command and
  subcommand examples. Supply the candidate classes explicitly; the
  command paths example still covers real discovery.

Signed-off-by: Patrick Linnane <patrick@linnane.io>
2026-10-13 08:10:32 -07:00
Patrick Linnane eb56e2b1f7 Merge pull request #24243 from hyuraku/bottle-transition-instructions
Document yearly `BottleTransition` update
2026-10-13 14:54:41 +00:00
Bevan Kay 773cb7c539 cask/ci/check: ignore more running Apple apps
- Some casks open an Apple app on install or first launch, e.g.
  `typinator` opens its tutorial `.rtfd` in TextEdit, which fails CI
  with `com.apple.TextEdit` left running.
- Casks have worked around this with `uninstall quit:` stanzas for
  Help Viewer (`eaglefiler`), Mail (`gpg-suite*`, `mailsteward`) and
  Music (`quakenotch`), which quit the user's app on uninstall and
  risk losing their work.
- A cask shouldn't quit a system app, so treat these like the other
  Apple apps already in `APPLE_LAUNCHJOBS_REGEX`.
2026-10-14 00:02:08 +11:00
hyuraku 52878739a7 Document yearly BottleTransition update 2026-10-13 21:06:56 +09:00
Mike McQuaid 1220a4af7b Merge pull request #24229 from AbdelrahmanHafez/brew-bug-bundle-cleanup-removes-brewfile-packages-resolve-formula-names
bundle: protect alternate formula names
2026-10-13 11:02:03 +00:00
Mike McQuaid 1db66fda35 Merge pull request #24242 from Homebrew/preserve-test-resource
utils/pypi: preserve `:test` resources
2026-10-12 20:36:14 +00:00
Mike McQuaid b10a7c37f3 Merge pull request #24240 from adamv/feature/sort-version-tags
sort search results by version
2026-10-12 20:30:06 +00:00
Hafez 86daad6e76 bundle: revert homebrew-core prefix normalization 2026-10-12 22:20:26 +02:00
Mike McQuaid 8cc4594625 Merge pull request #24241 from Homebrew/cask-privileged-step-errors
Read protected install step symlinks with sudo
2026-10-12 20:13:33 +00:00
botantony f793ed8aca utils/pypi: preserve :test resources
Preserve `:test` resources when using `brew update-python-resources`

Signed-off-by: botantony <antonsm21@gmail.com>
2026-10-12 23:09:37 +03:00
Mike McQuaid b48706cd15 Merge pull request #24239 from Homebrew/ternary-to-modifier-cop
Add cop for ternaries with nil branches
2026-10-12 20:09:11 +00:00
Patrick Linnane 840156b26e Read protected install step symlinks with sudo
Removing a cask's install step symlink failed with `EACCES` when the
link was root-owned and unreadable, aborting uninstalls and upgrades.
Steps that already allow `sudo` now read the target with
`sudo readlink -n`, so the target check still runs before removal. A
forked child reporting an error after its parent has failed and closed
the pipe no longer prints a secondary `EPIPE` traceback.

Signed-off-by: Patrick Linnane <patrick@linnane.io>
2026-10-12 11:29:17 -07:00
adamv 04a6532a2c sort search results by version
Sort search results by version, so that "python@3.9" sorts ahead of "python@3.12".
2026-10-12 10:38:28 -07:00
Mike McQuaid 13973585a8 Merge pull request #24238 from Homebrew/info-local-formula-source
Fix local formula sources in brew info
2026-10-12 16:12:37 +00:00