31 Commits

Author SHA1 Message Date
Bo Anderson
376440cf3e
Dynamically find gem groups 2023-04-10 16:54:48 +01:00
Bo Anderson
b84bed7385
Revert "Revert "Split prof gems into their own group""
This reverts commit 7b336ed8cd3eb20461fdc45ce67e5318e53920c4.
2023-04-10 16:54:48 +01:00
Douglas Eichelberger
c5ffec1a11 Enable types in dev-cmd, etc. 2023-04-04 22:23:46 -07:00
Mike McQuaid
7b336ed8cd
Revert "Split prof gems into their own group" 2023-04-04 08:49:27 +01:00
Bo Anderson
8bafbcd65a
Split prof gems into their own group 2023-03-31 13:32:38 +01:00
EricFromCanada
dfc9906184
internal messaging fixes 2023-02-10 23:17:16 -05:00
Bo Anderson
142734aec9
dev-cmd/vendor-gems: set SDKROOT for older macOS 2023-01-24 13:24:31 +00:00
Bo Anderson
6858e215dd
dev-cmd/vendor-gems: add --no-commit switch 2022-10-14 01:30:37 +01:00
hyuraku
07b031ac4e remove useless require 'formula' 2021-10-05 22:02:54 +09:00
Bo Anderson
a06d136d2c
Move Sorbet gems into an optional group 2021-06-11 08:10:30 +01:00
Mike McQuaid
c4d69dd2e9
Revert "fix(vendor-gems): redirect bundler stdout to stderr" 2021-06-07 14:51:07 +01:00
Gibson Fahnestock
07d571bebc
fix(vendor-gems): redirect bundler stdout to stderr
When running brew commands and interpreting the output, e.g. running
`brew livecheck --json`, it's necessary to stop other programs Homebrew
happens to execute from writing logging output to stdout. Most programs
don't do this, but `bundle install` does seem to.

To reproduce the issue you can run:

```shell
git -C "$(brew --prefix)" clean -ffdx Library/Homebrew/vendor
stdout=$(HOMEBREW_FORCE_VENDOR_RUBY=1 brew livecheck --newer-only --json --cask $(brew --repo homebrew/cask)/Casks/grid.rb)
echo "^^^ was stderr, >>> is stdout: $stdout"
```

If you run it without this change it will print a bunch of output like
this to the stdout before printing out the livecheck JSON output:

```text
Using bundler 1.17.3
Fetching byebug 11.1.3
Fetching coderay 1.1.3
Installing byebug 11.1.3 with native extensions
Installing coderay 1.1.3
Fetching colorize 0.8.1
Installing colorize 0.8.1

[
  # Contents of the JSON block.
]
```

With this change the stdout from `bundle install` will be redirected to
brew's stderr, meaning only the JSON goes to stdout, and the rest goes
to stderr.
2021-06-03 11:18:23 +01:00
Rylan Polster
d1f3e39b7b
Update commands to generate usage banner 2021-01-18 21:20:11 -05:00
Rylan Polster
da811373d3 Add named_args DSL for commands 2021-01-13 17:09:42 -05:00
Markus Reiter
49b95da14b Update sorbet and sorbet-runtime together. 2020-11-21 04:14:41 +01:00
Markus Reiter
aa6a8e5c13 Add --update option to brew vendor-gems. 2020-11-19 10:11:19 +01:00
Markus Reiter
da9289eff0 Add more type signatures. 2020-11-13 12:26:36 +01:00
Mike McQuaid
4f3c590873
Unify and use Git username/email/GPG handling.
We're using essentially the same logic to setup Git for committing in
multiple places but the way we're doing so is inconsistent. Moved to
using two shared utility methods and use them consistently.
2020-11-02 12:21:18 +00:00
Markus Reiter
24ae318a3d Move type annotations into files. 2020-10-10 14:59:39 +02:00
Markus Reiter
d4c2ffd705 Refactor CLI::Parser. 2020-07-31 15:07:17 +02:00
EricFromCanada
aea6d79d21 option parser: check for extra named args 2019-12-15 00:04:45 -05:00
Mike McQuaid
5dd8ead51a
Rename Formula#installed? to Formula#latest_version_installed?
This naming has always been a bit weird and confusing so let's change
it and provide a `compat` fallback for later deprecation.
2019-12-03 11:42:42 +00:00
Mike McQuaid
36dbad3922
Add frozen_string_literal to all files. 2019-04-20 13:27:36 +09:00
Mike McQuaid
e40b171127
Rename cli_parser to cli/parser. 2019-04-17 22:16:50 +09:00
Mike McQuaid
1a102322c7
dev-cmd/vendor-gems: pristine after install. 2019-03-11 12:43:34 +00:00
Mike McQuaid
141db03193
vendor-gems: fix output location, also run pristine.
This means the output is consistent and ensures that we get rid of any local cruft when installing.
2019-03-05 08:34:33 +00:00
Mike McQuaid
6b326f4465
Move all gems to vendor/bundle, remove vendor/bundle-standlone. 2019-02-21 16:34:20 +00:00
Mike McQuaid
bbea109926
dev-cmd: remove --help headers and tweak docs. 2019-01-30 21:39:28 +00:00
Mike McQuaid
efc3c0c4c0
Use bundle install in more places.
This provides a more consistent version for `rubocop` than relying on
`Homebrew.install_gem_setup_path!` (and we really want `brew style` to
provide consistent output).
2019-01-08 15:08:21 +00:00
Mike McQuaid
5b7404a0d2
Install Bundler <2.
Newer versions require the systems RubyGems to be updated.
2019-01-03 16:43:56 +00:00
Mike McQuaid
390a7f5447
Add brew vendor-gems command.
This simplifies the process of vendoring gems given `Gemfile` or
`Gemfile.lock` changes.
2018-12-21 20:09:08 +00:00