35302 Commits

Author SHA1 Message Date
Mike McQuaid
a1e4e9eaf7
bundle/commands/exec: make environment variables more consistent.
Let's avoid having `exec` and `env`/`sh` subcommands have different
environment variables logic. Instead, let's e.g. add `HOMEBREW_PATH`
and remove `*/Homebrew/shims/*` from the `PATH` for all three
subcommands.

This allows more consistency for users and easier to debug and reason
about behaviour.
2025-04-25 11:53:23 +01:00
Mike McQuaid
5f29ab8c89
docs/Brew-Bundle-and-Brewfile: improve docs.
The `brew bundle` documentation isn't great at explaining what the tool
is and why you should care. Let's improve that.
2025-04-25 10:59:32 +01:00
dependabot[bot]
e7199b3c43
build(deps): bump setuptools in /Library/Homebrew/formula-analytics
Bumps [setuptools](https://github.com/pypa/setuptools) from 79.0.0 to 79.0.1.
- [Release notes](https://github.com/pypa/setuptools/releases)
- [Changelog](https://github.com/pypa/setuptools/blob/main/NEWS.rst)
- [Commits](https://github.com/pypa/setuptools/compare/v79.0.0...v79.0.1)

---
updated-dependencies:
- dependency-name: setuptools
  dependency-version: 79.0.1
  dependency-type: indirect
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-24 18:39:18 +00:00
Bo Anderson
9ae847dcae
formula_installer: always output errors with fixing linkage 2025-04-24 17:20:35 +01:00
Carlo Cabrera
cecbb4350e
Merge pull request #19818 from Homebrew/fix-trash
cask/artifact/abstract_uninstall: fix `trash_paths`
2025-04-24 10:17:55 +00:00
Carlo Cabrera
f816a39d1f
cask/artifact/abstract_uninstall: fix trash_paths
This is currently behaving incorrectly when calling `trash.swift` fails
due to lack of permissions. In this instance, `trash.swift` prints

    error: permissionDenied

to stdout, and this is incorrectly parsed as having successfully trashed
a file named `error` and another named ` permissionDenied`.

Let's fix this by ensuring that:
- any paths in `trashed` are in the `paths` that we wanted to trash in
  the first place
- define `untrashable` by removing the `trashed` paths from `paths`
2025-04-24 18:03:07 +08:00
Carlo Cabrera
08d5ca0d01
brew style --fix 2025-04-24 16:34:36 +08:00
Carlo Cabrera
f3c25498f8
bundle/commands/exec: check that Brewfile is installed with --check
`brew bundle exec` behaves correctly only after doing `brew bundle install`.

Running `brew bundle check` can be slow, so let's add a `--check` flag
to `brew bundle exec` which will also run `brew bundle check` before
`brew bundle exec` to ensure that the `Brewfile` has been installed
before proceeding.
2025-04-24 16:34:23 +08:00
BrewTestBot
47c6fb048f
brew vendor-gems: commit updates. 2025-04-24 00:12:35 +00:00
dependabot[bot]
84934d7847
build(deps): bump the sorbet group in /Library/Homebrew with 4 updates
Bumps the sorbet group in /Library/Homebrew with 4 updates: [sorbet-static-and-runtime](https://github.com/sorbet/sorbet), [sorbet-runtime](https://github.com/sorbet/sorbet), [sorbet](https://github.com/sorbet/sorbet) and [sorbet-static](https://github.com/sorbet/sorbet).


Updates `sorbet-static-and-runtime` from 0.5.12028 to 0.5.12032
- [Release notes](https://github.com/sorbet/sorbet/releases)
- [Commits](https://github.com/sorbet/sorbet/commits)

Updates `sorbet-runtime` from 0.5.12028 to 0.5.12032
- [Release notes](https://github.com/sorbet/sorbet/releases)
- [Commits](https://github.com/sorbet/sorbet/commits)

Updates `sorbet` from 0.5.12028 to 0.5.12032
- [Release notes](https://github.com/sorbet/sorbet/releases)
- [Commits](https://github.com/sorbet/sorbet/commits)

Updates `sorbet-static` from 0.5.12028 to 0.5.12032
- [Release notes](https://github.com/sorbet/sorbet/releases)
- [Commits](https://github.com/sorbet/sorbet/commits)

---
updated-dependencies:
- dependency-name: sorbet-static-and-runtime
  dependency-version: 0.5.12032
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: sorbet
- dependency-name: sorbet-runtime
  dependency-version: 0.5.12032
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: sorbet
- dependency-name: sorbet
  dependency-version: 0.5.12032
  dependency-type: indirect
  update-type: version-update:semver-patch
  dependency-group: sorbet
- dependency-name: sorbet-static
  dependency-version: 0.5.12032
  dependency-type: indirect
  update-type: version-update:semver-patch
  dependency-group: sorbet
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-24 00:10:25 +00:00
Mike McQuaid
b97c763d91
Merge pull request #19814 from Homebrew/bundle_services
Add `HOMEBREW_BUNDLE_SERVICES` variable to `brew bundle`
2025-04-23 16:30:00 +00:00
Mike McQuaid
60c047b5ea
Add HOMEBREW_BUNDLE_SERVICES variable to brew bundle
This allows another way to pass `--services` to `brew bundle`.
2025-04-23 17:20:14 +01:00
Sam Ford
4917fb2c93
Cask::DSL: Remove duplicate token definition
I inadvertently duplicated the `@token` instance variable definition
in `Cask::DSL#initiailize`, so this removes the duplicate. This
didn't have any noticeable effect because it was redefined afterward,
so this is just a bit of tidying up.
2025-04-23 09:37:05 -04:00
Sam Ford
c0f23acdcd
Cask::Auditor: update language_blocks condition
I recently modified `Cask::DSL` to define instance variables in the
`#initialize` method and this involved some changes to the `language`,
`language_eval`, and `languages` methods. One of those was to
initialize `@language_blocks` to an empty hash instead of using a
`nil` default. I updated the related condition in the `language_eval`
method but I missed that `language_blocks` is used in `Cask::Auditor`
and it specifically relies on a false-y value to check if the variable
is set. An empty hash isn't false-y, so this is causing issues for
`brew audit`.

This updates the condition in `Cask::Auditor` to check for a non-empty
hash instead, which resolves the issue.
2025-04-23 09:19:41 -04:00
Bevan Kay
8db1a1f639
Merge pull request #19805 from botantony/zsh-completions-fix
fix: prevent Zsh crashes related to autocompletion
2025-04-23 10:35:41 +00:00
Francois-Xavier Coudert
10095f5cac compilers: add gcc-15 2025-04-23 10:09:45 +02:00
Mike McQuaid
141414a3c3
Merge pull request #19807 from Homebrew/downloadable-fixes
Cleanup Downloadable variables and types
2025-04-23 07:24:19 +00:00
Mike McQuaid
aeee3637e5
Merge pull request #19808 from Homebrew/cask-dsl-initialize-instance-variables-2
Cask::DSL: initialize more instance variables
2025-04-23 07:23:38 +00:00
Bevan Kay
b255a670c0
bump-formula-pr: restore pr message 2025-04-23 14:45:15 +10:00
Sam Ford
6f511ee4e2
Cask::DSL: initialize more instance variables
I recently updated `Cask::DSL` to define instance variables in
`#initialize` to get us closer to resolving a "shape variation"
warning from Ruby. The reason why we continued to receive this warning
after the previous changes is because I overlooked the variables that
are set using `set_unique_stanza`.

The tricky part about those instance variables is that we need to be
able to identify if they've been set. I've handled this by using a
`nil` initial value and updating the `instance_variable_defined?`
condition to check for a non-`nil` value instead. This works for these
variables but it would be a problem if we ever have a DSL method that
accepts a `nil` argument.
2025-04-22 23:21:05 -04:00
Bo Anderson
35f874c036
Cleanup Downloadable variables and types 2025-04-23 03:30:15 +01:00
Sam Ford
5b5c460ab9
Cask::DSL: define instance variables in initialize
We're now seeing warnings related to the cask DSL surfaced by Ruby
3.4:

```
/opt/homebrew/Library/Homebrew/cask/dsl.rb:456: warning: The class
Cask::DSL reached 8 shape variations, instance variables accesses
will be slower and memory usage increased.
It is recommended to define instance variables in a consistent order,
for instance by eagerly defining them all in the #initialize method.
```

I've been working on upgrading `Cask::DSL` to `typed: strict` and
part of that involves defining all of the instance variables in the
`initialize` method, so I've extracted this part of that work as a
way of helping to resolve the aforementioned warning. This doesn't
fully resolve the warning but it addresses what it was originally
referencing, at least.

For what it's worth, this includes some type fixes but I've only
included what's necessary to pass `brew typecheck`.
2025-04-22 18:12:33 -04:00
Sam Ford
c495aa3e63
Cask::DSL::DependsOn: add empty?, present? methods
`#present?` is called on a `DependsOn` object in `Cask::DSL` and this
is seemingly deferred to the underlying hash object but Sorbet doesn't
understand this kind of `SimpleDelegator` magic. This adds `empty?`
and `present?` methods that explicitly interact with the hash in a
way that Sorbet can understand.
2025-04-22 18:07:09 -04:00
botantony
2a03f2059c
completions: fix tests
Signed-off-by: botantony <antonsm21@gmail.com>
2025-04-22 22:31:45 +02:00
botantony
d15461608f
fix: prevent Zsh crashes related to autocompletion
Signed-off-by: botantony <antonsm21@gmail.com>
2025-04-22 22:02:38 +02:00
Patrick Linnane
2f67c29db6
Exclude parser again
Signed-off-by: Patrick Linnane <patrick@linnane.io>
2025-04-22 13:00:19 -07:00
BrewTestBot
aed2a35362
Update RBI files for sorbet.
Autogenerated by the [vendor-gems](https://github.com/Homebrew/brew/blob/HEAD/.github/workflows/vendor-gems.yml) workflow.
2025-04-22 19:24:40 +00:00
BrewTestBot
9dec0f5a8a
brew vendor-gems: commit updates. 2025-04-22 19:24:35 +00:00
dependabot[bot]
4ff6d1e94e
build(deps): bump the sorbet group in /Library/Homebrew with 4 updates
Bumps the sorbet group in /Library/Homebrew with 4 updates: [sorbet-static-and-runtime](https://github.com/sorbet/sorbet), [sorbet-runtime](https://github.com/sorbet/sorbet), [sorbet](https://github.com/sorbet/sorbet) and [sorbet-static](https://github.com/sorbet/sorbet).


Updates `sorbet-static-and-runtime` from 0.5.12026 to 0.5.12028
- [Release notes](https://github.com/sorbet/sorbet/releases)
- [Commits](https://github.com/sorbet/sorbet/commits)

Updates `sorbet-runtime` from 0.5.12026 to 0.5.12028
- [Release notes](https://github.com/sorbet/sorbet/releases)
- [Commits](https://github.com/sorbet/sorbet/commits)

Updates `sorbet` from 0.5.12026 to 0.5.12028
- [Release notes](https://github.com/sorbet/sorbet/releases)
- [Commits](https://github.com/sorbet/sorbet/commits)

Updates `sorbet-static` from 0.5.12026 to 0.5.12028
- [Release notes](https://github.com/sorbet/sorbet/releases)
- [Commits](https://github.com/sorbet/sorbet/commits)

---
updated-dependencies:
- dependency-name: sorbet-static-and-runtime
  dependency-version: 0.5.12028
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: sorbet
- dependency-name: sorbet-runtime
  dependency-version: 0.5.12028
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: sorbet
- dependency-name: sorbet
  dependency-version: 0.5.12028
  dependency-type: indirect
  update-type: version-update:semver-patch
  dependency-group: sorbet
- dependency-name: sorbet-static
  dependency-version: 0.5.12028
  dependency-type: indirect
  update-type: version-update:semver-patch
  dependency-group: sorbet
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-22 19:20:59 +00:00
Patrick Linnane
5d8d453a90
Portable Ruby 3.4.3 2025-04-22 11:50:08 -07:00
Mike McQuaid
c9a7b62b1d
Homebrew 4.5 deprecations/disables/removals
The usual cycle of deprecating, disabling, and removing things in
Homebrew major/minor releases.
2025-04-22 17:15:23 +01:00
Bevan Kay
de8c088d15
fix opening PR from fork 2025-04-22 22:03:49 +10:00
Bevan Kay
2b132c0802
dev-cmd/bump-formula-pr: fix reference 2025-04-22 22:03:18 +10:00
Bevan Kay
c5a3879fdb
bump: bump synced formula together 2025-04-22 22:03:06 +10:00
Mike McQuaid
7873f0200f
Revert "bump: bump synced formula together" 2025-04-22 12:33:59 +01:00
Mike McQuaid
c45a734293
Merge pull request #19213 from bevanjkay/bump-synced-versions
bump: bump synced formula together
2025-04-22 10:02:12 +00:00
Mike McQuaid
444a520836
Merge pull request #19578 from botantony/replacement-type
deprecate!/disable!: allow to specify replacement type
2025-04-22 08:12:52 +00:00
Patrick Linnane
bc6a5d2844
Merge pull request #19791 from Homebrew/dependabot/pip/Library/Homebrew/formula-analytics/setuptools-79.0.0
build(deps): bump setuptools from 78.1.0 to 79.0.0 in /Library/Homebrew/formula-analytics
2025-04-22 04:12:30 +00:00
botantony
4fa1355be0 deprecate!/disable!: remove non-typed replacement field
Signed-off-by: botantony <antonsm21@gmail.com>
Co-authored-by: Mike McQuaid <mike@mikemcquaid.com>
2025-04-21 21:13:25 +02:00
botantony
ca447e1ce9 deprecate!/disable!: replacement_formula/replacement_cask fields
Signed-off-by: botantony <antonsm21@gmail.com>
2025-04-21 21:13:25 +02:00
botantony
e594e7e0bb deprecate!/disable!: allow to specify replacement type
Signed-off-by: botantony <antonsm21@gmail.com>
2025-04-21 21:13:25 +02:00
BrewTestBot
8d88ba3d1a
brew vendor-gems: commit updates. 2025-04-21 18:45:14 +00:00
dependabot[bot]
afbe1d86e1
build(deps): bump the sorbet group in /Library/Homebrew with 4 updates
Bumps the sorbet group in /Library/Homebrew with 4 updates: [sorbet-static-and-runtime](https://github.com/sorbet/sorbet), [sorbet-runtime](https://github.com/sorbet/sorbet), [sorbet](https://github.com/sorbet/sorbet) and [sorbet-static](https://github.com/sorbet/sorbet).


Updates `sorbet-static-and-runtime` from 0.5.12024 to 0.5.12026
- [Release notes](https://github.com/sorbet/sorbet/releases)
- [Commits](https://github.com/sorbet/sorbet/commits)

Updates `sorbet-runtime` from 0.5.12024 to 0.5.12026
- [Release notes](https://github.com/sorbet/sorbet/releases)
- [Commits](https://github.com/sorbet/sorbet/commits)

Updates `sorbet` from 0.5.12024 to 0.5.12026
- [Release notes](https://github.com/sorbet/sorbet/releases)
- [Commits](https://github.com/sorbet/sorbet/commits)

Updates `sorbet-static` from 0.5.12024 to 0.5.12026
- [Release notes](https://github.com/sorbet/sorbet/releases)
- [Commits](https://github.com/sorbet/sorbet/commits)

---
updated-dependencies:
- dependency-name: sorbet-static-and-runtime
  dependency-version: 0.5.12026
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: sorbet
- dependency-name: sorbet-runtime
  dependency-version: 0.5.12026
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: sorbet
- dependency-name: sorbet
  dependency-version: 0.5.12026
  dependency-type: indirect
  update-type: version-update:semver-patch
  dependency-group: sorbet
- dependency-name: sorbet-static
  dependency-version: 0.5.12026
  dependency-type: indirect
  update-type: version-update:semver-patch
  dependency-group: sorbet
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-21 18:31:22 +00:00
dependabot[bot]
9de4ca27df
build(deps): bump setuptools in /Library/Homebrew/formula-analytics
Bumps [setuptools](https://github.com/pypa/setuptools) from 78.1.0 to 79.0.0.
- [Release notes](https://github.com/pypa/setuptools/releases)
- [Changelog](https://github.com/pypa/setuptools/blob/main/NEWS.rst)
- [Commits](https://github.com/pypa/setuptools/compare/v78.1.0...v79.0.0)

---
updated-dependencies:
- dependency-name: setuptools
  dependency-version: 79.0.0
  dependency-type: indirect
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-21 18:29:39 +00:00
Patrick Linnane
e8f7d02e37
Disable RSpec/IncludeExamples
Signed-off-by: Patrick Linnane <patrick@linnane.io>
2025-04-18 19:54:16 -07:00
BrewTestBot
a505b67b91
Update RBI files for rubocop-rspec.
Autogenerated by the [vendor-gems](https://github.com/Homebrew/brew/blob/HEAD/.github/workflows/vendor-gems.yml) workflow.
2025-04-18 18:53:39 -07:00
BrewTestBot
49cc9bc17b
brew vendor-gems: commit updates. 2025-04-18 18:53:39 -07:00
dependabot[bot]
9cf387c1ee
build(deps-dev): bump rubocop-rspec in /Library/Homebrew
Bumps [rubocop-rspec](https://github.com/rubocop/rubocop-rspec) from 3.5.0 to 3.6.0.
- [Release notes](https://github.com/rubocop/rubocop-rspec/releases)
- [Changelog](https://github.com/rubocop/rubocop-rspec/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop-rspec/compare/v3.5.0...v3.6.0)

---
updated-dependencies:
- dependency-name: rubocop-rspec
  dependency-version: 3.6.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-18 18:53:37 -07:00
Patrick Linnane
2f0c160739
Merge pull request #19787 from Homebrew/dependabot/bundler/Library/Homebrew/sorbet-185e0b1891
build(deps): bump the sorbet group in /Library/Homebrew with 4 updates
2025-04-18 21:38:43 +00:00
BrewTestBot
fb64b796b0
brew vendor-gems: commit updates. 2025-04-18 21:28:31 +00:00