Related to #69
@joaomoreno
To confirm @takuan-osho @JFLavidalle @vilinski: Do you get the end of central directory record signature not found error when you try to browse extensions or when you try to install an extension?
@takuan-osho
@joaomoreno When trying to install an extension in my case.
@vilinski
@joaomoreno me too, trying to install, browsing works always
@JFLavidalle
@joaomoreno Browsing always works but installation failed.
Ping @maritz
Thanks!
Is there any way we can assist in debugging this? Can you replicate it somehow?
I face this problem while sitting behind a corporate proxy that requires a custom root cert to be installed.
@maritz Just to confirm, did you try this build?
I'm also behind corporate proxy with authentication. It works at home, but no luck with installing any extensions on work PC.
Couldn't download the linked build
@joaomoreno I have not. I would need a linux x64 build to test it, though.
+1 same here. "end of central directory record signature not found"
Version 0.10.6
Ok. We're in the middle of releasing 0.10.7. Please give it a try with that release and let's tackle it then if not fixed.
It's working on 0.10.7-insider
Excellent news. @takuan-osho @JFLavidalle @vilinski, maybe you guys can let us know if the issue's fixed for you as well?
still no version update this week?
The plan is to push the next stable version 0.10.8 next Monday.
The insiders 0.10.7 version is already available, pls see https://blogs.msdn.microsoft.com/vscode/2016/02/01/introducing-insiders-builds/
@joaomoreno : I can confirm that the issue is fixed for me on release 0.10.7-insider.
Great news !
OK, got confirmation from 2 people that it is fixed, so closing this. Thanks!
confirm working with stable and insiders builds. Finally can install extensions
For me the issue is NOT fixed. I tried 0.10.8 and 0.10.8 Insider.
"end of central directory record signature not found" still persists. I am behind corporate proxy.
I uninstalled previous versions of VS Code before installing.
What can I do to get around this issue?
@thoros1179 Did you configure the http.proxy and http.proxyStrictSSL settings?
I configured http.proxy and https.proxy. The extensions can be browsed but fail to install. I also tried http.proxyStrictSSL: false but it doesn´t change anything. The error persists.

What extension are you trying to install?
I tried different extensions, such as Go, Powershell (the first two shown when browsing with ext install), but also some Angular JavaScript and TypeScript Snippets extensions. None of them can be installed.
Any chance I can use the same proxy you do?
I´m afraid this isn´t possible ;-) I will reconsider the issue with our proxy admin tomorrow. Maybe there is some other connection that is still blocked from our proxy. I will update you on the progress. Thank you.
Ok so now that I solved the first issue on the '#' illegal character in the declaration of the proxy + user & password url. I ended up with the 'end of central directory record signature not found' error.
I managed to track it down to the error in the DNS resolution of vortex.data.microsoft.com which is clearly blocked by our corporate proxy. for confidentiality reasons
Awesome, great to know this @kikokikok.
@thoros1179 can you please check whether your proxy is also blocking vortex.data.microsoft.com?
One other thing that might be of interest is the fact that a lot of the resolutions have to be performed through the proxy any DNS resolution of external public domains from the internal are not allowed.
The proxy is doing the resolution silently. I didn't check the code but clearly seems like it might perform DNS resolution directly which might fail on corporate secured internal networks
According to our proxy admin "microsoft.com" is completely unblocked.
@thoros1179
The download URL Code tries to GET is, in the example case of the Go extension:
https://lukehoban.gallery.vsassets.io/_apis/public/gallery/publisher/lukehoban/extension/Go/0.6.27/assetbyname/Microsoft.VisualStudio.Services.VSIXPackage?install=true
Can you get your proxy admin to look at whether that URL is blocked?
I checked the matter again with our proxy admin today. It turned out that the https certificate for vsassets.io is invalid. This is causing our proxy to refuse the connection (and yes, I am using http.proxyStrictSSL:false). You can see that in chrome when you surf to vsassets.io Chrome shows an striked out https-prefix in the addressbar because of the invalid certificate. The certificate provided by the website is targeted to "market.visualstudio.com" instead.
We set up our proxy to ignore the certificate for now, now it works for us, but maybe someone should look into this.
Thank you.
Awesome, I will take that information to the people in charge. Many thanks for the patience!
Actually, I can't confirm invalid certificate. On my machine, the certificate does appear to be valid and useful for the *.vsassets.io domain.
https://lukehoban.gallery.vsassets.io/_apis/public/gallery/publisher/lukehoban/extension/Go/0.6.27/assetbyname/Microsoft.VisualStudio.Code.Manifest

If I just enter "vsassets.io" i get an invalid certificate. Right now I am at home so it´s no problem of our corporate proxy.

Well, that's because the certificate is valid for *.vsassets.io and not vsassets.io itself. This is OK, since Code never reaches onto the bare domain, but always to subdomains of it.
Ok, well I´m no expert in web things myself. I can only tell you what our proxy guy said. In fact it is working now that he told our proxy to ignore invalid certificates on vsassets.io or maybe .vsassets.io, I don´t know. Thank you for your help.
:+1:
Getting that error on macOS 10.12.1 .
Visual Studio Code v 1.7.1
@joaomoreno

I'm also seeing this behind a corporate proxy on all extensions as of today.
Version 1.8.0-insider (1.8.0-insider)
4721762a2ac1e21f1e33094e810d4888052f3d8d
2016-11-29T07:03:09.021Z
@joaomoreno I'm not seeing any network requests in the VS Code developer tools window, so I'm unsure of what might be causing this. If I break in net.js at line 729 where the call to createWriteReq() starts, I get the following data parameter on Beautify (for example - it's similar on all other extensions):
"{"id":50,"type":0,"channelName":"extensions","name":"installFromGallery","arg":[{"id":"697255a9-3f36-44c8-b084-d3b91edfb23a","name":"beautify","version":"0.6.2","date":"2016-11-28T04:23:10.43Z","displayName":"beautify","publisherId":"901b401e-7657-4a33-8c9a-0854c569607e","publisher":"HookyQR","publisherDisplayName":"HookyQR","description":"Beautify code in place for VS Code","installCount":339711,"rating":4.625,"ratingCount":24,"assets":{"manifest":"https://hookyqr.gallerycdn.vsassets.io/extensions/hookyqr/beautify/0.6.2/1480306987732/Microsoft.VisualStudio.Code.Manifest","readme":"https://hookyqr.gallerycdn.vsassets.io/extensions/hookyqr/beautify/0.6.2/1480306987732/Microsoft.VisualStudio.Services.Content.Details","download":"https://hookyqr.gallerycdn.vsassets.io/extensions/hookyqr/beautify/0.6.2/1480306987732/Microsoft.VisualStudio.Services.VSIXPackage?install=true","icon":"https://hookyqr.gallerycdn.vsassets.io/extensions/hookyqr/beautify/0.6.2/1480306987732/Microsoft.VisualStudio.Services.Icons.Default?redirect=true","iconFallback":"https://hookyqr.gallerycdn.vsassets.io/extensions/hookyqr/beautify/0.6.2/1480306987732/Microsoft.VisualStudio.Services.Icons.Default","license":"https://hookyqr.gallerycdn.vsassets.io/extensions/hookyqr/beautify/0.6.2/1480306987732/Microsoft.VisualStudio.Services.Content.License"},"properties":{"dependencies":[],"engine":"^1.6.0"}},true]}"
Opening the download URL in that parameter in my browser downloads the zip file successfully.
I am getting this issue when attempting to install extensions. I am behind a corporate proxy and have "http.proxyStrictSSL": false.
I'm also seeing the same issue, behind a corp proxy, on version 1.7.2 - this worked previously as I've downloaded extensions and I'm getting this error when trying to update the extension.
Does it reproduce with 1.6.1?
Yes, I am seeing the same issue:
Ignore this, it seems like it was an issue our end. Our "proxy guy" did some magic and it seems to be working. Thanks anyway.
@joaomoreno Using 1.6 it works perfectly. I was able to update my F# and C/C++ extensions without any issues. Attached is the proof.
@joaomoreno However, when I run the full installer from the website, it begins to fail again. I will try blowing away the whole directory and doing a fresh install. When I ran it from the attached zip, it ran fine. I'll keep you posted. The same issue happens with the Insiders build which is in a different directory btw.
@joaomoreno And now the zip you sent me isn't working, but it was. ¯_(ツ)_/¯
@joaomoreno So it looks like it isn't version specific, but package specific. I tried different extensions (some lesser used ones) and the extensions installed fine. I think there is either archive corruption repo side or there is something wrong with they way the extensions are being decompressed. Some of the more frequently used extensions seem to fail pretty reliably. Attached is the proof. The first one fails because I try to install the most popular Python extension. The other ones succeed, including the second most popular python extension. The successful extension installs seem to have less hits/downloads. Hope that helps.
So strange. Are you behind a _bad_ internet connection?
@joaomoreno Not sure if you're referring to me, but I am on my corporate internet. There is a proxy and a firewall along with a virus called McAfee Antivirus installed on every computer. I will check my setup at the house tonight and see if I get the same issues. It's just weird because it seems like it only affects certain packages that are the most popular. I can download all of the less popular packages pretty easily.
I did some research previously and electron and atom have a similar error but different circumstances. The error, as far as I know, is related to a failure in the archiving process according to ubuntu's forums. Their workaround was to blow away the npm cache and remove .electron and .atom: link
Not sure if it is an inherited issue from electron... but figured I'd mention it.
Cool, let me know how the experiment at home goes.
end of central directory record signature not found vs code
Is there to figure it out?
FWIW, updating to 1.8 solved it for me.
Nope, not fixed.
Updating existing extensions worked initially once I updated.
But as soon as I installed a new extension, same problem.
@joaomoreno connection-wise: no firewall. Using VPN from my private VPS, like I always do.
@AntouanK So it worked, and then stopped working, in the same version? That sounds like your network started blocking those requests. Any chance you can reach the network administrator and whitelist some domains?
It worked for me, because of the wrong http proxy config in my Setting!
@joaomoreno Why would you assume it's the network? As far as I see it has nothing to do with that.
I normally use a VPN, and I also get the problem when using my home connection, without the VPN.
No firewall, no proxy or anything like that.
Like I said, it updated the extensions once I updated the app, and then one I tried to install a new extension, I got the same error again.
Network seems to be irrelevant.
Is there a console where we can see any errors in the VS Code runtime?
PS right now I'm on my mobile phone connection, and it fails again. It cannot be a network issue.
My assumption comes from the fact that sometimes it works, sometimes it doesn't. It's always the same code, so something else must be changing.
You can open the Developer Tools (F1, Developer tools) to see if anything comes up there.
@joaomoreno But error remains on different networks. And like I said, it's home connections, nothing preventing an update.
Interesting.
I got another extension to update just now. Update went through just fine.
Immediately I tried to install another extension, error cam up again once it finished downloading.
Here's the error in the console
workbench.main.js:94
end of central directory record signature not found: Error: end of central directory record signature not found,
at /Applications/Visual Studio Code.app/Contents/Resources/app/node_modules/yauzl/index.js:98:14,
at /Applications/Visual Studio Code.app/Contents/Resources/app/node_modules/yauzl/index.js:342:5,
at /Applications/Visual Studio Code.app/Contents/Resources/app/node_modules/fd-slicer/index.js:32:7,
at FSReqWrap.wrapper [as oncomplete] (fs.js:681:17)
Do you have an antivirus installed? Some Internet security software?
No.
Can you give me some curl command, to verify it's not a network issue?
Win7 x64, behind what I think is a socks 5 proxy with websense certificate. Clean install of 1.8 with
"http.proxy": "http://194.70.42.240:8080",
"http.proxyStrictSSL": false
in c:\users\
Getting 'end of central directory record signature not found' trying to install extension.
Uninstalled and tried 1.6 standalone posted earlier.
Browsing extensions initialially resulted in 'Server returned 403'. Added username and password to http.proxy config then it seemed to work. Downloaded the 'C# for Visual Studio Code' extension, appears to work, (C# source file is now highlighted).
Checking the log though shows
Starting OmniSharp server at 16/12/2016, 15:03:07
Target: c:\_Home\Development\Workspaces\Web\AspNetCoreTesting\HelloWorld
OmniSharp server started
Path: C:\Users\mfreeman\.vscode\extensions\ms-vscode.csharp-1.5.3\bin\omnisharp\OmniSharp.exe
PID: 328676
The system cannot find the path specified.
[ERROR] Error: OmniSharp server load timed out. Use the 'omnisharp.projectLoadTimeout' setting to override the default delay (one minute).
cntlm install insists that the proxy is non-authenticating and that I don't need it. I don't know what's going on. I have a similar issue with the Atom text editor, yet in my standalone node.js install npm works fine with a simple proxy config.
In 1.8 adding username and password to the proxy config results in a warning String does not match the pattern of "^https?://([^:](:[^@])?@)?([^:]+)(:\d+)?/?$|^$"
In 1.6 after installing the 'C# for Visual Studio Code' extension, then reloading to active it, in the output windows I see
Updating C# dependencies...
Platform: win32, x86_64 (win7-x64)
Downloading package 'OmniSharp (.NET 4.6 / x64)' Failed at stage: downloadPackages
Error: connect ETIMEDOUT 13.88.145.72:443
Finished
[ERROR]: C# Extension failed to install the debugger package
@joaomoreno It works at home. I guess the corporate network has trust issues with vs code and are corrupting packages. I am still not sure why it works on some packages and not others. If it is a corporate proxy/network issue, I would expect the failure rate to be somewhat deterministic. I will write up a ticket with ITSupport here and see if I can dig deeper into the issue.
Same issue. I was just installing this at work and considering moving over from Sublime and ran into this issue.

Behind a corporate proxy but I'm able to configure npm with the same proxy just fine. Every other Microsoft app uses the IE settings and works just fine too. Also successfully used vagrant and docker and pull images through the proxy.
Same issue behind corporate proxy. Tried out with both 1.8.1 and 1.9.0-insider.
Also experiencing this issue behind a transparent corporate proxy while trying to install the python extension on both 1.8.1 and 1.9.0-insider. About a month ago I was able to successfully install the same extension on a different computer, so I know it used to work.
I have "http.proxyStrictSSL" set to false in my settings and no other http/proxy settings specified.
I noticed that the vsix file seems to download successfully into my temp folder. Renaming it to add the vsix extension and running "Install from VSIX" produces the same error.
I've successfully installed the XML Tools(DotJoshJohnson.xml) and AutoHotKey extensions, so the problem is definitely specific to certain extensions.
Finally managed to get around this issue (running 1.7 on one machine, 1.8 on another) by including username and password in the url:
{ "http.proxy": "https://username:password@proxyaddress:port", "http.proxyStrictSSL": false }
Hope this helps.
Adding the username and password worked for me too but really a bad idea. I don't want any file to contain a clear text password.
Agree, but was one thing that worked so stopped looking for a solution. Do have cntlm running through the organization's proxy which hashes (?) the passwords but for some reason wasn't going through. Let me know if you find a non-plaintext-passwpord solution!
@backpacked the "http.proxy" setting by default takes the value from %http_proxy% environment variable

same issue in code 1.9 behind a corporate firewall with http.proxyStrictSSL set as false
This issue stills happened on 1.10.
Same issue in Insiders 1.11 as well
Same issue "end of central directory record signature not found" here with:

Our setting for the Company-Proxy works fine with npm, Navigating the marketplace inside vscode is possible. Download via browser (IE, Chrome, Firefox) with deeper URL works, probably because of URL-Redirection. But navigating to https://vsassets.io/ brings up this error:

As I read it is possible to work-a-round this in the company proxy setting through ignoring this SSL-Error. But this is only a work-a-round. Can you please streamline the download URL with the SSL-Key URL so this glitch is solved at the root cause?
BTW: Perhaps it is a good Idea to offer the VSIX Link direct on the Marketplace Extension Page? Because there could be also other reasons for a seperate download flow.
Have some error behind proxy (on try install or update packages)

VS code version

as a workaround - download packges and install offline from .vsix (as described here )
I got the latest 1.12.x and the proxy works without flaw, even when using AD authentication. I can download the extensions without any issues now.
Good job!
On May 18, 2017, at 9:13 PM, Rafael notifications@github.com wrote:
Have some error behind proxy (on try install or update packages)
VS code version
as a workaround - download packges and install offline from .vsix (as described here )
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.
Install v 1.12,2 and all works fine
thnx!
Thanks ! Same issue on Corp firewall resolved with the latest update.
I'm running 1.13.1, and i'm having the same bug. I'm not connecting behond a proxy. The error appears when trying to install Degugger for Chrome
Same version as @rolurq when trying to update python 0.6.5 to 0.6.7
ps. I have no proxy configured.
Updated to 1.14.0, having the same issue.
updated to 1.14.2, I have the same issue. proxy setting is:
"http.proxy": "http://10.198.157.119:9400",
"http.proxyStrictSSL": false,
This may be due to corrupt local files. I wasn't able to install certain extensions but deleting ~/.config/Code/Cache, ~/.config/Code/CachedData and ~/.config/Code/Local Storage fixed it (not sure which of the specific paths is responsible, I cleared all of them)
@mninja thanks. that fixed it for me.
upgrading to 1.15.1 fixed my issue
I'm still having this issue here, even after upgrading to version 1.15.1 :(
OS: Ubuntu 16.04 LST
Version 1.15.1
Commit 41abd21afdf7424c89319ee7cb0445cc6f376959
Date 2017-08-16T17: 16: 27.618Z
Shell 1.6.6
Renderer 56.0.2924.87
Node 7.4.0
Architecture x64
Having issues in 1.16 right now. No corporate proxy whatsoever.
OS: Ubuntu 16.04 LTS
Version 1.16.0
Commit 787b31c0474e6165390b5a5989c9619e3e16f953
Date 2017-09-06T16:19:37.192Z
Shell 1.7.3
Renderer 58.0.3029.110
Node 7.9.0
Architecture x64
@mninja's suggestion worked for me.
Same issue here for some extensions on a freshly installed Ubuntu 16.04. No proxy. And unfortunately @mninja's solution does not work for me. Tried VS Code Insiders version, doesn't help. Most other extensions can be installed without problem.

Same on Windows 10, but only when I try to install the extension 'solidity' (0.0.29). Other extensions work fine. The extension itself seems to be fine as well, since nobody reported this error in that Github repo.
I'm not using proxies, whatever.
I'm also facing the same issue with newest VSCode version (1.16.1), no Proxy. I'm agree with @mninja, perhaps due to corruption of local/downloaded extension package (may be due to slow connection, behind proxy, etc...). Clearing the cache will work, or, in my case, I manually download the extension from https://marketplace.visualstudio.com/, then install the .vsix by Extensions: Install from VSIX... command.

i'm having this issue too, i just download and install vscode but, when i try to install python extension i can't, but working fine for other extension

As @mninja suggested it works.
In macOS, those folders are found inside ~/Library/Application Support/Code or ~/Library/Application Support/Code - Insiders
@inuiau My issue was exactly the same. I solved it by manually download the python extension from https://marketplace.visualstudio.com/items?itemName=donjayamanne.python, then install it from local file. See my previous comment.
And here is the documentation on how to download extension package manually:
https://code.visualstudio.com/docs/editor/extension-gallery#_common-questions
Then just rename the package extension ('VSIXPackage' in this case) to 'vsix'.
Most helpful comment
This may be due to corrupt local files. I wasn't able to install certain extensions but deleting
~/.config/Code/Cache,~/.config/Code/CachedDataand~/.config/Code/Local Storagefixed it (not sure which of the specific paths is responsible, I cleared all of them)