SIGN IN SIGN UP
Homebrew / brew UNCLAIMED

🍺 The missing package manager for macOS (or Linux)

0 0 71 Ruby

GithubReleases: only check tag_name

The `GithubReleases` livecheck strategy was originally set up to check
the `tag_name` value and fall back to the release `name`. At the time,
I advocated for only checking `tag_name`, as matching the version from
the release name is almost never needed and could be handled in a
`strategy` block. Notably, only checking `tag_name` makes it easier to
switch between the `Git` and `GithubLatest` strategies (i.e., the same
regex can be used for both).

This modifies `GithubReleases` to only check the `tag_name` value by
default, as this behavior makes it a little easier for us to implement
batch `GithubLatest` data fetching in the future (i.e., using the
GitHub GraphQL API to fetch the latest release `tag_name` for 100
repositories per request). I've done comparative checks across all
`GithubLatest` and `GithubReleases` `livecheck` blocks in
homebrew-core and homebrew-cask to confirm that the results remain the
same after this change. If we need to match against the release `name`
going forward, we can check the value in a `strategy` block, as we're
already doing in ~5 cases (out of ~1350 checks using `GithubLatest` or
`GithubReleases`).
S
Sam Ford committed
d58ce5dc4482cff792126703eebe789cdb2296b8
Parent: 27ae838