Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix the fetch-configlet script, which broke recently #929

Merged
merged 1 commit into from
Feb 28, 2020

Conversation

coriolinus
Copy link
Member

@coriolinus coriolinus commented Feb 28, 2020

Looks like Github has recently started returning non-uppercased
HTTP headers, at least some of the time. This broke the script,
which looked for a case-sensitive 'Location' header to find the
newest version. We can see this problem in spurious build failures like this.

This fixes the script such that it no longer cares whether the initial
L is capital or not, and if it breaks again in the future, it will
give a more informative error.

Request relatively rapid review for this, given that we have an external PR which is broken pending this fix.

Looks like Github has recently started returning non-uppercased
HTTP headers, at least some of the time. This broke the script,
which looked for a case-sensitive 'Location' header to find the
newest version.

This fixes the script such that it no longer cares whether the initial
L is capital or not, and if it breaks again in the future, it will
give a more informative error.
@coriolinus coriolinus merged commit bf54e82 into master Feb 28, 2020
@coriolinus coriolinus deleted the fix-fetch-configlet branch February 28, 2020 13:29
workingjubilee added a commit to workingjubilee/c that referenced this pull request Mar 19, 2020
Shamelessly dupes @coriolinus' fix: exercism/rust#929

"Looks like Github has recently started returning non-uppercased
HTTP headers, at least some of the time. This broke the script,
which looked for a case-sensitive 'Location' header to find the
newest version. We can see this problem in spurious build failures like this."

"This fixes the script such that it no longer cares whether the initial
L is capital or not, and if it breaks again in the future, it will
give a more informative error."
workingjubilee added a commit to workingjubilee/c that referenced this pull request Mar 19, 2020
Shamelessly dupes @coriolinus' fix: exercism/rust#929

"Looks like Github has recently started returning non-uppercased
HTTP headers, at least some of the time. This broke the script,
which looked for a case-sensitive 'Location' header to find the
newest version. We can see this problem in spurious build failures like this."

"This fixes the script such that it no longer cares whether the initial
L is capital or not, and if it breaks again in the future, it will
give a more informative error."
ryanplusplus pushed a commit to exercism/c that referenced this pull request Mar 19, 2020
* Fix fetch-configlet script

Shamelessly dupes @coriolinus' fix: exercism/rust#929

"Looks like Github has recently started returning non-uppercased
HTTP headers, at least some of the time. This broke the script,
which looked for a case-sensitive 'Location' header to find the
newest version. We can see this problem in spurious build failures like this."

"This fixes the script such that it no longer cares whether the initial
L is capital or not, and if it breaks again in the future, it will
give a more informative error."

* Add retry to fetch-configlet

Riffing off of @glennj's fix exercism/bash#424

This fixes the problem by adding retries to the curl attempt, combined
with the case-sensitivity fix. Also some of the logic has been reflowed.
Most notably, we now dynamically check for what archive extension to use.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants