100 Commits
Author SHA1 Message Date
Mike McQuaid a59d9fc5f8 Merge pull request #24368 from Homebrew/issue_24364_reset_core_git_remote
Allow resetting Git remotes to their defaults
2026-10-27 14:39:25 +00:00
Mike McQuaid 20e162d4e8 Merge pull request #24361 from Homebrew/as-brew-user-cask-sudo
Preserve sudo routing when switching users
2026-10-27 09:29:52 +00:00
Mike McQuaid 745e907e11 Allow resetting Git remotes to their defaults
- Preserve mirror remotes unless users explicitly select defaults.

Fixes #24364
2026-10-27 09:16:33 +00:00
Mike McQuaid 31af0b9ae6 Preserve sudo routing when switching users
- Keep `HOMEBREW_SUDO_THROUGH_SUDO_USER` and the original caller
  available after the wrappers clear their environment.
- Let `as-brew-user` and `as-console-user` use existing sudoers policy
  for privileged cask operations.
- Handle same-user routing without changing normal service domains.
- Document that the setting does not change sudo's authentication
  requirements.

Fixes #24358
2026-10-27 09:13:41 +00:00
Mike McQuaid 9999947f71 Merge pull request #24343 from syntactic-spice/appimage-desktop-entries
Add desktop entries for AppImage casks
2026-10-27 09:00:40 +00:00
Mike McQuaid b80081950a Merge pull request #24366 from abitrolly/quiet-search
search: Suppress headers in quiet mode
2026-10-27 08:59:40 +00:00
Mike McQuaid 4a2b2f264a Merge pull request #24363 from edel67/uv-inventory-failures
bundle: reject failed uv inventories
2026-10-27 08:58:18 +00:00
Mike McQuaid 57c486f02e Merge pull request #24360 from Homebrew/as-brew-user-relative-brewfile
Preserve working directories when switching users
2026-10-27 08:53:40 +00:00
Mike McQuaid 615a49c602 Preserve working directories when switching users
- Changing directory inside `as-brew-user` and `as-console-user` makes
  relative paths resolve against the target user's home, breaking
  `bundle --file` and local `Brewfile` discovery.
- Setting `HOME` is enough to use the target user's configuration
  and caches. Keeping the caller's directory fixes relative paths for
  every command without duplicating argument parsing in the wrappers.

Fixes #24359
2026-10-26 17:44:30 +00:00
Mike McQuaid c6069d2a94 Merge pull request #24355 from Homebrew/homebrew-enterprise-guides
Document Homebrew and MDM administration
2026-10-26 07:44:47 +00:00
Mike McQuaid 40d40f5505 Document Homebrew and MDM administration
- Explain shared Brewfiles for teams without device management.
- Connect existing commands to MDM deployment and reporting.
- Document provisioning prerequisites, package policies and scan coverage.
- Link administration workflows from the Mac administrator guide.
2026-10-25 19:27:32 +00:00
Mike McQuaid 8d799352d3 Merge pull request #24354 from Homebrew/sorbet-files-update
sorbet: Update RBI files.
2026-10-25 13:24:54 +00:00
Mike McQuaid 496a6490d3 Merge pull request #24353 from Homebrew/resource-error-naming
download_queue: name the download in checksum mismatch errors
2026-10-25 13:18:06 +00:00
Mike McQuaid c5b9f65d0b Merge pull request #24352 from Homebrew/item-trust-commands
Limit implicit item trust to install commands
2026-10-24 20:08:56 +00:00
Mike McQuaid 51da7f234a Merge pull request #24351 from Homebrew/sandbox-temporary-directory-read-access
Allow reading private sandbox temporary files
2026-10-24 18:08:15 +00:00
Mike McQuaid b51000cdef Merge pull request #24350 from Homebrew/analytics-query-refactor
Share analytics queries and package downloads
2026-10-24 18:07:45 +00:00
Mike McQuaid 271fe96061 Limit implicit item trust to install commands
- Match implicit trust to the documented installation behaviour.
  Other commands require existing trust for the tap or item.
- Retain the dispatched name in `Homebrew.running_command` and limit
  `ARGV` allowances to `install`, `reinstall` and `upgrade`, which
  announce and persist item trust.
- Preserve early formula loading for command-specific options before
  `trust_fully_qualified_items!` runs.
- Cover formula and cask loads, both `--tap` forms and existing alias,
  rename and external command behaviour.
2026-10-24 18:58:00 +01:00
Mike McQuaid 9e05a54e67 Allow reading private sandbox temporary files
- Let archive tools read files in the sandbox's temporary directory
  without granting read access to its parent.
- Exercise temporary-file reads and denied parent access in the sandbox.

Fixes #24348
2026-10-24 18:57:28 +01:00
Mike McQuaid d4412a6a12 Merge pull request #24346 from Homebrew/prefer-reliable-download-tools
Prefer reliable installed download tools
2026-10-24 17:53:03 +00:00
Mike McQuaid e92663d173 Merge pull request #24349 from Homebrew/elf-utf8-relocation-paths
Preserve UTF-8 paths in ELF loader strings
2026-10-24 16:31:14 +00:00
Mike McQuaid d8fcbd424a Share analytics queries and package downloads
- Extract InfluxDB queries so API generators can call Ruby directly.
- Share cached package totals between `brew info` and API generation.
- Keep query formatting and reader tests with their implementations.
2026-10-24 17:30:25 +01:00
Mike McQuaid 68cd1d8861 Prefer reliable installed download tools
- Prefer newer working Homebrew or system Git and curl before a path
  suggestion, so overrides cannot displace suitable defaults. Share
  selection with Subversion when it is invoked.
- Cache probes against executable metadata and selection inputs to
  avoid repeated version checks. Read cache data without sourcing shell
  code and pass Bash's known curl version and path to Ruby for reuse.
- Preserve system curl suitability across cached and forced selections
  so legacy remote updates and certificate checks remain correct.
  Keep TLS verification enabled when a suitable custom curl is selected.
- Check Git and curl in `brew doctor`. Invalidate failed cached
  selections and reselect for one retry, refreshing Ruby's cached data
  so subsequent checks use the working replacement.
- Limit invalidation for command failures to explicit version checks.
  Refresh after installation and preserve ordinary download errors
  without retrying downloads or wrapping every invocation.
- Attempt installation when Git/curl are unsuitable or explicitly
  forced. Prevent recursive startup and recheck the result before
  reporting the minimum, observed versions and executable paths.
- Retain version floors and document paths as suggestions without
  promising a fixed selection order, allowing policy to evolve.
2026-10-24 17:20:37 +01:00
Mike McQuaid 13bc9549b4 Merge pull request #24332 from Homebrew/faster-keg-link-unlink
Speed up linking and unlinking kegs
2026-10-24 13:22:49 +00:00
Mike McQuaid 7c5b6053d5 Merge pull request #24345 from aktanazat/list-uninstalled-cask-non-tty
list: fail clearly for uninstalled casks when piped
2026-10-24 08:58:10 +00:00
Mike McQuaid d4c23f217b Merge pull request #24344 from Homebrew/brew_gktool_progress
cask/audit: strip gktool progress from errors
2026-10-24 06:55:11 +00:00
Mike McQuaid e936c31af5 Merge pull request #24342 from xucian/systemd-restart-on-failed-exit
Restart systemd services on unsuccessful exit
2026-10-24 06:55:00 +00:00
Mike McQuaid 7a056ffd71 Merge pull request #24341 from Homebrew/git-download-keychain-token
Allow Keychain tokens for Git downloads
2026-10-23 20:15:43 +00:00
Mike McQuaid 701d9eb77e Merge pull request #24338 from mxtymoshyk/download-progress-resize
Re-read terminal size on resize during downloads
2026-10-23 20:15:19 +00:00
Mike McQuaid 6071b1f1bb Merge pull request #24331 from QuillVot/codex/dmg-desktop-metadata
dmg: skip legacy desktop metadata
2026-10-23 18:14:55 +00:00
Mike McQuaid a48f3f21ac Allow Keychain tokens for Git downloads
- Sandboxed private source downloads cannot read tokens stored by `gh`
  in the macOS Keychain. Allowing Keychain access would also expose
  unrelated credentials, so retain the existing sandbox restrictions.
- Reuse `GitHub::API.github_cli_token` outside the sandbox for built-in
  Git strategies when the rewritten URL uses HTTPS on `github.com`
  and a credential helper is configured. Bound the lookup and keep
  configured helpers inside the sandbox, including wrappers of `gh`.
- Pass the result as `GH_TOKEN` only to top-level clones, fetches and
  remote branch discovery. Register it for log redaction without
  setting the parent environment or populating the API credential
  cache, avoiding exposure through formula environment variables.
- Disable implicit submodule recursion even when Git configuration
  enables it, so child downloads cannot inherit the top-level token.
  Fetch submodules separately without it. Checkouts, resets and local
  inspections also receive no injected token. Share the recursion flag,
  working-directory selection and timeout conversion across callers.
- Explain why tap operations can use Keychain helpers while source
  downloads cannot, and document the remaining authentication limits
  for private submodules and partial clones that fetch during checkout.

Fixes #24339
2026-10-23 17:41:03 +01:00
Mike McQuaid 7685477141 Merge pull request #24340 from Homebrew/dependabot/uv/Library/Homebrew/formula-analytics/certifi-2026.10.19
build(deps): bump certifi from 2026.7.22 to 2026.10.19 in /Library/Homebrew/formula-analytics
2026-10-23 15:51:10 +00:00
Mike McQuaid 04b3f1b580 Merge pull request #24328 from Homebrew/curl-env-vars
Honour curl environment options consistently
2026-10-23 14:48:50 +00:00
Mike McQuaid 7a06d66f0b Merge pull request #24336 from Homebrew/dependabot/bundler/Library/Homebrew/bundler-6583559b8a
build(deps): bump the bundler group across 2 directories with 10 updates
2026-10-23 12:27:19 +00:00
Mike McQuaid 42c9ca67e6 brew style --fix 2026-10-23 13:12:06 +01:00
Mike McQuaid 4321e3dcb6 Merge pull request #24335 from Homebrew/dependabot/uv/Library/Homebrew/formula-analytics/uv-9dc2340d96
build(deps): bump pyarrow from 25.0.1 to 26.0.0 in /Library/Homebrew/formula-analytics in the uv group across 1 directory
2026-10-23 11:19:34 +00:00
Mike McQuaid 341bf68237 Merge pull request #24337 from Homebrew/dependabot/github_actions/github-actions-e242048835
build(deps): bump the github-actions group across 1 directory with 10 updates
2026-10-23 11:18:50 +00:00
Mike McQuaid 206de9fc8f Merge pull request #24327 from zbeekman/fix-deuniversalize-upgrade
formula: deuniversalize the keg being installed
2026-10-23 07:57:15 +00:00
Mike McQuaid 2a40f63eda Merge pull request #24329 from Homebrew/git-config-sandbox-warning
Warn about Git sandbox configuration failures
2026-10-23 07:45:08 +00:00
Mike McQuaid c1fb292539 Warn about Git sandbox configuration failures
- Preserve user Git configuration and download permissions to avoid
  breaking private repository authentication.
- Run one bounded Git configuration query in `brew doctor` without
  executing credential helpers or contacting remotes.
- Match Git diagnostics against sandbox rules to identify restricted
  paths without printing raw configuration or error output.
- Share the download environment and sandbox policy without creating
  a download strategy instance for the diagnostic.
- Use Git's exit status and report sandbox setup failures without
  aborting subsequent doctor checks.
2026-10-22 17:56:16 +01:00
Mike McQuaid fb478cc3a4 Honour curl environment options consistently
- Share curl configuration, retries and verbosity across shell downloads.
- Preserve curlrc disabling when certificate options are injected.
- Keep config and cache paths intact and load each config once.
- Enforce HTTPS redirects for shell downloads when requested.
- Apply configured options to the TLS capability probe.
- Clarify that Git fetches use Git's own transport and configuration.

Fixes #24322
2026-10-22 17:13:28 +01:00
Mike McQuaid 17a9eaaf09 Merge pull request #24325 from Homebrew/keg-codesign-temporary-copy
Sign temporary keg copies before restoring them
2026-10-22 12:02:59 +00:00
Mike McQuaid e07577e37d Sign temporary keg copies before restoring them
- Avoid path-specific `com.apple.provenance` signing failures.
- Keep the original file when signing its temporary copy fails.
- Propagate replacement errors after successful signing retries.

Fixes #24324
2026-10-22 12:38:41 +01:00
Mike McQuaid f764734f3c Merge pull request #24326 from Homebrew/skip-unavailable-macports-links
Skip unavailable MacPorts website links
2026-10-22 11:14:55 +00:00
Mike McQuaid e0139a18ff Skip unavailable MacPorts website links
- `https://www.macports.org` returns HTTP 503, failing the HTMLProofer
  docs check.
- Extend the existing `build.macports.org` ignore rather than adding a
  second entry; drop it once MacPorts is reliably back.
2026-10-22 11:59:25 +01:00
Mike McQuaid b3ca773c7e Merge pull request #24316 from Homebrew/brew_create_zap
Prefill `app` and `zap` in `brew create --cask`
2026-10-22 08:31:33 +00:00
Mike McQuaid 3c6a221562 Merge pull request #24315 from Homebrew/zap_audit
Require `zap` stanzas in new casks
2026-10-22 07:48:00 +00:00
Mike McQuaid a94e18a9c4 Merge pull request #24289 from edel67/bundle-cleanup-failure-reporting
bundle cleanup: report failed removals
2026-10-22 07:47:32 +00:00
Mike McQuaid d0cdf8fbd8 Merge pull request #24318 from hyuraku/info-drop-stale-todo
info: remove stale `installed_as_dependency` TODO
2026-10-22 07:36:26 +00:00
Mike McQuaid 1ef73bbf69 Merge pull request #24314 from Homebrew/clt-newer-release-guard
Don't flag newer CLT releases as outdated
2026-10-21 07:34:07 +00:00
Mike McQuaid 8bfb808afd Merge pull request #24313 from Homebrew/zip-volume-label-specs
Fix ZIP volume label specs on macOS 27
2026-10-21 07:33:56 +00:00
Mike McQuaid c8b71459a3 Merge pull request #24312 from Homebrew/handoff_brew_skip_audit
generate-cask-ci-matrix: skip signing on macOS 15
2026-10-21 07:33:51 +00:00
Mike McQuaid 332963d536 Merge pull request #24309 from Homebrew/casks_audit_reject_rosetta
cask/audit: reject new casks requiring Rosetta
2026-10-20 13:25:09 +00:00
Mike McQuaid f557439031 Merge pull request #24307 from Homebrew/autobump-stable-patch-removal
Keep patches in stable blocks during bumps
2026-10-20 12:41:18 +00:00
Mike McQuaid b761b33fc1 Keep patches in stable blocks during bumps
- Avoid leaving a redundant `stable` block that prevents the version
  bump PR from being created.

Fixes #24306
2026-10-20 12:48:14 +01:00
Mike McQuaid 3e90673e79 Merge pull request #24305 from Homebrew/zip-literal-archive-paths
Treat archive filenames literally
2026-10-20 10:37:37 +00:00
Mike McQuaid 14b6b228f7 Merge pull request #24299 from HaraldNordgren/changed-files-upstream-remote
Warn when the upstream remote isn't `origin`
2026-10-20 07:58:52 +00:00
Mike McQuaid a259f5f505 Merge pull request #24303 from Homebrew/tap-trust-newline
Match newlines in tap path regex
2026-10-20 07:55:55 +00:00
Mike McQuaid b910cb0a2f Merge pull request #24302 from Homebrew/api-dependency-tag-union
Combine dependency role tags from API metadata
2026-10-20 07:55:16 +00:00
Mike McQuaid e77600cfdf Merge pull request #24304 from IngmarStein/tar-utf8-locale
Extract tarballs with a UTF-8 locale
2026-10-20 07:49:19 +00:00
Mike McQuaid 1bb6afa59e Merge pull request #24297 from Homebrew/fix_livecheck
cask/audit: skip livecheck requirement for :latest
2026-10-19 14:45:16 +00:00
Mike McQuaid 327a67baf9 Merge pull request #24290 from HaraldNordgren/keep-no-linkage-build-dependencies
Keep outdated `:no_linkage` build dependencies
2026-10-19 14:08:33 +00:00
Mike McQuaid d78c1943dc Merge pull request #24288 from Homebrew/honour-explicit-cask-checksum-policy
Honour explicit cask checksum requirements
2026-10-19 13:07:52 +00:00
Mike McQuaid d8e415df39 Merge pull request #24287 from Homebrew/require-official-formula-checksums
Require verifiable official formula sources
2026-10-19 13:07:51 +00:00
Mike McQuaid d7a100d46e Merge pull request #24285 from Homebrew/verify-api-patch-downloads
Verify API formula patch downloads
2026-10-19 13:07:50 +00:00
Mike McQuaid 8f10429b56 Merge pull request #24295 from Homebrew/preserve-cask-lifecycle-temp
Preserve cask backups across lifecycle phases
2026-10-19 07:06:46 +00:00
Mike McQuaid 9eaf55d627 Preserve cask backups across lifecycle phases
- Share a private `0700` directory for one cask operation so sandbox
  cleanup cannot delete data awaiting restoration.
- Fail if a recorded backup disappears before guarded restoration.
- Retain the directory on failure and report its path for recovery.
- Keep command scratch space isolated and clean up after success.

Fixes #24293
2026-10-18 15:27:27 +01:00
Mike McQuaid 12f02ec54d Honour explicit cask checksum requirements
- Preserve an explicit `--require-sha` when `--force` is also passed,
  including when the environment enables the same policy.
- Allow `--force` to override an environment-only checksum requirement
  during install, reinstall and upgrade.
2026-10-18 13:11:21 +00:00
Mike McQuaid 85ffa721b0 Require verifiable official formula sources
- Reject unchecked archives, resources and external patches, including
  cached downloads, unless installing without the API.
- Audit patches, versioned HEAD resources and full stable Git revisions
  across all taps; reject unverifiable stable sources in official taps.
- Stage third-party checksum and stable VCS strategy deprecations for
  the next major release while preserving moving HEAD sources.
2026-10-18 13:11:21 +00:00
Mike McQuaid 9d1f468222 Verify API formula patch downloads
- Require signed metadata digests for fresh and cached patch files,
  including resource patches, before using them in source builds.
- Deploy after the API publishes local patch checksums; old metadata
  requires an update rather than silently trusting raw file downloads.
2026-10-18 13:11:20 +00:00
Mike McQuaid 38495687df Merge pull request #24284 from Homebrew/publish-local-patch-checksums
Publish local patch checksums in the formula API
2026-10-18 12:55:26 +00:00
Mike McQuaid dbe090ba71 Publish local patch checksums in the formula API
- Generate digests for stable, HEAD and resource patch files without
  adding checksums to formula definitions.
- Preserve the digests through the public and internal API formats.
- Reject unreadable patches during API generation before incomplete
  metadata can be published.
2026-10-18 13:06:51 +01:00
Mike McQuaid a20e9d4767 Merge pull request #24294 from Homebrew/pathname-child-error-json
Serialise Pathnames in forked child errors
2026-10-18 11:54:39 +00:00
Mike McQuaid 3073d6a8c3 Merge pull request #24292 from Homebrew/pathname-build-error-json
Preserve build errors with Pathname arguments
2026-10-18 02:35:47 +00:00
Mike McQuaid b859f85125 Preserve build errors with Pathname arguments
- Stringify `BuildError` commands and arguments so JSON reporting
  preserves the original failure when formulae pass `Pathname`s.
- Assert reconstructed fields so error equality cannot hide data loss.

Fixes #24291
2026-10-17 20:06:30 +01:00
Mike McQuaid 013821de5e Merge pull request #24282 from Homebrew/tighten-bottle-attestation-checks
Tighten bottle attestation verification
2026-10-17 16:01:02 +00:00
Mike McQuaid 4f593036b3 Merge pull request #24278 from BrandenXia/extraction-write-errors
unpack: explain extraction disk space failures
2026-10-17 15:54:39 +00:00
Mike McQuaid eb42c7b2e7 Merge pull request #24274 from Homebrew/homebrew-admin-commands
Add vulnerability-aware package management
2026-10-17 15:04:01 +00:00
Mike McQuaid 95bfab038b Tighten bottle attestation verification
- Verify cached bottles when provenance checks are enabled.
- Bind the expected subject name to the downloaded bottle's digest.
- Require an exact package version when matching `all` bottles.
2026-10-17 16:00:43 +01:00
Mike McQuaid c30e61b426 Merge pull request #24283 from Homebrew/truncate-version-strings
Truncate summary versions to fit terminal width
2026-10-17 13:47:08 +00:00
Mike McQuaid 43bc3c2eec Truncate summary versions to fit terminal width
- Reserve space for names, arrows and download sizes in install and
  upgrade summaries.
- Retain at least 11 version characters before an ellipsis so narrow
  terminals still show useful versions.
- Keep full version strings when output is redirected.
- Document descriptive names for numeric values in `AGENTS.md`.
2026-10-17 13:58:34 +01:00
Mike McQuaid 3264f71d24 Merge pull request #24193 from xrl/api-revalidate-stale-cache
api: revalidate JSON API caches with ETag, not the bumped mtime
2026-10-17 12:35:53 +00:00
Mike McQuaid 987637f2c3 Merge pull request #24281 from Homebrew/disallowed-patterns-todesktop
rubocops/cask: disallow bare ToDesktop wildcard
2026-10-17 12:23:23 +00:00
Mike McQuaid 0f4d27d13a Merge pull request #24273 from HaraldNordgren/keep-compatible-build-dependencies
Make source build dependency upgrades more liberal
2026-10-17 12:23:16 +00:00
Mike McQuaid c0854395c8 Keep API cache bodies and validators consistent
- Fetch fresh bodies when ETags are missing or belong to another URL.
- Stage downloads and share a lock across Ruby and Bash to preserve
  cache bodies and validators on failed or concurrent downloads.
- Parse HTTP status with old curl and retry conditional receive errors.
- Preserve pending ETag writes when cached reads skip downloads.
- Recheck curl support instead of trusting an inherited flag.
2026-10-17 13:21:00 +01:00
Mike McQuaid 23e9163177 Merge pull request #24279 from Homebrew/audit_style_check
audit: require livecheck for new packages
2026-10-17 12:11:07 +00:00
Mike McQuaid 810b4d62e5 Merge pull request #24272 from Homebrew/sandbox-disclaim-responsibility
Disclaim sandbox TCC responsibility when available
2026-10-17 12:10:46 +00:00
Mike McQuaid 08e9f17c6f Merge pull request #24194 from Homebrew/merge_zap_uninstall
cask: merge uninstall and zap directives into one pass
2026-10-17 12:08:05 +00:00
Mike McQuaid aac1fb890f Merge pull request #24276 from Homebrew/fix_edgecase
shared_audits: parse whois dates with spaces
2026-10-17 08:28:20 +00:00
Mike McQuaid 433c0adc56 Merge pull request #24277 from Homebrew/audit_cask_formula
audit: flag self-submissions by commit email
2026-10-17 08:27:15 +00:00
Mike McQuaid b5ba282db5 Merge pull request #24275 from BrandenXia/curl-local-write-errors
curl: stop retrying local download write failures
2026-10-17 08:26:17 +00:00
Mike McQuaid 1ecf913242 Disclaim sandbox TCC responsibility when available
- macOS TCC can attribute a command-line child's protected-resource
  accesses to the application responsible for launching it. A terminal
  with Full Disk Access can therefore lend that access to package code
  run by Homebrew. Seatbelt restrictions and TCC attribution are
  separate controls, so disclaim responsibility to reduce the authority
  inherited by workers even where the sandbox permits a file read.
- Apply this at the shared macOS `sandbox_command` boundary because
  build scripts, tests and archive-processing tools can access protected
  data too. Limiting it to starting or restarting `.app` bundles would
  miss those workers. Cover sandboxed formula and cask operations and
  document the shared protection in the supply-chain security guide.
- Use `responsibility_spawnattrs_setdisclaim`, a private `libSystem`
  API, to set responsibility on the spawn attributes. No documented
  public equivalent is known for arbitrary command-line workers.
  Public Launch Services app launching is not a drop-in replacement for
  Homebrew's synchronous workers and their inherited descriptors.
  LLDB and Chromium use the same private call, but Apple provides no
  public compatibility contract for it and may change or remove it.
- Resolve the private symbol dynamically through Ruby's `Fiddle` so
  its absence can be handled at runtime without a compiled helper or
  private SDK headers. Use public `posix_spawn` APIs for the remaining
  setup and Darwin's `POSIX_SPAWN_SETEXEC` to replace the launcher.
  Because `posix_spawn` only returns on failure with this flag, always
  raise the returned native error.
  Keeping its PID preserves signal forwarding and timeout handling;
  retaining descriptors preserves terminal and captured output paths.
  Pass arguments and the environment directly without shell parsing.
- Treat disclaiming as an additional, optional protection. If the
  symbol is missing or the private call rejects the request, warn and
  execute the same `sandbox-exec` command with the same profile. This
  preserves existing sandbox restrictions without making Homebrew
  unusable when a private API changes, although the launching app's
  privacy permissions may then apply. Fail on native setup or spawn
  errors rather than concealing failures unrelated to the private API.
- Disclaiming does not revoke privacy grants made directly to a worker
  executable. Vendor installers that run outside Homebrew's sandbox
  are outside this boundary. Symbol detection and return-code checks
  also cannot detect future changes to the private API's semantics.
- Require self-responsibility only when no fallback warning was emitted.
  An inherited responsible PID is valid when disclaiming is unavailable.
  Keep PID preservation mandatory and exercise the real fallback through
  both interactive and captured launch paths so optional API support
  does not become a requirement of the test suite.
- Cover the fallback paths, argument handling and native failures in
  unit tests. Native checks use the separate private query
  `responsibility_get_pid_responsible_for_pid` to inspect responsibility
  and verify PID preservation; that query is only a test dependency.
  These checks do not prove actual TCC access decisions: validating
  protected-file access from a terminal with Full Disk Access remains
  necessary outside the enclosing development sandbox.
2026-10-16 22:14:56 +01:00
Mike McQuaid 58f26c3c3f Add vulnerability-aware package management
- Select vulnerable outdated formulae through the existing scanner.
- Report scan coverage and installed SBOM file locations in JSON.
- Clarify user-switching commands for administrative scripts.
2026-10-16 21:16:23 +01:00
Mike McQuaid 19fe946b9a Merge pull request #24271 from HaraldNordgren/info-headline-pkg-version
info: show revision in headline upgrade version
2026-10-16 08:58:00 +00:00
Mike McQuaid 2d6aa6a0e7 Merge pull request #24269 from Homebrew/dependabot/bundler/Library/Homebrew/bundler-be8fd1c9c2
build(deps): bump the bundler group across 2 directories with 9 updates
2026-10-16 08:37:45 +00:00
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
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
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