-
Notifications
You must be signed in to change notification settings - Fork 59
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
Cannot retrieve list of official docsets #178
Comments
This looks like a dup of #132. It is a connectivity issue trying to fetch that json. I can't reproduce it in my machine, and even we could add some protection so it doesn't crash hard (PRs accepted), I'm not sure it'd solve the real issue. |
I'll try again today, see if there is problem in reproducing the error. |
Same problem here! Any suggestions? |
depending on your elisp debugging skills you can try to call There's this reported bug https://emacs.stackexchange.com/questions/32950/why-isnt-url-http-end-of-headers-set-correctly-when-using-url-automatic-caching, but the behavior is different, so it being |
Yes I've already looked at this post from stack before. There really is no reason to not get any data back since the url is live. |
Weird, when I step through the debugger on url-retrieve in url.el I can get to the point where I select a docset to install. But then I get a "Bad URL" error. Outside of the debugger I don't even make it to that step. |
That's some odd behaviour. My Elisp fu is not good enough to tackle this. |
It works. Thank you. |
Alternative: You can also go to the list of feeds here. Click the desired xml file. Then download the tgz file from any of the url's from the xml file. Once you have the file downloaded, you can run |
Here's another alternative. I rewrote the function so that it uses curl but returns the same result. Works on my machine (TM) (defun helm-dash-read-json-from-url (url)
(shell-command (concat "curl -s " url) "*helm-dash-download*")
(with-current-buffer "*helm-dash-download*"
(json-read))) |
I've replaced all the URL functions with calls to curl, since it seems curl's proxy handling is a bit better than url.el's. The change is available here in the |
I think that this a problem with (url-retrieve "https://api.github.com/repos/Kapeli/feeds/contents"
(lambda (status) (switch-to-buffer (current-buffer))))) As a side note, if we do want to switch to |
Nope, this fails here as well.
Yes, that would make much more sense. I'm not familiar with |
What do you mean by "here"? I just meant that evaluating that using (switch-to-buffer (url-retrieve-synchronously "https://api.github.com/repos/Kapeli/feeds/contents")) doesn't work. |
I mean that evaluating this expression does not return any content on this PC, since |
Maybe I've misunderstood, but this makes me think that the proxy is not the issue. Because |
Interesting, here it's definitely the proxy. |
@jeeger , I'd buy into it if it's gated. I don't want to make an extra dependency for everyone. Total naive question. Is a fix for proxy over http possible by plumbing some elisp? or we'd need hardcore networking knowledge for that? upstream emacs would benefit from this fix if we'd have it. |
I've had a look at the Using Edit: What makes this more complicated is that it seems this bug only occurs with redirects. |
I've narrowed down that
helm-install-docset
executeshelm-dash-read-json-from-url
that seems to fail to retrieve data from "https://api.github.com/repos/Kapeli/feeds/contents/" with the error:Wrong type argument: integer-or-marker-p, nil
. Possibly a change in the wayurl-http-end-of-headers
is set/not-set?The text was updated successfully, but these errors were encountered: