wbond / package_control

The Sublime Text package manager
https://packagecontrol.io
4.8k stars 814 forks source link

Package missing due to InvalidCertificateException #1334

Closed ehuss closed 11 months ago

ehuss commented 6 years ago

The package at https://packagecontrol.io/packages/Rust%20Enhanced is currently marked as Missing with the following error:

Package info was unavailable last time crawler ran. Error downloading repository. HTTP exception InvalidCertificateException (Host api.github.com returned an invalid certificate ([SSL: TLSV1_ALERT_PROTOCOL_VERSION] tlsv1 alert protocol version (_ssl.c:548))) downloading https://api.github.com/repos/rust-lang/sublime-rust.

Is it possible this is a transient error of some kind? Is there some way to kick the crawler to try again?

FichteFoll commented 6 years ago

Looks like there are a couple Rust packages affected by it. https://packagecontrol.io/search/rust

ehuss commented 6 years ago

Looks like Github recently made a change to their TLS configuration: https://github.com/blog/2507-weak-cryptographic-standards-removed

EDIT: Not sure if it will also affect Windows 7 users, but they are stuck on TLS 1.0 unless they implement this change: https://support.microsoft.com/en-us/help/3140245/update-to-enable-tls-1-1-and-tls-1-2-as-a-default-secure-protocols-in

FichteFoll commented 6 years ago

The problem is that the crawler is running on an old OS and Python 3.3, which doesn't support TLS 1.2. wbond is already on it.

wbond commented 6 years ago

I’ve had a new Python TLS library in development for a while, so today I implemented a downloader using it, but I have some more debugging to do before I can push out a new version. Was hoping to be done with it today, but it looks like that is unlikely to happen.

ehuss commented 6 years ago

Thanks @wbond! Please let us know if there is any way we can help.

cweagans commented 6 years ago

@wbond not to rush you, but is there anything that can be done here to help? Or some kind of workaround? I know I'm pretty much dead in the water right now as far as getting my ST3 set up goes.

wbond commented 6 years ago

Not really. I am debugging the new downloader. There are some hangs it seems, probably some error in OscryptoDownloader logic. It is a new HTTP client as of yesterday, so needs some ironing out.

LucaCappelletti94 commented 6 years ago

Same issue, any update?

kaste commented 6 years ago

Hi @wbond, can you please put a banner on packagecontrol.io so people don't open issues everywhere. Ty.

wbond commented 6 years ago

No updates, been working on a solution all weekend, not going to spent time to try and design a banner on the site. Just be patient, or download the packages manually.

kaste commented 6 years ago

Yeah sure, but SublimeLinter gets a new issue like every hour.

wbond commented 6 years ago

Then maybe you should leave one open and explain the situation? You can point them to the forum, or this issue.

Steiniche commented 6 years ago

Actually I like @kaste idea about a banner or something. I just spent a couple of hours trying to debug what was going on with the following error:

ignored packages updated to: ["LaTexTools", "Vintage"]
reloading settings Packages/User/Package Control.sublime-settings
reloading settings Packages/User/Preferences.sublime-settings
Package Control: The dependency 'pygments' is not currently installed; installing...
Package Control: The dependency 'pygments' is not available
Package Control: The dependency 'pygments' could not be installed or updated

The only thing I was able to find on google was an issue in the sublime-evernote repo with a similar error, but no work around or anything. It was first after I decided to go here and open an issue I found #1338 which pointed here and the problem was explained. A small messege banner at the top of https://packagecontrol.io/ would have saved me the trouble and maybe it could help others in the same place

I ended up "installing" LaTexTools the manual way as a work around.

wbond commented 6 years ago

@Steiniche Unfortunately I only have so much time, and I'd rather spend it fixing the bug that posting in all different places. I've already responded about the issue in places that allow for convenient messages:

Doing website development and deploying it a good chunk of time away from fixing the real issue.

FichteFoll commented 6 years ago

If anything, someone could go ahead and design a banner for packagecontrol.io themselves and then offer that as a PR, since the website code is open source. Ideally, make sure the banner's contents are configurable so it can be re-used for future announcements easily. Make sure to include a screenshot for an easier review process.

wbond commented 6 years ago

How are things looking for people now? The crawler is back online with a new downloader that supports TLS 1.2-exclusive servers.

Is anyone still having trouble? If so, can you post a debug log?

ljharb commented 6 years ago

@wbond trying to install GitGutter:

``` 1 problem SublimeLinter: No match for <_sre.SRE_Pattern object at 0x7f81fae89540> SublimeLinter: No match for <_sre.SRE_Pattern object at 0x7f81fae89540> ignored packages updated to: ["GitGutter", "JavaScript", "Vintage"] reloading settings Packages/User/Package Control.sublime-settings reloading settings Packages/User/Preferences.sublime-settings Package Control: The dependency 'markupsafe' is not currently installed; installing... Package Control: The dependency 'markupsafe' has successfully been installed or updated Package Control: The dependency 'mdpopups' is not currently installed; installing... Package Control: The dependency 'mdpopups' is not available Package Control: The dependency 'mdpopups' could not be installed or updated ignored packages updated to: ["JavaScript", "Vintage"] reloading settings Packages/User/Package Control.sublime-settings reloading settings Packages/User/Preferences.sublime-settings reloading settings Packages/User/Preferences.sublime-settings ```
janosrusiczki commented 6 years ago

@wbond Trying to install GitGutter, results are the same as for @ljharb above. I just reinstalled Package Control.

wbond commented 6 years ago

It appears in the recovery process the crawler has hit the GitHub API limit for the current hour, so some things are currently not found. Let's check again in an hour or so.

janosrusiczki commented 6 years ago

@wbond I just retried, it went through. Thanks for your hard work! :+1:

ghost commented 6 years ago

Sublimerge 3 is available again but custom repos set in Package Control's prefs are still non available. I'll try again tomorrow.

Package Control: Error downloading repository. HTTP exception InvalidCertificateException (Host api.github.com returned an invalid certificate ([SSL: TLSV1_ALERT_PROTOCOL_VERSION] tlsv1 alert protocol version (_ssl.c:548))) downloading https://api.github.com/repos/apiad/sublime-subtitle-sync.
Package Control: Error downloading repository. HTTP exception InvalidCertificateException (Host api.github.com returned an invalid certificate ([SSL: TLSV1_ALERT_PROTOCOL_VERSION] tlsv1 alert protocol version (_ssl.c:548))) downloading https://api.github.com/repos/evandrocoan/BufferScroll.
``` Package Control: Fetching list of available packages and dependencies Platform: osx-x64 Sublime Text Version: 3143 Package Control Version: 3.3.0 Package Control: Download Debug URL: https://packagecontrol.io/channel_v3.json Timeout: 30 Resolved IP: 50.116.34.243 Resolved IPv6: 2600:3c02:e000:42::1 Package Control: Urllib Debug Proxy http_proxy: https_proxy: proxy_username: proxy_password: Package Control: Found previously exported CA bundle at /Users/soulitude/Library/Application Support/Sublime Text 3/Packages/User/oscrypto-ca-bundle.crt (303880 bytes) Package Control: Urllib HTTPS Debug General Connecting to packagecontrol.io on port 443 Package Control: Urllib HTTPS Debug General Upgrading connection to SSL using CA certs file at /Users/soulitude/Library/Application Support/Sublime Text 3/Packages/User/Package Control.merged-ca-bundle Using hostname "packagecontrol.io" for TLS SNI extension Successfully upgraded connection to packagecontrol.io:443 with SSL Using TLSv1/SSLv3 with cipher ECDHE-RSA-AES128-SHA Server SSL certificate: subject: CN=packagecontrol.io subject alt name: packagecontrol.io, www.packagecontrol.io expire date: Nov 27 23:59:59 2019 GMT Certificate validated for packagecontrol.io Package Control: Urllib HTTPS Debug Write GET /channel_v3.json HTTP/1.1 If-None-Match: "5a95eeae-48fb7" If-Modified-Since: Tue, 27 Feb 2018 23:50:06 GMT Connection: Keep-Alive Host: packagecontrol.io Accept-Encoding: bzip2,gzip,deflate User-Agent: Package Control v3.3.0 Package Control: Urllib HTTPS Debug Read HTTP/1.1 200 OK Server: nginx Date: Wed, 28 Feb 2018 00:04:34 GMT Content-Type: application/json Content-Length: 326421 Last-Modified: Wed, 28 Feb 2018 00:00:06 GMT Connection: keep-alive ETag: "5a95f106-4fb15" Content-Encoding: bzip2 Vary: Accept-Encoding Strict-Transport-Security: max-age=15552000 Accept-Ranges: bytes Package Control: Caching https://packagecontrol.io/channel_v3.json in /Users/soulitude/Library/Application Support/Sublime Text 3/Packages/User/Package Control.cache/01524fae79697630d0454ba3fabd9414 Package Control: Download Debug URL: https://api.github.com/repos/apiad/sublime-subtitle-sync Timeout: 30 Resolved IP: 192.30.253.117 Package Control: Urllib Debug Proxy http_proxy: https_proxy: proxy_username: proxy_password: Package Control: Found previously exported CA bundle at /Users/soulitude/Library/Application Support/Sublime Text 3/Packages/User/oscrypto-ca-bundle.crt (303880 bytes) Package Control: Urllib HTTPS Debug General Connecting to api.github.com on port 443 Package Control: Urllib HTTPS Debug General Upgrading connection to SSL using CA certs file at /Users/soulitude/Library/Application Support/Sublime Text 3/Packages/User/Package Control.merged-ca-bundle Using hostname "api.github.com" for TLS SNI extension Package Control: Download Debug URL: https://api.github.com/repos/evandrocoan/BufferScroll Timeout: 30 Resolved IP: 192.30.253.117 Package Control: Urllib HTTPS Debug General Connecting to api.github.com on port 443 Package Control: Urllib HTTPS Debug General Upgrading connection to SSL using CA certs file at /Users/soulitude/Library/Application Support/Sublime Text 3/Packages/User/Package Control.merged-ca-bundle Using hostname "api.github.com" for TLS SNI extension Package Control: Error downloading repository. HTTP exception InvalidCertificateException (Host api.github.com returned an invalid certificate ([SSL: TLSV1_ALERT_PROTOCOL_VERSION] tlsv1 alert protocol version (_ssl.c:548))) downloading https://api.github.com/repos/apiad/sublime-subtitle-sync. Package Control: Error downloading repository. HTTP exception InvalidCertificateException (Host api.github.com returned an invalid certificate ([SSL: TLSV1_ALERT_PROTOCOL_VERSION] tlsv1 alert protocol version (_ssl.c:548))) downloading https://api.github.com/repos/evandrocoan/BufferScroll. Package Control: Looking for git at: "/usr/local/opt/python/libexec/bin/git", "/usr/local/opt/openssl/bin/git", "/Users/soulitude/bin/git", "/usr/local/bin/git", "/usr/local/sbin/git", "/usr/bin/git", "/bin/git", "/usr/sbin/git", "/sbin/git", "/usr/local/git/bin/git", "/usr/local/bin/git" Package Control: Found git at "/usr/local/bin/git" Package Control: Executing /usr/local/bin/git symbolic-ref -q HEAD [/Users/soulitude/Library/Application Support/Sublime Text 3/Packages/RegExLink] Package Control: Executing /usr/local/bin/git config --get branch.project.remote [/Users/soulitude/Library/Application Support/Sublime Text 3/Packages/RegExLink] Package Control: Executing /usr/local/bin/git config --get branch.project.merge [/Users/soulitude/Library/Application Support/Sublime Text 3/Packages/RegExLink] Package Control: Executing /usr/local/bin/git fetch origin [/Users/soulitude/Library/Application Support/Sublime Text 3/Packages/RegExLink] Package Control: Executing /usr/local/bin/git log ..origin/project [/Users/soulitude/Library/Application Support/Sublime Text 3/Packages/RegExLink] Package Control: Urllib HTTPS Debug General Closing connection to packagecontrol.io on port 443 after 1 request ```
ljharb commented 6 years ago

My GitGutter still won't install, even after a sublime restart:

``` ignored packages updated to: ["GitGutter", "JavaScript", "Vintage"] reloading settings Packages/User/Package Control.sublime-settings reloading settings Packages/User/Preferences.sublime-settings Package Control: The dependency 'markupsafe' is not currently installed; installing... Package Control: The dependency 'markupsafe' has successfully been installed or updated Package Control: The dependency 'mdpopups' is not currently installed; installing... Package Control: The dependency 'mdpopups' is not available Package Control: The dependency 'mdpopups' could not be installed or updated ignored packages updated to: ["JavaScript", "Vintage"] reloading settings Packages/User/Package Control.sublime-settings reloading settings Packages/User/Preferences.sublime-settings reloading settings Packages/User/Preferences.sublime-settings ```
wbond commented 6 years ago

@megadr01d This will require me rolling out a new release with the OscryptoDownloader, but it needs some more bug testing and fixes before I can roll it out to everyone.

wbond commented 6 years ago

There are still issues related to the API limits. I have 5000 requests per hour, and a caching system, but many of the cached entries expired since last week when GitHub changed their server config. Thus I am hitting the 5,000 limit pretty consistently.

I am going to try and up the cache lifetime, hopefully that will alleviate it some as Package Control get's synced back up to the GitHub info.

ppoluha commented 6 years ago

Yes! Installation of Sublime Evernote now works. Dependency "pygments" installed.

marcotollini commented 6 years ago

Edit by @wbond: Please don't do this. If for some reason you must, please be sure to erase these settings after I release the next version of Package Control.


For MAC users, you may have to put this:

"downloader_precedence":
{
    "linux":
    [
        "curl",
        "urllib",
        "wget"
    ],
    "osx":
    [
        "curl",
        "urllib"
    ],
    "windows":
    [
        "wininet"
    ]
}

in preferences->Package settings->Package control->Settings - User, so that you use curls as download manager that doesn't have problems with the new certificate settings

LucaCappelletti94 commented 6 years ago

Hi, I've tried @marcotollini solution (after having clean installed sublime and package control), normal packages work fine but repositories still raise exceptions:

Package Control: Error downloading repository. HTTP exception InvalidCertificateException (Host api.github.com returned an invalid certificate ([SSL: TLSV1_ALERT_PROTOCOL_VERSION] tlsv1 alert protocol version (_ssl.c:548))) downloading https://api.github.com/repos/titoBouzout/Dictionaries. Package Control: Error downloading repository. HTTP exception InvalidCertificateException (Host api.github.com returned an invalid certificate ([SSL: TLSV1_ALERT_PROTOCOL_VERSION] tlsv1 alert protocol version (_ssl.c:548))) downloading https://api.github.com/repos/ketan/BeautifyLatex.

marcotollini commented 6 years ago

@LucaCappelletti94 What are you trying to install? Are you on a Mac?

LucaCappelletti94 commented 6 years ago

I'm trying to install BeautifyLatex and some Dictionaries.

After I add the repositories urls with "Add Repository" I get the errors I've reported above every time i try to "Install Package".

I'm on macOS High Sierra, version 10.13.3, and Sublime Text version 3.0, build 3143.

marcotollini commented 6 years ago

@LucaCappelletti94, I tried to add the repo and I installed BeautifyLatex. I had no problem, it installed without any error.

Please, try to remove the repo, check again the Package control->Settings - User and try to re-add the repo and install

LucaCappelletti94 commented 6 years ago

@marcotollini I tried that too, but it installs the version from Package Control (2 years old) and not from the repo (last version from this November), that still raises an exception in the console.

marcotollini commented 6 years ago

Following the follow I had no problems: 1) adding the repo: https://github.com/ketan/BeautifyLatex 2) package install -> BeautifyLatex

https://imgur.com/a/4KYnY

As you see, it shows me the latest version.

LucaCappelletti94 commented 6 years ago

Here are the screenshots, step by step:

Just opened sublime: https://pasteboard.co/H9HNCqj.jpg Removing the repo from package control: https://pasteboard.co/H9HNSJS.jpg Added repo, trying to install package: https://pasteboard.co/H9HOfe1.jpg

Tried again after seeing your latest post, I still get the exception and the repository that appears in the list is the old one: https://pasteboard.co/H9HPFlE.jpg

In this last one there's only one exception since I tried to remove both repos.

What may I try to help solve this? Thanks for your time!

marcotollini commented 6 years ago

I investigated a bit. When you try to install the package after having added the repo, Sublime tries to crawl the github repo, however it can't because of a HTTPS error. I recreated the same issue without the downloader_precedence thing. It may, for some reason, have not applied the settings, try to double check

LucaCappelletti94 commented 6 years ago

I've checked the settings, here's a screenshot showing both the settings and the error: https://pasteboard.co/H9IaS9L.jpg

marcotollini commented 6 years ago

Try to set Package Control in debug mode: https://packagecontrol.io/docs/troubleshooting#Enabling_the_Debug_Log

Now try to install again up where you receive the https error and post the log. Maybe it is a problem of executables not in the PATH

LucaCappelletti94 commented 6 years ago

I've realized what the issue was: for whatever reason, I've added the downloader_precedence settings in the general user settings instead of in the package control settings.

Now the exceptions are no longer present.

How may I help out for debugging these exceptions, however? By changing the request method we're only sweeping them under the rug.

ghost commented 6 years ago

@wbond

This will require me rolling out a new release with the OscryptoDownloader, but it needs some more bug testing and fixes before I can roll it out to everyone.

Thanks and no problem, not a priority, so take your time.

@LucaCappelletti94

How may I help out for debugging these exceptions, however? By changing the request method we're only sweeping them under the rug.

Take some time to read the whole thread.

https://github.com/wbond/package_control/issues/1334#issuecomment-369073859

This will require me rolling out a new release with the OscryptoDownloader, but it needs some more bug testing and fixes before I can roll it out to everyone.

wbond commented 6 years ago

How may I help out for debugging these exceptions, however? By changing the request method we're only sweeping them under the rug.

No, nothing is being swept under the rug. Python 3.3's _ssl module uses the OpenSSL API in such a way that a connection to a TLS 1.2 server is not possible. It doesn't use the TLS 1.1 or TLS 1.2 constants, but rather a constant for TLS 1.0. This results in GitHub rejecting the connection since it uses an insecure version of the TLS protocol.

Windows users by default use the WinInetDownloader, which uses the wininet library, and Microsoft's TLS stack, so as long as they are running a recent build of Windows, they will have TLS 1.2.

Mac and Linux users default to using urllib, which utilizes the Python _ssl module.

The new OscryptoDownloader uses the oscrypto.tls library for TLS connections, which support TLS 1.2 on every platform (except for Windows XP). It uses dlopen to utilize the OS TLS library at run time. On Linux it uses OpenSSL, but uses the appropriate APIs for TLS 1.2. On Mac it uses Secure Transport. On Windows it uses SChannel. If you are curious for more details, check out https://github.com/wbond/oscrypto.

wbond commented 6 years ago

If you are interesting in helping, you can grab the latest commit from master. It now has all of the current tweaks to OscryptoDownloader, which are running on the crawler.

The known issues are most related to long-running connections like the crawler uses. It isn't the most graceful in handing ECONNRESET/EPIPE, or dealing with another thread closing the connection.

Currently I've used it on Mac and heavily on Linux. I haven't tested in on Windows, although it is unlikely to be used much there.

olets commented 6 years ago

I believe the "sweeping under the rug" comment was about using curl. I've seen several people linking to https://github.com/wbond/package_control/issues/1220#issuecomment-282513600, presumably before reading this thread

wbond commented 6 years ago

@olets Thanks for pointing that out! I got an email with my username in it, and somehow missed that there were a bunch of comments before that…

dangh commented 6 years ago

Hello @wbond, I got the following error when installing package directly from GitHub repo:

Package Control: Error downloading repository. HTTP exception InvalidCertificateException (Host api.github.com returned an invalid certificate ([SSL: TLSV1_ALERT_PROTOCOL_VERSION] tlsv1 alert protocol version (_ssl.c:548))) downloading https://api.github.com/repos/reasonml-editor/sublime-reason.

My Package Control settings:

{
  "repositories": [
    "https://packagecontrol.io/prerelease/packages.json",
    "https://github.com/reasonml-editor/sublime-reason.git"
  ]
}

Installing packages from official channel has no problem.

FichteFoll commented 6 years ago

You need to change the downloader priority to not use urllib, until a ST build with a patched Python 3.3 is released. (Assuming you are not on Windows.)

ghost commented 6 years ago

startup, version: 3143 linux x64 channel: stable executable: /opt/sublime_text/sublime_text working dir: / packages path: /home/vladislav/.config/sublime-text-3/Packages state path: /home/vladislav/.config/sublime-text-3/Local zip path: /opt/sublime_text/Packages zip path: /home/vladislav/.config/sublime-text-3/Installed Packages ignored_packages: ["Vintage"] pre session restore time: 0.126302 startup time: 0.303447 first paint time: 0.333066 reloading plugin Default.auto_indent_tag reloading plugin Default.block reloading plugin Default.comment reloading plugin Default.convert_syntax reloading plugin Default.copy_path reloading plugin Default.delete_word reloading plugin Default.detect_indentation reloading plugin Default.duplicate_line reloading plugin Default.echo reloading plugin Default.exec reloading plugin Default.fold reloading plugin Default.font reloading plugin Default.goto_line reloading plugin Default.history_list reloading plugin Default.indentation reloading plugin Default.install_package_control reloading plugin Default.kill_ring reloading plugin Default.mark reloading plugin Default.new_templates reloading plugin Default.open_context_url reloading plugin Default.open_in_browser reloading plugin Default.pane reloading plugin Default.paragraph reloading plugin Default.paste_from_history reloading plugin Default.profile reloading plugin Default.quick_panel reloading plugin Default.run_syntax_tests reloading plugin Default.save_on_focus_lost reloading plugin Default.scroll reloading plugin Default.set_unsaved_view_name reloading plugin Default.settings reloading plugin Default.show_scope_name reloading plugin Default.side_bar reloading plugin Default.sort reloading plugin Default.swap_line reloading plugin Default.switch_file reloading plugin Default.symbol reloading plugin Default.transform reloading plugin Default.transpose reloading plugin Default.trim_trailing_white_space reloading plugin Default.ui reloading plugin CSS.css_completions reloading plugin Diff.diff reloading plugin HTML.encode_html_entities reloading plugin HTML.html_completions reloading plugin 0_package_control_loader.00-package_control reloading plugin Package Control.1_reloader reloading plugin Package Control.2_bootstrap reloading plugin Package Control.Package Control plugins loaded Package Control: Skipping automatic upgrade, last run at 2018-02-23 12:31:44, next run at 2018-02-23 13:31:44 or after Package Control: Fetching list of available packages and dependencies Platform: linux-x64 Sublime Text Version: 3143 Package Control Version: 3.3.0 Package Control: Download Debug URL: https://packagecontrol.io/channel_v3.json Timeout: 30 Resolved IP: 50.116.34.243 Resolved IPv6: 2600:3c02:e000:42::1 Package Control: Urllib Debug Proxy http_proxy: https_proxy: proxy_username: proxy_password: Package Control: Found system CA bundle at /usr/lib/ssl/certs/ca-certificates.crt (233394 bytes) Package Control: Urllib HTTPS Debug General Connecting to packagecontrol.io on port 443 Package Control: Urllib HTTPS Debug General Upgrading connection to SSL using CA certs file at /home/vladislav/.config/sublime-text-3/Packages/User/Package Control.merged-ca-bundle Using hostname "packagecontrol.io" for TLS SNI extension Successfully upgraded connection to packagecontrol.io:443 with SSL Using TLSv1/SSLv3 with cipher ECDHE-RSA-AES128-SHA Server SSL certificate: subject: CN=packagecontrol.io subject alt name: packagecontrol.io, www.packagecontrol.io expire date: Nov 27 23:59:59 2019 GMT Certificate validated for packagecontrol.io Package Control: Urllib HTTPS Debug Write GET /channel_v3.json HTTP/1.1 Accept-Encoding: bzip2,gzip,deflate Connection: Keep-Alive Host: packagecontrol.io User-Agent: Package Control v3.3.0 Package Control: Connection went away while trying to download https://packagecontrol.io/channel_v3.json, trying again Package Control: Urllib Debug Proxy http_proxy: https_proxy: proxy_username: proxy_password: Package Control: Found system CA bundle at /usr/lib/ssl/certs/ca-certificates.crt (233394 bytes) Package Control: Urllib HTTPS Debug General Connecting to packagecontrol.io on port 443 Package Control: Urllib HTTPS Debug General Upgrading connection to SSL using CA certs file at /home/vladislav/.config/sublime-text-3/Packages/User/Package Control.merged-ca-bundle Using hostname "packagecontrol.io" for TLS SNI extension Successfully upgraded connection to packagecontrol.io:443 with SSL Using TLSv1/SSLv3 with cipher ECDHE-RSA-AES128-SHA Server SSL certificate: subject: CN=packagecontrol.io subject alt name: packagecontrol.io, www.packagecontrol.io expire date: Nov 27 23:59:59 2019 GMT Certificate validated for packagecontrol.io Package Control: Urllib HTTPS Debug Write GET /channel_v3.json HTTP/1.1 Accept-Encoding: bzip2,gzip,deflate Connection: Keep-Alive Host: packagecontrol.io User-Agent: Package Control v3.3.0 Package Control: Connection went away while trying to download https://packagecontrol.io/channel_v3.json, trying again Package Control: Urllib Debug Proxy http_proxy: https_proxy: proxy_username: proxy_password: Package Control: Found system CA bundle at /usr/lib/ssl/certs/ca-certificates.crt (233394 bytes) Package Control: Urllib HTTPS Debug General Connecting to packagecontrol.io on port 443 Package Control: Urllib HTTPS Debug General Upgrading connection to SSL using CA certs file at /home/vladislav/.config/sublime-text-3/Packages/User/Package Control.merged-ca-bundle Using hostname "packagecontrol.io" for TLS SNI extension Successfully upgraded connection to packagecontrol.io:443 with SSL Using TLSv1/SSLv3 with cipher ECDHE-RSA-AES128-SHA Server SSL certificate: subject: CN=packagecontrol.io subject alt name: packagecontrol.io, www.packagecontrol.io expire date: Nov 27 23:59:59 2019 GMT Certificate validated for packagecontrol.io Package Control: Urllib HTTPS Debug Write GET /channel_v3.json HTTP/1.1 Accept-Encoding: bzip2,gzip,deflate Connection: Keep-Alive Host: packagecontrol.io User-Agent: Package Control v3.3.0 Package Control: Connection went away while trying to download https://packagecontrol.io/channel_v3.json, trying again Package Control: Urllib Debug Proxy http_proxy: https_proxy: proxy_username: proxy_password: Package Control: Found system CA bundle at /usr/lib/ssl/certs/ca-certificates.crt (233394 bytes) Package Control: Unable to download https://packagecontrol.io/channel_v3.json after 3 attempts

20Tauri commented 6 years ago

The TLS 1.2 problem has been reported few week ago on my plugin repository.

On Windows, the curl or wget tips not work. Because, PackageControl looks for curl instead of curl.exe. Unfortunatly is not the only problem (curl seem to work but really really slowly). n haven't investigate more.

To allow TLS 1.2 on old windows versions, microsoft has publish a fix KB4019276. On error, it will be great, if you can suggest the users to install it or to use curl.

FichteFoll commented 6 years ago

Note that this shouldn't be an issue for end users that only use the default channel. This will only surface if they added a custom repository to Package Control's settings that requires making API calls to github.

Edit: Ah, it appears you are distributing your package in a packages.json that was added to the default channel's repositories list and reference a release download url which appears to reject non-TLSv1.2 requests as well.

umamibeef commented 6 years ago

I'm having this issue on macOS High Sierra 10.13.4 with a fresh installation of Sublime Text 3 when attempting to install DoxyDoxygen. Anything I can add to help debug the issue further?

naoyeye commented 6 years ago

@spicybeef uninstall Package Control then reinstall, it works fine for me. maybe you can try. :)

umamibeef commented 6 years ago

@naoyeye I removed it from /Users/myusername/Library/Application Support/Sublime Text 3/Installed Packages and restarted Sublime but I get the same issue.

Package Control: Skipping automatic upgrade, last run at 2018-03-29 22:46:50, next run at 2018-03-29 23:46:50 or after ignored packages updated to: ["DoxyDoxygen", "Vintage"] reloading settings Packages/User/Package Control.sublime-settings reloading settings Packages/User/Preferences.sublime-settings Package Control: Error downloading package. HTTP exception InvalidCertificateException (Host github.com returned an invalid certificate ([SSL: TLSV1_ALERT_PROTOCOL_VERSION] tlsv1 alert protocol version (_ssl.c:548))) downloading https://github.com/20Tauri/DoxyDoxygen/releases/download/0.63.3/ST3_DoxyDoxygen.sublime-package. error: Package Control