Closed phaebz closed 10 years ago
Similar error for me:
Debugger entered--Lisp error: (esqlite-error "Stream buffer has been deleted")
signal(esqlite-error ("Stream buffer has been deleted"))
(let ((msg (apply (quote format) fmt args))) (signal (quote esqlite-error) (list msg)))
esqlite--error("Stream buffer has been deleted")
(if (buffer-live-p buf) nil (esqlite--error "Stream buffer has been deleted"))
(let ((buf (process-buffer stream))) (if (buffer-live-p buf) nil (esqlite--error "Stream buffer has been deleted")) (save-current-buffer (set-buffer buf) (esqlite--read-csv-with-deletion nullvalue)))
(let (nullvalue) (cond ((process-get stream (quote esqlite-stream-continue-prompt)) (setq nullvalue (process-get stream (quote esqlite-null-value)))) (t (setq nullvalue (esqlite--temp-null query)) (process-put stream (quote esqlite-null-value) nullvalue) (esqlite-stream--send-command-0 stream (format ".nullvalue %s" nullvalue)))) (esqlite-stream--send-sql-0 stream query) (let ((buf (process-buffer stream))) (if (buffer-live-p buf) nil (esqlite--error "Stream buffer has been deleted")) (save-current-buffer (set-buffer buf) (esqlite--read-csv-with-deletion nullvalue))))
esqlite-stream-read(#
I see that https://github.com/mhayashi1120/Emacs-esqlite code says that hasn't been tested in mac osX.
@phaebz or @dhaley Could you test esqlite on its own to make sure that it works by itself? (some elisp knowledge might be needed ) Thanks!
Both errors seem due to buffers being killed (or the sqlite process inside them) and then trying to access them for the searches.
Just blind guessing, some general debugging tips:
Maybe this will give a clue of when/why it's failing.
As discussed in https://github.com/mhayashi1120/Emacs-esqlite/issues/2#issuecomment-32716187, the helm-dash-install-docset
function was autocompleting to "Python_3" when the docset on disk is saved as "Python 3.docset". Now I changed the helm-dash-common-docsets
to ("Python 3" "Django")
but when doing helm-dash
no completions are done...
Hi,
please, mac users, could you try to use the 'sqlite-cmd-with-shell-commands' branch?
Thanks!
I tried with the mentioned branch 'sqlite-cmd-with-shell-commands' and completion works!
The default action 'Go to doc' does not work, though. Do I need a dedicated emacs docset viewer? Anyways, I do not get an error, so how can we debug this further?
it uses `browse-url'. you can try to open a browser and then try helm-dash again. for google-chrome it fails to start the proces on 1 box of mine. haven't dug into that yet.
Go to doc works for Django, but not for Python[ _]3. I am trying to reinstall the docset and see if that helps. This might be related to comment https://github.com/mhayashi1120/Emacs-esqlite/issues/2#issuecomment-32720743?
@phaebz how did it go with the reinstall?
@areina
I saw the changes of sqlite-cmd-with-shell-commands
branch.
It seems that use synchronous shell-command-to-string
.
If you could still consider to use esqlite as the library, please use esqlite-read
function to read sql result safely.
This function works well on Mac at least travis environment.
https://travis-ci.org/mhayashi1120/travis-test/builds/17344862
FYI
Please consider to use esqlite-prepare
function to construct SQL query.
This function make it easy to escape SQL text, or LIKE text.
aha. We though about the change to shell-command just as a temporary solution.
We'll take a look at the esqlite-read and esqlite-prepare.
@kidd Nothing changed with the reinstall, but I noticed another strange thing. After successful installation into Python 3.docset
on disk, the Messages buffer showed
Docset installed. Add "x Python 3" to helm-dash-common-docsets or helm-dash-docsets.
I even tried it with the x
in front :) still the same, I am getting the completions but the 'browse-url' does not open the Python 3 doc where it does so with Django
docset
FWIW, I edebugged the 'browse-url' and it gets called with the url
"file:///Users/user/.docsets/Python 3.docset/Contents/Resources/Documents/library/itertools.html#//apple_ref/cpp/Module/itertools"
Maybe that blank has to be escaped somehow?
aha, yes, it's quite likely this is what's happening. This branch changed the way we called sqlite, so we may have introduced some bugs.
Thanks for your time!. We'll fix it asap, and maybe try the solution proposed by @mhayashi1120 .
Hi @mhayashi1120,
I'm updating the code to use esqlite-read. I see that esqlite is not updated in melpa with the latest changes, could you check it, please?
thanks
Using
helm-dash
after installingPython_3
docset viahelm-dash-install-docset
on OS X gives the error (see below for full Backtrace):How can I debug this further? Is relevant information missing?
Used Versions: helm-dash from MELPA (20140114.1710) esqlite from MELPA (20140115.728) emacs 24.3.1 (x86_64-apple-darwin)
Backtrace: