- 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.
```
Error: tried to create Proc object without a block
Do not report this issue until you've run `brew update` and tried again.
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/dev-cmd/pr-pull.rb:372:in `proc'
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/dev-cmd/pr-pull.rb:372:in `pr_check_conflicts'
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/dev-cmd/pr-pull.rb:439:in `block in pr_pull'
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/dev-cmd/pr-pull.rb:429:in `each'
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/dev-cmd/pr-pull.rb:429:in `pr_pull'
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/brew.rb:93:in `<main>'
Error: Process completed with exit code 1.
https://github.com/Homebrew/homebrew-core/runs/7634004090?check_suite_focus=true#step:10:15
This change will prevent us having to run some long running builds
multiple times and to rely on luck to get things merged without conflicts.
The check takes less than 30 secondes on my local setup.
The existing `bump-formula-pr` regexes expect a `url` string to only
be followed by a newline. However, `url` also accepts a `specs` hash,
which can appear after the `url` string. For example:
```
url "https://www.example.com/1.2.3.tar.gz", using: :homebrew_curl
```
This commit modifies the regexes to capture anything after the `url`
string and before the newline. This works for the aforementioned
example, where the trailing hash is on the same line, but it won't
work if the hash appears on a subsequent line. For example:
```
url "https://www.example.com/1.2.3.tar.gz",
using: :homebrew_curl
```