emacs-jupyter / jupyter

An interface to communicate with Jupyter kernels.
GNU General Public License v3.0
934 stars 92 forks source link

Loading jupyter among the babel languages produces an error #460

Open arael opened 1 year ago

arael commented 1 year ago

Here is my config:

(org-babel-do-load-languages 'org-babel-load-languages '(
    (gnuplot . t)
    (latex . t)
    (python . t)
    (jupyter . t)
    (shell . t)
    (dot . t)))

Here is the error:

Debugger entered--Lisp error: (json-number-format 5)
  signal(json-number-format (5))
  json-read-number()
  json-read()
  json-read-from-string("0.00s - Debugger warning: It seems that frozen mod...")
  jupyter-read-plist-from-string("0.00s - Debugger warning: It seems that frozen mod...")
  jupyter-available-kernelspecs(nil)
  org-babel-jupyter-aliases-from-kernelspecs()
  byte-code("\300 \210\301\302\303\"\210\301\304\305\"\210\306\307!\207" [org-babel-jupyter-aliases-from-kernelspecs add-hook org-export-before-processing-hook org-babel-jupyter-setup-export org-export-before-parsing-hook org-babel-jupyter-strip-ansi-escapes provide ob-jupyter] 3)
  require(ob-jupyter)
  org-babel-do-load-languages(org-babel-load-languages ((gnuplot . t) (latex . t) (python . t) (jupyter . t) (shell . t) (dot . t)))
  eval((org-babel-do-load-languages 'org-babel-load-languages '((gnuplot . t) (latex . t) (python . t) (jupyter . t) (shell . t) (dot . t))) nil)
  elisp--eval-last-sexp(nil)
  eval-last-sexp(nil)
  funcall-interactively(eval-last-sexp nil)
  call-interactively(eval-last-sexp nil nil)
  command-execute(eval-last-sexp)

I had to comment the (jupyter . t) line, otherwise I cannot export org files to anything, including pdf files.

If the jupyter line is not commented and I try to export an org file, for example to a pdf, I get this error in the Messages buffer:

json-read-number: Invalid number format: 5

Emacs version: 28.2 OS: Arch Linux

guibor commented 1 year ago

I have experienced the same issue as well

danielpopescu commented 1 year ago

the documentation clearly states it needs to be added last in the list... (org-babel-do-load-languages 'org-babel-load-languages '( (gnuplot . t) (latex . t) (python . t) (shell . t) (dot . t) (jupyter . t) ))

is that helping?

arael commented 1 year ago

@danielpopescu I tried this but it does not solve the problem. I get the same error that I have posted in the initial report. Thank you for the suggestion though.

TomCC7 commented 1 year ago

same here

TomCC7 commented 1 year ago

so from my end, it looks like commenting out the org-babel-jupyter-override-src-block will solve the issue. Here's my current configuration:

(use-package! jupyter
  :config
  (org-babel-do-load-languages
   'org-babel-load-languages
   '((emacs-lisp . t)
     (python . t)
     (jupyter . t)))
  (setq ob-async-no-async-languages-alist '("jupyter-python" "jupyter-julia")))

;; (use-package ob-jupyter
;;   :config
;;   ;; use LANG intead of jupyter-LANG in src block
;;   (org-babel-jupyter-override-src-block "python")
;;   (org-babel-jupyter-override-src-block "julia"))