82 Commits

Author SHA1 Message Date
Markus Reiter
e5d656bcce Avoid unnecessary downloads in audit. 2021-01-02 11:09:01 +01:00
Sam Ford
e687774e8a
Curl: Allow option to omit --retry in curl_args 2020-12-19 18:11:45 -05:00
Sam Ford
9d92ed868b
Curl: Add debug parameter to curl_with_workarounds 2020-12-19 18:03:27 -05:00
Markus Reiter
a023b0873b Don't add headers to content in curl_http_content_headers_and_checksum. 2020-12-10 12:34:57 +01:00
Markus Reiter
a5dbba5b97 Fix curl_http_content_headers_and_checksum. 2020-12-10 07:46:41 +01:00
Mike McQuaid
9216d8abe6
rubocop-rails: make fixes. 2020-12-02 10:43:04 +00:00
Markus Reiter
ff653571b1 Create Utils::Curl module and explicitly include it. 2020-10-10 15:23:03 +02:00
Markus Reiter
24ae318a3d Move type annotations into files. 2020-10-10 14:59:39 +02:00
Markus Reiter
01e46966e5 Set Accept-Language header for all curl requests. 2020-09-15 19:01:39 +02:00
Markus Reiter
f21591fd65 Ignore URLs protected by Incapsula. 2020-09-13 02:25:31 +02:00
Markus Reiter
8cfa050158 Check for CloudFlare protection on status code 403. 2020-09-12 21:33:39 +02:00
Markus Reiter
172bf76d74 Pass verbosity options to curl in download strategies. 2020-09-10 23:50:24 +02:00
Markus Reiter
16acd08d0a Don't override global system_command methods in download strategies. 2020-09-10 23:39:19 +02:00
Dawid Dziurla
4b6318b2ad
curl: allow passing print_stdout parameter 2020-09-09 18:01:48 +02:00
Markus Reiter
9e0a26a2fc
Merge pull request #8612 from reitermarkus/audit-cloudflare-protection
Ignore URLs protected by CloudFlare when auditing.
2020-09-06 00:25:59 +02:00
Markus Reiter
b2b37894f7
Reword comment.
Co-authored-by: Seeker <meaningseeking@protonmail.com>
2020-09-05 20:26:18 +02:00
Markus Reiter
36a8a823a1 Use curl workarounds for both curl and curl_output. 2020-09-05 10:42:35 +02:00
Markus Reiter
803234d381 Ignore URLs protected by CloudFlare when auditing. 2020-09-05 04:10:25 +02:00
Markus Reiter
490e503b1b Replace Homebrew.args with Context. 2020-08-06 16:13:14 +02:00
Mike McQuaid
a85eb3fa49
Revert "curl: alert on 301 redirect" 2020-07-28 10:38:27 +01:00
Dustin Rodrigues
c4d11374c8 curl: alert on permanent redirect 2020-07-24 10:50:13 -04:00
Dustin Rodrigues
ef540d0365 curl: ensure final_url is populated with the final URL requested 2020-07-22 17:41:55 -04:00
Bo Anderson
997ba42a4b utils/curl: support disabling partial downloads in curl_download 2020-07-02 18:58:32 +01:00
Mike McQuaid
aa81982aba
brew style --fix 2020-06-02 09:49:23 +01:00
Mike McQuaid
3381cbf5c7
Use Homebrew::EnvConfig. 2020-04-07 09:58:26 +01:00
Vítor Galvão
2e8aa3eb97 Use long --disable instead of short -q in curl 2020-03-29 20:04:37 +01:00
Markus Reiter
50b61fa7f2 Retry curl requests 3 times by default. 2020-03-20 18:40:43 +01:00
Gautham Goli
acde828a45 ARGV: Replace ARGV.verbose? with Homebrew.args.verbose? 2020-02-02 14:00:04 +01:00
Markus Reiter
d37831219d Use temp file for calculating hash. 2019-10-29 19:50:07 +01:00
Markus Reiter
b1d0c61fea Update Gems. 2019-10-03 09:22:44 +02:00
Markus Reiter
0a1985d46a Disable curl globbing. 2019-10-01 08:38:44 +02:00
Markus Reiter
70822d2bdb Add workaround for curl: (56) Unexpected EOF. 2019-09-26 05:17:51 +02:00
Mike McQuaid
fbc13f05dd
utils/curl: extract status checks into method. 2019-09-18 10:32:13 +01:00
Caleb Xu
78a0105fe2 utils/curl.rb: accept 1xx HTTP status codes
RFC 2616 states:

A client MUST be prepared to accept one or more 1xx status responses
prior to a regular response, even if the client does not expect a 100
(Continue) status message. Unexpected 1xx status responses MAY be
ignored by a user agent.

In the rare cases that we encounter a formula URL with a server that
provides a preliminary 1xx status code, it seems that (at least during
audit) we are failing on encountering this status code, even though
retrieving the file will succeed without issues.
2019-09-17 11:01:03 -04:00
Cheng XU
739c06229d
curl/curl_output: allow redacting secrets in the log
Add a new argument `secrets` to specify secret tokens, so we can redact them in the log.
2019-07-18 15:10:15 +08:00
Maik Riechert
e113fd70be add HOMEBREW_CURL_RETRIES 2019-05-18 13:23:08 +01:00
Mike McQuaid
36dbad3922
Add frozen_string_literal to all files. 2019-04-20 13:27:36 +09:00
Danny Weinberg
6db1b0abd8 Handle regex not finding anything 2019-02-03 10:52:09 -08:00
Danny Weinberg
b0124c4fb0 Cask handle already downloaded file
The current logic for curl_download tries to restart any existing
partial download, but this fails for some servers when the file is
already fully downloaded, returning a status code 416. This updates the
function to check for the file being already downloaded and if so bails
early.

The following command used to fail when run more than once but now works
as expected:
```
brew cask info https://raw.githubusercontent.com/homebrew/homebrew-cask/master/Casks/docker.rb
```
2019-02-01 14:57:50 -08:00
Claudia
c2bbd9df7e
Remove unneeded curl_openssl_or_deps invocation
This fixes a regression introduced in #5626 [1], which removed `curl_openssl_or_deps` and left a single call in the code.

[1]: https://github.com/Homebrew/brew/pull/5626
2019-01-28 08:10:37 +01:00
Mike McQuaid
61fa59e95b
Remove Travis CI specific code
We’re no longer using this for our CI so this is no longer necessary.

Also, migrate `brew tap-new` to use Azure pipelines.
2018-12-30 21:13:24 +00:00
Sam Hathaway
6e603c2859 Use GET rather than HEAD when checking for range support in curl_download.
* Some HTTP servers apparently support ranges but don't support HEAD.
   * This is a more realistic check anyway since the actual download request
     will use GET (not HEAD).
   * This fixes Homebrew/brew#5420.
2018-12-21 15:11:26 -05:00
L. E. Segovia
3b79b4d079
More styling fixes 2018-11-24 11:21:52 +00:00
L. E. Segovia
6ac568230c
Fix styling issues 2018-11-24 01:46:55 +00:00
L. E. Segovia
5a2743b50d
Merge branch 'master' into gitjiro-improved 2018-11-24 01:01:40 +00:00
Mike McQuaid
737b84b54b
brew style --fix fixes. 2018-11-02 17:29:23 +00:00
L. E. Segovia
094cab89fe
Cask: remove curl calls, use them with --download 2018-10-10 21:36:06 +00:00
L. E. Segovia
4fe0a63482
Cask: address HTTPS->HTTP redirections 2018-10-10 21:36:06 +00:00
Mike McQuaid
59c858a8e8
Cleanup Travis and CI configuration.
Use the environment variables set by `brew test-bot`. Eventually we'll
disable Travis CI running CodeCov so move `TRAVIS` references to
`HOMEBREW_TRAVIS_CI` so it doesn't need whitelisted.

Also, fix `azure-pipelines.yml` so it's testing the correct version of
Homebrew/brew (the one checked out in the `pwd`).
2018-09-19 15:01:33 +01:00
Markus Reiter
e9b9ea49a1 Update to RuboCop 0.59.1. 2018-09-17 03:45:59 +02:00