5399 Commits

Author SHA1 Message Date
Mike McQuaid
66c11afa7c
Merge pull request #20175 from Homebrew/migrate_brew_cask_main
cmd/update: improve Homebrew/brew and homebrew-cask `main` migration.
2025-06-26 14:49:34 +00:00
Mike McQuaid
aa596d3e6b
cmd/update: improve homebrew-core main migration.
Let's avoid people sticking on the master branch unnecessarily.
2025-06-26 12:13:48 +01:00
Mike McQuaid
f649587d51
cmd/update: improve Homebrew/brew main migration.
Let's avoid people sticking on the `master` branch unnecessarily.
2025-06-26 12:11:11 +01:00
Mike McQuaid
b87d2887fe
Merge pull request #20033 from tyuwags/master
Refine ask‐option dependency resolution and strengthen tests
2025-06-26 10:52:46 +00:00
Patrick Linnane
f4491e0c8f
Merge pull request #20167 from Homebrew/update_report_display_descriptions
cmd/update-report: display descriptions for new formulae and casks.
2025-06-24 20:26:47 +00:00
Mike McQuaid
28753ef002
cmd/update-report: display descriptions for new formulae and casks.
This parses Homebrew's API JSON data to display descriptions for new
formulae and casks if available.

While we're here also add tests for ReporterHub.
2025-06-24 16:59:24 +01:00
Mike McQuaid
d661cffc1f
Switch to using main as the default branch
Homebrew/brew has moved to a `main` default branch so we can more move
references from `master` to `main`.
2025-06-24 11:14:57 +01:00
thibhero
6d0a77fc79 fixing method refactoring 2025-06-20 12:32:46 -04:00
thibhero
2fb6105f26 renaming variable 2025-06-20 12:29:02 -04:00
thibhero
19901b5332 refactoring style to resolve the last discussions 2025-06-18 16:05:19 -04:00
thibhero
fe06e04e28 refactoring install.rb and reinstall.rb after removing Formula.installed 2025-06-17 21:12:47 -04:00
Thibaut Hérault
27a040cc32
Merge branch 'master' into master 2025-06-17 20:49:18 -04:00
thibhero
971a8b40e6 refactoring as we can get dependants before installing 2025-06-17 19:21:17 -04:00
Rylan Polster
f71287c4a9
Fix type mismatch in brew info 2025-06-17 16:57:50 -04:00
Mike McQuaid
c4c66d41ef
cmd: set typed: strict 2025-06-17 16:33:16 +01:00
Mike McQuaid
6fb115d342
Merge pull request #20099 from Homebrew/more_update_main_changes
cmd/update*: more fixes to allow migration from `master` to `main`.
2025-06-13 16:25:56 +00:00
Mike McQuaid
08eae94955
cmd/update*: more fixes to allow migration from master to main.
We're not migrating Homebrew/brew to `main` yet but this will allow us
to ensure we have a `brew update` ready in future when we're ready to do
this.
2025-06-13 17:13:51 +01:00
Mike McQuaid
af997ea2ad
Hide main branches from brew tap-info and brew info
These are basically as "default" as `master` now so we can hide them.
2025-06-13 12:09:02 +01:00
Peter Wu
770335f72e Remove unused --force-auto-update option
Remove the `brew tap --force-auto-update` option and the
`force_auto_update` configuration file option from Homebrew Bundles.

Fixes #19856
2025-06-12 14:16:12 +02:00
thibhero
7e876e4681 resolving discussions 2025-06-11 22:35:00 -04:00
Mike McQuaid
dffa42839c
Merge branch 'master' into master 2025-06-11 13:24:46 +01:00
Mike McQuaid
837b28ba79
cmd/update: attempt migration from master to main branch.
This should allow any repositories that change from `master` to `main`
to be automatically migrated by `brew update` without requiring manual
intervention or displaying errors to the user.
2025-06-11 08:38:32 +01:00
Mike McQuaid
d2f9677cde
cmd/deps: add warning when not using runtime dependencies.
This should provide clarify as to why the output may differ from a
formula's declared dependencies.
2025-06-10 15:55:39 +01:00
Bo Anderson
57ed94c421
cmd/vendor-install: fix exit code handling for curl 2025-06-09 19:59:41 +01:00
thibhero
aa47105d2a refactoring code 2025-06-09 00:14:16 -04:00
thibhero
8222b192ec updating upgrade to work 2025-06-08 12:34:56 -04:00
thibhero
a5251b2fb6 refactoring install 2025-06-08 12:34:24 -04:00
thibhero
27f7f282be refactoring homebrew upgrade for ask option 2025-06-08 11:31:40 -04:00
Mike McQuaid
5fe43ed3f2
brew (bundle|) sh: use user's configuration but override prompts.
This was more painful that I expected but will allow `brew bundle sh`
and `brew sh` to use the user's configuration but use our custom prompt
for Bash and ZSH.
2025-06-05 15:43:34 +01:00
Mike McQuaid
e825ceea0a
Merge pull request #20041 from Homebrew/mcp_server
Add `brew mcp-server`: a MCP server for Homebrew.
2025-06-04 07:58:01 +00:00
Eric Knibbe
3dc9e88542
parser: show related env var in switch description 2025-06-03 13:57:42 -04:00
Mike McQuaid
f9471f9591
Add brew mcp-server: a MCP server for Homebrew.
Add a new `brew mcp-server` command for a Model Context Protocol (MCP)
server for Homebrew. This integrates with AI/LLM tools like Claude,
Claude Code and Cursor.

It currently supports the calls needed/used by the MCP Inspector and
Cursor (where I've tested it).

It provides as `tools` the subcommands output by `brew help` but should
be fairly straightforward to add more in future.

It is implemented in a slightly strange way (a standalone Ruby command
called from a shell command) as MCP servers need a faster startup time
than a normal Homebrew Ruby command allows and fail if they don't get
it.

There are a few Ruby libraries available but, given how relatively
simplistic the implementation is, it didn't feel worthwhile to use and
vendor them.
2025-06-03 15:22:33 +01:00
Bo Anderson
418a771d12
bundle: add support for selective cleanup 2025-05-23 06:19:01 +01:00
Eric Knibbe
28b1b74607
cmd/list: skip invalid Caskroom files 2025-05-15 11:48:36 -04:00
Bevan Kay
1c138a613b
cmd/upgrade: only ask about cask upgrade with --ask 2025-05-09 09:42:15 +10:00
Thibaut Hérault
3799c4b77d
Merge branch 'master' into master 2025-05-07 12:52:16 -04:00
thibhero
76e7a13332 applying brew tests, typecheck, style 2025-05-07 12:29:32 -04:00
thibhero
499a9b9dae changing to installed_formulae, as its checked if it should be installed 2025-05-07 12:08:46 -04:00
thibhero
f875dbc8a7 Implementing ask input with casks
renamed `ask` to `ask_formulae`
moving option `--ask` to work with formulae and casks
2025-05-07 12:07:29 -04:00
Patrick Linnane
c6a2fa335d
brew style --fix 2025-05-05 14:35:08 -07:00
thibhero
5013c17474 formatting correctly with brew style 2025-05-03 15:39:43 -04:00
thibhero
fd97539b9e Merge remote-tracking branch 'tyuwags/master' 2025-05-03 15:24:27 -04:00
thibhero
96ca8d2e07 displaying a warning if ask is used with casks 2025-05-03 15:23:42 -04:00
Bo Anderson
d3591482b2
cmd/services: change --max-wait default 2025-05-02 06:16:55 +01:00
thibhero
d19de85896 Setting HOMEBREW_ASK to nil in case it was set before 2025-04-30 23:50:07 -04:00
Mike McQuaid
0d86de5416
cmd/bundle: fix no_upgrade type.
If you set `HOMEBREW_BUNDLE_NO_UPGRADE=1`, `brew bundle check` will
output:

```
Error: Parameter 'no_upgrade': Expected type T::Boolean, got type String with value "1"
Caller: /opt/homebrew/Library/Homebrew/vendor/bundle/ruby/3.4.0/gems/sorbet-runtime-0.5.12039/lib/types/private/methods/call_validation.rb:227
Definition: /opt/homebrew/Library/Homebrew/bundle/commands/check.rb:14 (Homebrew::Bundle::Commands::Check.run)
```
2025-04-28 12:13:53 +01: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
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
Mike McQuaid
89d0309b9c
Add brew bundle --upgrade-formulae
This flag allows you to specify formulae to upgrade, even if
`$HOMEBREW_BUNDLE_NO_UPGRADE` is set.

This is useful for upgrading specific formulae without upgrading all
formulae.

While we're here, let's add Sorbet signatures to the `Bundle` module
because I needed to add a new method there anyway.
2025-04-02 17:15:36 +01:00