Commit Graph
25290 Commits
Author SHA1 Message Date
Mike McQuaid ea722400cd Merge pull request #13216 from Homebrew/dependabot/bundler/Library/Homebrew/rubocop-sorbet-0.6.8
build(deps): bump rubocop-sorbet from 0.6.7 to 0.6.8 in /Library/Homebrew
2022-04-29 14:34:39 +01:00
Mike McQuaid 2c0bd31d68 Merge pull request #13215 from timvisher/fix/keep-info_name_dir-files-on-clean
Keep `info/#{f.name}/dir` files in cleaner
2022-04-29 14:23:04 +01:00
danielnachun 3aaef294f6 formula_installer: add check for HOMEBREW_RELOCATE_BUILD_PREFIX 2022-04-28 12:49:11 -07:00
BrewTestBot 00909fc282 Update RBI files for rubocop-sorbet. 2022-04-28 18:15:35 +00:00
BrewTestBot 5ccd9c5a1d brew vendor-gems: commit updates. 2022-04-28 18:09:59 +00:00
dependabot[bot] 688f7c61b3 build(deps): bump rubocop-sorbet in /Library/Homebrew
Bumps [rubocop-sorbet](https://github.com/shopify/rubocop-sorbet) from 0.6.7 to 0.6.8.
- [Release notes](https://github.com/shopify/rubocop-sorbet/releases)
- [Commits](https://github.com/shopify/rubocop-sorbet/compare/v0.6.7...v0.6.8)

---
updated-dependencies:
- dependency-name: rubocop-sorbet
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-28 18:03:58 +00:00
Tim Visher 0d81864597 Use file.dirname in most cleaner tests 2022-04-28 10:40:16 -04:00
Tim Visher 8852208758 feedback 2022-04-28 10:40:16 -04:00
Tim Visher 59649a288c Use more next 2022-04-28 10:40:16 -04:00
Tim Visher 48db5eff25 lint 2022-04-28 10:40:16 -04:00
Tim Visher fbb3ccbfd6 Keep info/#{f.name}/dir files in cleaner
Still cleans `info/dir` and `info/<arch>/dir` files.

Fixes https://github.com/Homebrew/homebrew-core/issues/100190
2022-04-28 10:40:16 -04:00
Mike McQuaid 803444b9a6 Merge pull request #13212 from danielbayley/rubocop-url-trailing-slash
Fix Rubocop trailing `/` bug
2022-04-28 09:10:10 +01:00
BrewTestBot 0cc880c038 Update RBI files for activesupport. 2022-04-27 18:15:40 +00:00
BrewTestBot 8ea008eb11 brew vendor-gems: commit updates. 2022-04-27 18:10:10 +00:00
dependabot[bot] 29d3365974 build(deps): bump activesupport in /Library/Homebrew
Bumps [activesupport](https://github.com/rails/rails) from 6.1.5 to 6.1.5.1.
- [Release notes](https://github.com/rails/rails/releases)
- [Changelog](https://github.com/rails/rails/blob/v7.0.2.4/activesupport/CHANGELOG.md)
- [Commits](https://github.com/rails/rails/compare/v6.1.5...v6.1.5.1)

---
updated-dependencies:
- dependency-name: activesupport
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-27 18:04:02 +00:00
danielbayley 7d145f5798 Fix Rubocop trailing / bug 2022-04-27 18:42:11 +01:00
Bo Anderson e6cb1f18e7 Merge pull request #13151 from Bo98/libcrypt-1-deprecation
linkage_checker: deprecate linkage to libcrypt.so.1
2022-04-27 16:00:22 +01:00
Bo Anderson 1c73e25627 uses_from_macos: allow libxcrypt 2022-04-27 15:08:43 +01:00
Mike McQuaid e381843215 Merge pull request #13201 from mhmdanas/remove-space-before-colon-in-livecheck-output
Remove space before colon in `livecheck` output
2022-04-27 14:52:30 +01:00
Sean Molenaar 506337e76d Merge pull request #13196 from SMillerDev/feature/pr-pull/casks_checksum 2022-04-27 12:30:32 +02:00
Bo Anderson d0a0bbef8d Merge pull request #13205 from Bo98/macos12.3
os/mac/pkgconfig/12: update for macOS 12.3
2022-04-27 01:24:17 +01:00
Bo Anderson b3da8dbd24 test/os/mac/pkgconfig_spec: fix libffi detection on 12.3+ SDK 2022-04-27 00:59:15 +01:00
Bo Anderson 7d10bfc6b3 os/mac/pkgconfig/12: update for macOS 12.3 2022-04-27 00:50:13 +01:00
Eric Knibbe af5ebe5976 Merge pull request #13194 from EricFromCanada/search-adjustments
search: drop Homebrew cask tap names from list
2022-04-26 19:01:31 -04:00
Nanda H Krishna 27466b01da searchable: flatten array before matching
Fix #13203 which occurs when searching cask descriptions.
2022-04-26 18:18:29 -04:00
mhmdanas 37c46e1acd Remove space before colon in livecheck output 2022-04-27 01:09:16 +03:00
Sam Ford b7a4360433 #parse_curl_output: increase default max_iterations
The `max_iterations` value in `#parse_curl_output` is only intended
to prevent its `while` loop from potentially turning into an endless
loop. This should only come into play in exceptional circumstances
but the current default value (5) is low enough that we're seeing it
under normal circumstances.

`#parse_curl_output` isn't intended to restrict the number of
redirections (this should be done using the `--max-redirs` option in
`curl) but it's effectively doing this in rare cases due to the low
`max_iterations` default. This is a problem because `curl` can
successfully return a response only to have `#parse_curl_output`
error in relation to `max_iterations`.

Originally the code in `#parse_curl_output` was used in the context
of livecheck, where it's not a huge issue if a check fails. However,
now the `#parse_curl_output` method is used in important parts of
brew like `#curl_download`. We've received a report of a download
failing with the "Too many redirects (max = 5)` error, effectively
preventing the user from installing a formula [from a third-party
tap].

Until we can come up with a more adaptive way of bounding this
`while` loop, I think we should simply raise the default to something
that's less likely to be encountered under normal circumstances
(e.g., 25).
2022-04-26 15:49:02 -04:00
Maxim BelkinandMike McQuaid 13735bc780 Apply Mike's suggestions from code review
Co-authored-by: Mike McQuaid <mike@mikemcquaid.com>
2022-04-26 08:35:28 -07:00
Maxim Belkin 27a2dba340 update/update-reset: warn when no origin remote
Current situation with update.sh & update-reset.sh:

Upon creating a new tap and before adding remote 'origin' to it,
running `brew update` produces multiple cryptic error messages.
This change converts these cryptic Git messages into clear warnings
about absent remote 'origin'.

How to test:
1. Create a new tap using `brew tap-new`
2. Run `brew update`
2022-04-26 08:35:27 -07:00
Alexander Bayandin c726385035 utils/curl: fix headers check for protected urls 2022-04-26 13:27:42 +01:00
Mike McQuaid 5280a38b1b Merge pull request #13190 from Homebrew/dependabot/bundler/Library/Homebrew/regexp_parser-2.3.1
build(deps): bump regexp_parser from 2.3.0 to 2.3.1 in /Library/Homebrew
2022-04-26 10:33:23 +01:00
Sean Molenaar 9a25a1d5e1 pr-pull: add checksum update clause 2022-04-26 08:57:29 +02:00
Sam Ford d6202384d7 Curl: Remove guard from certain parsing logic
The `#curl_http_content_headers_and_checksum` method previously
parsed responses from `curl` output even if `status.success?` wasn't
`true`. A recent commit of mine moved the parsing logic behind this
guard but it's now leading to a "...is not reachable" error when a URL
involves a large download that takes longer than 25 seconds to finish
and hits the timeout.

This commit resolves the issue for the time being by moving related
logic back to its previous location, where it isn't guarded by
`status.success?`.
2022-04-26 01:22:20 -04:00
EricFromCanada a4590f394e search: drop Homebrew cask tap names from list
Results in searching a list of tokens from official Homebrew cask taps and fully-qualified tokens from other taps, matching the list when searching formulae.
2022-04-25 22:22:03 -04:00
Bo Anderson ea264344f3 Merge pull request #13191 from SMillerDev/fix/automerge/allow_workflow_selection
pr-automerge: allow users to specify a workflow for pr-publish
2022-04-25 20:19:39 +01:00
Sean Molenaar 05eafa5cac pr-automerge: allow users to specify a workflow for pr-publish 2022-04-25 20:29:35 +02:00
Sam Ford 6bd2c831cd Merge pull request #13181 from samford/livecheck/add-max-redirs-curl-arg
`Strategy`: Add `--max-redirs` to `DEFAULT_CURL_ARGS`
2022-04-25 14:25:36 -04:00
Sam Ford 51329d9392 Merge pull request #13179 from samford/curl-download-try_partial-false
`#curl_download`: default `try_partial` to `false`
2022-04-25 14:24:19 -04:00
BrewTestBot 2388551428 Update RBI files for regexp_parser. 2022-04-25 18:10:54 +00:00
BrewTestBot 2ba3b46c08 brew vendor-gems: commit updates. 2022-04-25 18:06:19 +00:00
dependabot[bot] 9a34f13d09 build(deps): bump regexp_parser from 2.3.0 to 2.3.1 in /Library/Homebrew
Bumps [regexp_parser](https://github.com/ammar/regexp_parser) from 2.3.0 to 2.3.1.
- [Release notes](https://github.com/ammar/regexp_parser/releases)
- [Changelog](https://github.com/ammar/regexp_parser/blob/master/CHANGELOG.md)
- [Commits](https://github.com/ammar/regexp_parser/compare/v2.3.0...v2.3.1)

---
updated-dependencies:
- dependency-name: regexp_parser
  dependency-type: indirect
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-25 18:03:52 +00:00
Bo Anderson 968366696b Merge pull request #13183 from apainintheneck/fix-sorbet-type
cli/parser: Re-enable Sorbet Type Checking
2022-04-25 15:09:45 +01:00
apainintheneck 9c4402a049 Resolved Sorbet type bug
Related to sorbet/sorbet#498

Had to change the call to caller_locations to filter out
sorbet runtime checking.
2022-04-25 00:29:05 -07:00
Sam Ford 3f7d9f82fc #curl_download: default try_partial to false
When its `try_partial` argument is `true`, `#curl_download` makes a
`HEAD` request before downloading the file using `#curl`. Currently
`try_partial` defaults to `true`, so any `#curl_download` call that
doesn't explicitly specify `try_partial: false` will make a `HEAD`
request first. This can potentially involve several requests if the
URL redirects, so it can be a bit of unnecessary overhead when a
partial download isn't needed.

Partial downloads are generally only useful when we're working with
larger files, however there's currently only one place in brew where
`#curl_download` is used and this is the case:
`CurlDownloadStrategy`. The other `#curl_download` calls are fetching
smaller [text] files and don't need to support partial downloads.

This commit changes the default `try_partial` value to `false`,
making partial downloads opt-in rather than opt-out.

We want `try_partial` to continue to default to `true` in
`CurlDownloadStrategy` and there are various ways to accomplish this.
In this commit, I've chosen to update its `#initialize` method to
accept a `try_partial` argument that defaults to `true`, as this
value can also be used in classes that inherit from
`CurlDownloadStrategy` (e.g., `HomebrewCurlDownloadStrategy`). This
instance variable is passed to `#curl_download` in related methods,
effectively maintaining the previous `try_partial: true` value, while
also allowing this value to be overridden when necessary.

Other uses of `#curl_download` in brew are
`Formulary::FromUrlLoader#load_file` and
`Cask::CaskLoader::FromURILoader#load`, which did not provide a
`try_partial` argument but should have been using
`try_partial: false`. With the `try_partial: false` default in this
commit, these calls are now fine without a `try_partial` argument.

The only other use of `#curl_download` in brew is
`SPDX#download_latest_license_data!`. These calls were previously
using `try_partial: false` but we can now omit this argument with
the new `false` default (aligning with the above).
2022-04-22 14:23:08 -04:00
Sam Ford ef5d8ed8b0 Strategy: Add --max-redirs to DEFAULT_CURL_ARGS
The default redirection maximum for `curl` is 50 but we should use
something more reasonable in livecheck. It's rare but a misconfigured
server with an endless redirection loop will hit the 50 redirection
limit. Unfortunately, we've encountered this in the wild (e.g., the
server for `getmail` and `memtester` endlessly redirects), so it's
not an idle concern. This commit basically adds `--max-redirs 5` to
`Livecheck::Strategy::DEFAULT_CURL_ARGS` to enforce a more reasonable
redirection maximum.

To be clear, the `max_iterations` logic in `#parse_curl_output`
(which was previously found in `Strategy#page_content`) doesn't
restrict the number of redirections that `curl` follows. At the point
the `curl` output is being parsed, the requests have already been
made and `max_iterations` simply restricts the number of responses
`#parse_curl_output` is willing to parse. If we use `--max-redirs`
and properly set `max_iterations` to `max-redirs + 1`, we shouldn't
encounter the "Too many redirects" error in `#parse_curl_output`.
2022-04-22 13:39:02 -04:00
Sam Ford 2722fbe30e #parse_curl_output: add max_iterations parameter
In cases where there may be more than five responses in `curl`
output to parse, we need to be able to control the `max_iterations`
of the `while` loop in `#parse_curl_output` to properly parse all
the responses.

For example, if we pass `--max-redirs 5` to `curl` and there are
exactly five redirections before the final response, the output would
contain a total of six responses and `#parse_curl_output` wouldn't
properly handle this (it would give a `Too many redirects` error).
`max_iterations` should be the maximum number of redirections + 1
(to account for any final response after the redirections), so we
need to be able to override this value when necessary.
2022-04-22 13:17:45 -04:00
Alexander Bayandin 3f95cdd80f Merge pull request #13177 from bayandin/allow_underscore_in_cask_names
tap_constants: allow to use underscore in cask names
2022-04-22 14:28:06 +01:00
Mike McQuaid add2991d4f Merge pull request #13147 from pmrowla/update-python-resources-env
bump-formula-pr: expose update-python-resources CLI flags
2022-04-22 14:23:15 +01:00
Alexander Bayandin 8dbbb20f08 tap_constants: allow to use underscore in cask names 2022-04-22 12:24:31 +01:00
Bo Anderson 6db3ee6b0a extend/os/linux/keg_relocate: restore checking only GCC major versions 2022-04-22 01:41:23 +01:00