379 Commits

Author SHA1 Message Date
Mike McQuaid
222fe8ef0b
Homebrew 4.3.0 deprecation/disable/removals.
The usual pass of deprecating/disabling/removing code for the next
minor Homebrew release.
2024-05-07 12:18:04 +01:00
apainintheneck
56ecd42ebd dev-cmd/tests: skip tests that require core if it's not tapped
There were a few tests which require core to be tapped and fail
if it isn't. This is annoying if someone is trying to contribute
to the project and they're using the JSON API instead of having
the core repo tapped locally.

I'm just skipping these because it's the simplest thing to do.
The tests that failed are mostly rubocop tests so it's fine
if they only run on CI.
2024-05-03 00:32:50 -07:00
Mike McQuaid
4ffcd8a110
Various improvements for brew command
- Add a (large) speedup by moving some logic to Bash for the typical
  case of a normal or dev-cmd, Bash or Ruby command.
- Make `brew command` a non-developer command, I don't think it makes
  sense to consider it something needed for developing Homebrew.
- Update the manpage/tests/RBI accordingly.

Co-authored-by: Carlo Cabrera <30379873+carlocab@users.noreply.github.com>
2024-04-30 11:38:19 +01:00
Issy Long
69c31d275f
Only brew desc --search needs --eval-all
- It was suggested in https://github.com/Homebrew/brew/issues/ 16733 that
  `brew desc <formula_or_cask>` should work like `brew info <formula_or_cask>`
  and print the description of the package without needing `--eval-all`.
- Looking at the code, it seems like it's only searching that needs
  `--eval-all`, so limit the check to that.

Before:

```shell
$ brew desc hello
Error: `brew desc` needs `--eval-all` passed or `HOMEBREW_EVAL_ALL` set!
```

After:

```shell
$ brew desc hello
hello: Program providing model for GNU coding standards and practices

$ brew desc --search hello
Error: Invalid usage: `brew desc --search` needs `--eval-all` passed or `HOMEBREW_EVAL_ALL` set!

$ brew desc --search --eval-all hello
==> Formulae
dsh: Dancer's shell, or distributed shell
hello: Program providing model for GNU coding standards and practices
```
2024-04-17 23:54:45 +01:00
Kevin
044e48b816
Merge pull request #17012 from Homebrew/move-untap-module-into-cmd
cmd/untap: move module methods back into the cmd
2024-04-03 22:16:13 -07:00
apainintheneck
2d47193d22 cmd/untap: move module methods back into the cmd
The extra module was their to facilitate testing but now that
everything is properly namespaced and each command is an instance
we can just move the methods into the command. Since it's an
instance now we don't need to be as careful about caching either.
2024-04-03 22:06:19 -07:00
Douglas Eichelberger
f664433b5c Enable RSpec/DescribeClass 2024-04-03 09:12:47 -07:00
Douglas Eichelberger
8ebcadd1c9 Clean up args_parse tests 2024-04-02 12:19:14 -07:00
Douglas Eichelberger
3f856f6516 Port Homebrew::Cmd::Repository 2024-04-01 16:02:41 -07:00
Douglas Eichelberger
6a1d43337c Port Homebrew::Cmd::Prefix 2024-04-01 16:00:47 -07:00
Douglas Eichelberger
b56e0b733d Port Homebrew::Cmd::Env 2024-04-01 15:58:07 -07:00
Douglas Eichelberger
754151fcb8 Port Homebrew::Cmd::Cellar 2024-04-01 15:56:06 -07:00
Douglas Eichelberger
102051c35d Port Homebrew::Cmd::Caskroom 2024-04-01 15:54:03 -07:00
Douglas Eichelberger
7bbf0a3206 Port Homebrew::Cmd::Cache 2024-04-01 15:53:56 -07:00
Douglas Eichelberger
fdc95d02c8 Port Homebrew::Cmd::Uses 2024-04-01 12:01:37 -07:00
Douglas Eichelberger
1362890f2a Port Homebrew::Cmd::Upgrade 2024-04-01 11:58:35 -07:00
Douglas Eichelberger
d5add6565c Port Homebrew::Cmd::UpdateReport 2024-04-01 11:58:20 -07:00
Douglas Eichelberger
48f4adad33 Port Homebrew::Cmd::Untap 2024-04-01 11:50:25 -07:00
Douglas Eichelberger
f8caae06f7 Port Homebrew::Cmd::Unpin 2024-04-01 11:48:40 -07:00
Douglas Eichelberger
5ccb0b0567 Port Homebrew::Cmd::Unlink 2024-04-01 11:47:18 -07:00
Douglas Eichelberger
4cf9ef831a Port Homebrew::Cmd::Uninstall 2024-04-01 11:46:01 -07:00
Douglas Eichelberger
841cfd9fdc Port Homebrew::Cmd::Tap 2024-04-01 11:43:52 -07:00
Douglas Eichelberger
be42d46d49 Port Homebrew::Cmd::TapInfo 2024-04-01 10:15:28 -07:00
Douglas Eichelberger
5495ff1eea Port Homebrew::Cmd::Search 2024-04-01 10:12:52 -07:00
Douglas Eichelberger
d875c970e9 Port Homebrew::Cmd::Reinstall 2024-04-01 10:09:48 -07:00
Douglas Eichelberger
057f561d2c Port Homebrew::Cmd::Readall 2024-04-01 10:05:02 -07:00
Douglas Eichelberger
5ef070380c Port Homebrew::Cmd::RbenvSync 2024-04-01 10:04:06 -07:00
Douglas Eichelberger
6c260db277 Port Homebrew::Cmd::PyenvSync 2024-04-01 10:01:54 -07:00
Douglas Eichelberger
427b527335 Port Homebrew::Cmd::Postinstall 2024-04-01 09:59:47 -07:00
Douglas Eichelberger
31aa89aa7c Port Homebrew::Cmd::PostgresqlUpgradeDatabase 2024-04-01 09:48:23 -07:00
Douglas Eichelberger
c1b1c11a8c Port Homebrew::Cmd::Pin 2024-04-01 09:44:14 -07:00
Douglas Eichelberger
7725fc62d4 Port Homebrew::Cmd::Outdated 2024-04-01 09:42:31 -07:00
Douglas Eichelberger
57442ab67e Port Homebrew::Cmd::Options 2024-04-01 09:15:58 -07:00
Douglas Eichelberger
c5dfac1f2c Port Homebrew::Cmd::NodenvSync 2024-04-01 09:15:58 -07:00
Douglas Eichelberger
a43224cb4a Port Homebrew::Cmd::Missing 2024-04-01 09:15:58 -07:00
Douglas Eichelberger
0cb608a80c Port Homebrew::Cmd::Migrate 2024-04-01 09:15:58 -07:00
Douglas Eichelberger
59adde2069 Port Homebrew::Cmd::Log 2024-04-01 09:15:58 -07:00
Mike McQuaid
5e5aee4a1d
Merge remote-tracking branch 'origin/master' into no-tty
# Conflicts:
#	Library/Homebrew/test/cmd/deps_spec.rb
#	Library/Homebrew/test/cmd/info_spec.rb
2024-03-31 19:31:40 +01:00
Mike McQuaid
21dd3c263f
Merge pull request #16975 from Homebrew/ported-cmds
Begin porting non-dev commands to use AbstractCommand
2024-03-31 19:28:30 +01:00
Douglas Eichelberger
914e53e9d5 Move isolated matchers into the specs that uses them 2024-03-30 20:24:06 -07:00
Douglas Eichelberger
fde7d380f7 Don't include FileUtils everywhere 2024-03-30 19:10:56 -07:00
Douglas Eichelberger
22bfd9b230 Port Homebrew::Cmd::Link 2024-03-30 16:24:11 -07:00
Douglas Eichelberger
8ab9d2cbad Port Homebrew::Cmd::Leaves 2024-03-30 16:16:52 -07:00
Douglas Eichelberger
0fd082a1ff Port Homebrew::Cmd::InstallCmd 2024-03-30 09:36:47 -07:00
Ryan Rotter
d856d88c17 tap-info cmd: skip untapped core taps
When homebrew/core or homebrew/cask are untapped `brew tap-info` fails because
Tap.each includes them and tap.private? fails without a git repo interrogate.

This restores the behavior of `brew tap-info` before #16710
2024-03-30 01:41:31 -04:00
Douglas Eichelberger
d6a6742a4d Port Homebrew::Cmd::Info 2024-03-29 18:54:12 -07:00
Douglas Eichelberger
74218c0483 Port Homebrew::Cmd::Home 2024-03-29 18:53:08 -07:00
Douglas Eichelberger
d0c1af4f9e Port Homebrew::Cmd::Help 2024-03-29 18:53:08 -07:00
Douglas Eichelberger
78b259c8c6 Port Homebrew::Cmd::GistLogs 2024-03-29 18:53:08 -07:00
Douglas Eichelberger
90cd9d2e0a Port Homebrew::Cmd::FetchCmd 2024-03-29 18:53:08 -07:00