chocolatey / chocolatey/choco

Chocolatey should warn the user when download fails for TLS1.2 / .NET 4

Open
#1,745 4 comments 4 reactions 0 assignees View on GitHub
0 - Backlog Enhancement Up For Grabs
Dominant language
C#
Stars
11.5k
Forks
960
PR merge metrics
No merged PRs in 30d

Description

This is based on this Gitter conversation ([start](https://gitter.im/chocolatey/chocolatey.org?at=5c813a2abf7990126e658ba2) and [relevant part](https://gitter.im/chocolatey/chocolatey.org?at=5c813c06293ac75db56b6565)).

When a package is being downloaded from GitHub (which requires TLS 1.2) Chocolatey will fail with this error message:

```
2019-03-07 20:42:53,886 4924 [ERROR] - ERROR: The remote file either doesn't exist, is unauthorized, or is forbidden for url 'https://github.com/cbucher/console/releases/download/1.18.3/ConsoleZ.x64.1.18.3.18143.zip'.
Exception calling "GetResponse" with "0" argument(s): "The underlying connection was closed: An unexpected error occurred on a send."
```

When Chocolatey fails to download a package it should check if it has the TLS ciphers (present in .NET 4.5) and if not warn the user that the download may have failed for that reason (and perhaps to check the logs as the information in there may give them more info to go on) and that they may need to upgrade to .NET 4.5.

Because Chocolatey's base requirement is .NET 4 it might not be apparent that download locations such as GitHub require a more modern .NET version.

Contributor guide

Open the contributing guide

Research direction

Start by locating Chocolatey's package download failure handling and the code that checks TLS or .NET compatibility; the issue provides a GitHub download URL and the resulting connection error as a reproduction example. Done means a failed download on an environment without the required TLS support produces a warning explaining the likely cause, log details, and possible .NET 4.5 upgrade.

Written by the indexing model from the issue text.

Assessment

Tech stack
csharp
Domain
cli
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.