2482 Commits

Author SHA1 Message Date
Mike McQuaid
344d47accc
sponsors-maintainers-man-completions: various fixes.
- fix name
- use correct command
2022-09-08 12:19:13 +01:00
Mike McQuaid
bc295f7947
update-sponsors: don't require admin token.
Instead, use a different API to query these with a lower scope.

This should be usable by GitHub Actions.
2022-09-07 16:49:41 +01:00
Mike McQuaid
e2759fbdff
Deprecate reading all formulae through commands
We added the `--all` flag (now renamed to `--eval-all`) for various
commands for this behaviour so let's start deprecating this.

Also, introduce a `HOMEBREW_EVAL_ALL` environment variable to use the
existing, less secure, behaviour by default and avoid passing
`--eval-all` everywhere.
2022-09-05 13:57:22 +01:00
Mike McQuaid
552dc93242
Merge pull request #13802 from Rylan12/fix-bump-cask-pr
bump-cask-pr: cleanup handling of multiple hashes
2022-09-05 12:14:18 +01:00
Mike McQuaid
997fd648ce
Merge pull request #13788 from Homebrew/sponsors
Automate sponsors updates
2022-09-05 12:07:31 +01:00
Rylan Polster
092095a249
bump-cask-pr: cleanup handling of multiple hashes 2022-09-03 19:28:23 -04:00
Bo Anderson
04f6f53b58
dev-cmd/pr-pull: avoid expensive search API calls 2022-09-03 21:19:37 +01:00
Mike McQuaid
af6165aab7
Automate sponsors updates
- Add sponsors updating to the existing man/completion/maintainer update workflow
- Hide/deprecated --fail-if-not-changed arguments and make them default behaviour
- Rename man-completions workflow to sponsors-maintainers-man-completions for consistency
- Make output and exit codes more consistent between these updating commands
- Fix maintainers updates not always being committed correctly
2022-09-02 08:24:33 +01:00
Mike McQuaid
aa297cd8d1
Merge pull request #13743 from MikeMcQuaid/odisabled_remove
Remove odisabled for 3.6.0
2022-08-23 11:50:38 +01:00
Mike McQuaid
e7aa71de26
Remove odisabled for 3.6.0
The next release will be 3.6.0.
2022-08-23 11:25:02 +01:00
Bo Anderson
0593597a11
linkage_checker: don't reinstall formula on some linkage failures 2022-08-23 09:38:52 +01:00
Rylan Polster
1075bbd895
Fix multi-arch cask sha256 updates 2022-08-18 12:50:20 -04:00
Carlo Cabrera
a1c1bf73ec
dev-cmd/test: set RUST_BACKTRACE when retrying
Occasionally, a new version of Rust will cause failures in dependents.
See, for example, Homebrew/homebrew-core#107818.

This change will allow us to get a fuller backtrace in CI, which will
also make it easier to submit bug reports upstream.

Without this change, recovering a full backtrace requires installing the
new version of Rust and rebuilding the failing formula from source. Both
these steps can be skipped if we set `RUST_BACKTRACE` when retrying a
failing test.
2022-08-15 18:27:32 +08:00
Rylan Polster
8fb03838db
bump-cask-pr: fix sha256 replacement with arch 2022-08-11 23:59:20 -04:00
Mike McQuaid
5ac30ed2ef
Merge pull request #13684 from MikeMcQuaid/rubocop_cmd_fixes
dev-cmd/rubocop: use bundle check.
2022-08-11 16:41:57 +01:00
Mike McQuaid
74a8e5bb23
dev-cmd/rubocop: use bundle check.
It's not reliable enough to just check for the binary.
2022-08-11 10:57:19 +01:00
Mike McQuaid
6b697470fd
brew style --fix
For https://github.com/Homebrew/brew/pull/13671
2022-08-10 14:19:33 +01:00
Carlo Cabrera
a82974974c
Update Library/Homebrew/dev-cmd/pr-pull.rb
Co-authored-by: Bo Anderson <mail@boanderson.me>
2022-08-05 21:51:39 +08:00
Carlo Cabrera
61544369e4
pr-pull: fix PRs conflicting with themselves
https://github.com/Homebrew/homebrew-core/pull/106755#issuecomment-1206460655
2022-08-05 21:41:28 +08:00
Michka Popoff
3eacc0fb7c
pr-pull: fix check conflicts
The previous refactorings broke the conflict check.
Go back to the initially proposed syntax to fill the hashes/arrays,
which is more readable, and which works (the proc syntax does not seem to work for our purpose here)

Remove space before the error message, else only the first line of the output has 2 spaces
and this looks weird
2022-08-04 23:34:52 +02:00
Michka Popoff
ab49c02501
Merge pull request #13638 from iMichka/fixpull2
github/pr-pull: fix/improve parameters
2022-08-03 23:03:30 +02:00
Issy Long
11d661c497
dev-cmd/contributions: Friendlier --repositories help text 2022-08-03 18:26:30 +01:00
Issy Long
4874602f25
dev-cmd/contributions: Better usage string & named args numbering
Co-authored-by: Rylan Polster <rslpolster@gmail.com>
2022-08-03 17:43:24 +01:00
Issy Long
0bb8a06193
dev-cmd/contributions: Revert to --repositories flag
- This doesn't require "all" to be specified as part of the command,
  it's the default, so usage is now just:

```
$ brew contributions "Issy Long"
$ brew contributions "Issy Long" --repositories=brew,core
$ brew contributions me@issyl0.co.uk --repositories=cask,bundle
```

- As we discussed in the PR review before, `comma_array` doesn't allow
  two names, so we can't (yet) do `comma_array "--repositories",
  "--repos"` like we can with `flag`. That's an enhancement for the future
  if we want to make the flags here less verbose. But now that "all" is
  the default, maybe less necessary.
2022-08-03 17:12:11 +01:00
Issy Long
31331663e4
dev-cmd/contributions: Don't have cask in SUPPORTED_REPOS twice
- Also stop skipping a "versions" repo. Since
  023261038192a4f55c95a4d2486873ec1c9a728a the
  `Homebrew/homebrew-cask-versions` tap won't get mistaken for
  `Homebrew/homebrew-versions` tap.
2022-08-03 16:54:01 +01:00
Issy Long
8c762d9687
dev-cmd/contributions: Improve Sorbet typing
Co-authored-by: Rylan Polster <rslpolster@gmail.com>
2022-08-03 16:54:00 +01:00
Issy Long
a7effbdd35
dev-cmd/contributions: Remove named arg names, unused
Co-authored-by: Rylan Polster <rslpolster@gmail.com>
2022-08-03 16:53:59 +01:00
Issy Long
5ecdf10e27
dev-cmd/contributions: Start output with the name/email
Co-authored-by: Rylan Polster <rslpolster@gmail.com>
2022-08-03 16:53:58 +01:00
Issy Long
0c7825accd
dev-cmd/contributions: Make the first arg either a name or email
- This is easier than mapping GitHub usernames to email addresses, when
  folks don't have email addresses always public on their GitHub
  profiles. Also, the users of this command (PLC members, other
  interested parties) don't have to remember folks' email addresses.
- It also gives better data for people who've changed their name over
  the years, and who commit with multiple email addresses (personal and
  work).

```
❯ brew contributions "Issy Long" all
Person Issy Long directly authored 687 commits and co-authored 33 commits across all Homebrew repos in all time.

❯ brew contributions "Rylan Polster" all
Person Rylan Polster directly authored 1747 commits and co-authored 133 commits across all Homebrew repos in all time.

❯ brew contributions me@issyl0.co.uk all
Person me@issyl0.co.uk directly authored 711 commits and co-authored 25 commits across all Homebrew repos in all time.

❯ brew contributions "Mike McQuaid" all
Person Mike McQuaid directly authored 26879 commits and co-authored 204 commits across all Homebrew repos in all time.
```
2022-08-03 16:53:57 +01:00
Issy Long
ae73f28d0f
dev-cmd/contributions: Use a named arg for required repositories
- This is apparently "more in-keeping with how we do required arguments
  (never requiring flags)" across Homebrew.
- New usage: `brew contributions me@issyl0.co.uk all`, `brew
  contributions me@issyl0.co.uk brew,core`
2022-08-03 16:53:56 +01:00
Issy Long
c02e03a179
dev-cmd/contributions: Use methods to get arguments
- I got these with hash syntax because I couldn't figure out Sorbet, but
  there's `args.rbi` to add the CLI args methods to. Nice!
- In doing this I realised that `--repositories` is required again, we
  no longer infer `--repositories=all` from no `--repositories` passed
  as we did in a previous version of this.
2022-08-03 16:53:55 +01:00
Issy Long
5d312d25d0
dev-cmd/contributions: Properly auto-tap 2022-08-03 16:53:54 +01:00
Issy Long
63a1a078b9
dev-cmd/contributions: Improve SUPPORTED_REPOS array syntax
Co-authored-by: Mike McQuaid <mike@mikemcquaid.com>
2022-08-03 16:53:53 +01:00
Issy Long
f5d5778186
dev-cmd/contributions: Use --repositories not --repos
Co-authored-by: Mike McQuaid <mike@mikemcquaid.com>
2022-08-03 16:53:52 +01:00
Issy Long
1ac1097203
dev-cmd/contributions: Better usage banner
Co-authored-by: Rylan Polster <rslpolster@gmail.com>
2022-08-03 16:53:51 +01:00
Issy Long
dd986f7705
dev-cmd/contributions: Use .to_sentence not .join(", ")
Co-authored-by: Rylan Polster <rslpolster@gmail.com>
2022-08-03 16:53:50 +01:00
Issy Long
6974faa29b
dev-cmd/contributions: Appease brew style 2022-08-03 16:53:49 +01:00
Issy Long
5fa192c261
dev-cmd/contributions: Use --repos=all not a separate --all flag 2022-08-03 16:53:48 +01:00
Issy Long
be08b773f1
dev-cmd/contributions: Add --all to scan everything, plus auto-tapping 2022-08-03 16:53:47 +01:00
Issy Long
8e5a5672fb
dev-cmd/contributions: Better shell argument handling, plus stop piping to grep 2022-08-03 16:53:46 +01:00
Issy Long
5a34bc86c4
dev-cmd/contributions: RuboCop has opinions on where spaces should go 2022-08-03 16:53:45 +01:00
Issy Long
70c300daf2
dev-cmd/contributions: Use Utils.safe_popen_read not backticks 2022-08-03 16:53:45 +01:00
Issy Long
f6b2fe5093
dev-cmd/contributions: Improve sentence string line wrapping
Co-authored-by: Mike McQuaid <mike@mikemcquaid.com>
2022-08-03 16:53:44 +01:00
Issy Long
33d3aef295
dev-cmd/contributions: Only one email is allowed currently
Co-authored-by: Rylan Polster <rslpolster@gmail.com>
2022-08-03 16:53:43 +01:00
Issy Long
8a67ce76b5
dev-cmd/contributions: Appease brew typecheck 2022-08-03 16:53:42 +01:00
Issy Long
441df3d866
dev-cmd/contributions: Switch --email to be a named arg
- This way we can do the more intuitive:

```
$ brew contributions --repos=brew,core rslpolster@gmail.com
Person rslpolster@gmail.com directly authored 1580 commits and co-authored 125 commits to brew, core in all time.
```
2022-08-03 16:53:41 +01:00
Issy Long
c330ea4e3b
dev-cmd/contributions: Split git_log_cmd into two methods
- Otherwise it's quite involved and a bit hard to read.
2022-08-03 16:53:40 +01:00
Issy Long
fef9a286fe
dev-cmd/contributions: Simplify find_repo_path_for_repo
Co-authored-by: Rylan Polster <rslpolster@gmail.com>
2022-08-03 16:53:39 +01:00
Issy Long
503b51c54f
dev-cmd/contributions: Better error messages for bad --repos
```
$ brew contributions --email=me@issyl0.co.uk --repos=coreeeee
Error: Unsupported repo: coreeeee. Try one of brew, core, cask, bundle.

$ brew untap homebrew/bundle
$ brew contributions --email=me@issyl0.co.uk --repos=bundle
Error: Couldn't find repo bundle locally. Do you have it tapped?
```
2022-08-03 16:53:38 +01:00
Issy Long
0355c60787
dev-cmd/contributions: Retrieve a user's repo contributions over time
- Before each AGM it's currently a manual process for a PLC member to
  search commit logs and GitHub to figure out who contributed to
  Homebrew, so who should remain a member.
- I noticed that [looking at commits for a
  user](https://github.com/Homebrew/homebrew-core/commits?author=issyl0&since=2022-01-01&until=2023-01-01)
  would not count `Co-Authored-By`, which happens a lot now there's an
  autosquash action on PRs in `Homebrew/homebrew-core`, say if someone
  fixed a formula's build or tests or whatever and then the PR got
  auto-merged.
- Here's `brew contributions` that uses `git log` to be able to go back
  through all time or a specific time period (`--from`, `--to`). It's up
  to individual PLC discretion for "activity", but it does at least go
  some way to automating the data retrieval.
- Example (I can use my username as `--email` because my username is in
  all of the email addresses that I use for committing to Homebrew):

```
$ brew contributions --email=issyl0 --repos=brew,core
Person issyl0 directly authored 732 commits and co-authored 31 commits to brew, core in all time.
```
2022-08-03 16:53:37 +01:00