From mboxrd@z Thu Jan 1 00:00:00 1970 From: Elliott Seyler Subject: Bug: org-babel-clojure broken due to cider-nrepl API update [8.3.2 (release_8.3.2-164-g50a182.dirty @ /usr/share/emacs/site-lisp/org/)] Date: Sat, 10 Oct 2015 03:11:14 -0700 Message-ID: Mime-Version: 1.0 Content-Type: multipart/alternative; boundary=001a114389ec53a9500521bd530b Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:34624) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Zkr88-0001Mc-MT for emacs-orgmode@gnu.org; Sat, 10 Oct 2015 06:11:58 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Zkr87-0001jC-1D for emacs-orgmode@gnu.org; Sat, 10 Oct 2015 06:11:56 -0400 Received: from mail-vk0-x232.google.com ([2607:f8b0:400c:c05::232]:36102) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Zkr86-0001j8-RN for emacs-orgmode@gnu.org; Sat, 10 Oct 2015 06:11:54 -0400 Received: by vkgc187 with SMTP id c187so1223834vkg.3 for ; Sat, 10 Oct 2015 03:11:54 -0700 (PDT) List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org Sender: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org To: emacs-orgmode@gnu.org --001a114389ec53a9500521bd530b Content-Type: text/plain; charset=UTF-8 Due to a recent change in the cider-nrepl API, org-babel integration with Clojure broke. This can be seen here (https://github.com/clojure-emacs/cider/issues/1302) and here (https://github.com/clojure-emacs/cider/issues/1295#issuecomment-137052682). To use the function declaration as an example, this: (declare-function nrepl-sync-request:eval "ext:nrepl-client" (input &optional ns session)) needs to be swapped for this: (declare-function nrepl-sync-request:eval "ext:nrepl-client" (input connection session &optional ns)) As a workaround in the meantime, I modified the nrepl-sync-request:eval call in org-babel-execute:clojure as follows: (nrepl-sync-request:eval expanded (cider-current-connection) (cider-current-session) (cider-current-ns)) That got my system working properly. On a tangential note, I wonder if it might be acceptable to drop the option to use SLIME for Clojure execution. If I'm remembering correctly, I don't believe SLIME is supported by Clojure anymore. All Emacs integration these days goes through CIDER and nREPL. It's likely safe to abandon ob-clojure's SLIME support, at this point. See the first paragraph of the CIDER Github page (https://github.com/clojure-emacs/cider). Thanks, Elliott "Seylerius" Seyler Emacs : GNU Emacs 24.5.1 (x86_64-unknown-linux-gnu, GTK+ Version 3.16.6) of 2015-09-09 on foutrelis Package: Org-mode version 8.3.2 (release_8.3.2-164-g50a182.dirty @ /usr/share/emacs/site-lisp/org/) current state: ============== (setq org-export-backends '(odt md latex icalendar html ascii) org-hide-leading-stars t org-reveal-mathjax t org-tab-first-hook '(org-hide-block-toggle-maybe org-babel-hide-result-toggle-maybe org-babel-header-arg-expand) org-speed-command-hook '(org-speed-command-default-hook org-babel-speed-command-hook) org-occur-hook '(org-first-headline-recenter) org-metaup-hook '(org-babel-load-in-session-maybe) org-html-format-drawer-function '(lambda (name contents) contents) org-log-done t org-latex-format-inlinetask-function 'org-latex-format-inlinetask-default-function org-confirm-shell-link-function 'yes-or-no-p org-ascii-format-inlinetask-function 'org-ascii-format-inlinetask-default org-latex-format-headline-function 'org-latex-format-headline-default-function org-startup-indented t org-after-todo-state-change-hook '(org-clock-out-if-current) org-latex-format-drawer-function '(lambda (name contents) contents) org-odt-format-headline-function 'org-odt-format-headline-default-function org-from-is-user-regexp nil org-src-mode-hook '(org-src-babel-configure-edit-buffer org-src-mode-configure-edit-buffer) org-agenda-before-write-hook '(org-agenda-add-entry-text) org-babel-pre-tangle-hook '(save-buffer) org-trigger-hook '(org-depend-trigger-todo) org-mode-hook '(#[nil "\300\301\302\303\304$\207" [org-add-hook change-major-mode-hook org-show-block-all append local] 5] #[nil "\300\301\302\303\304$\207" [org-add-hook change-major-mode-hook org-babel-show-result-all append local] 5] org-babel-result-hide-spec org-babel-hide-all-hashes org-minor-modes-hook) org-archive-hook '(org-attach-archive-delete-maybe) org-ascii-format-drawer-function '(lambda (name contents width) contents) org-odt-format-inlinetask-function 'org-odt-format-inlinetask-default-function org-ctrl-c-ctrl-c-hook '(org-babel-hash-at-point org-babel-execute-safely-maybe) org-enforce-todo-dependencies t org-cycle-hook '(org-cycle-hide-archived-subtrees org-cycle-hide-drawers org-cycle-show-empty-lines org-optimize-window-after-visibility-change) org-reveal-mathjax-url "file:///home/emhs/MathJax/MathJax.js" org-babel-tangle-lang-exts '(("clojure" . "clj") ("emacs-lisp" . "el") ("elisp" . "el")) org-confirm-elisp-link-function 'yes-or-no-p org-metadown-hook '(org-babel-pop-to-session-maybe) org-odt-format-drawer-function '(lambda (name contents) contents) org-blocker-hook '(org-block-todo-from-children-or-siblings-or-parent org-depend-block-todo) org-html-format-headline-function 'org-html-format-headline-default-function org-html-format-inlinetask-function 'org-html-format-inlinetask-default-function org-clock-out-hook '(org-clock-remove-empty-clock-drawer) ) --001a114389ec53a9500521bd530b Content-Type: text/html; charset=UTF-8

Due to a recent change in the cider-nrepl API, org-babel integration

with Clojure broke. This can be seen here

(https://github.com/clojure-emacs/cider/issues/1302) and here

(https://github.com/clojure-emacs/cider/issues/1295#issuecomment-137052682). To

use the function declaration as an example, this:


(declare-function nrepl-sync-request:eval "ext:nrepl-client" (input

&optional ns session))


needs to be swapped for this:


(declare-function nrepl-sync-request:eval "ext:nrepl-client" (input

connection session &optional ns))


As a workaround in the meantime, I modified the nrepl-sync-request:eval

call in org-babel-execute:clojure as follows:


(nrepl-sync-request:eval expanded

(cider-current-connection)

(cider-current-session)

(cider-current-ns))


That got my system working properly.


On a tangential note, I wonder if it might be acceptable to drop the

option to use SLIME for Clojure execution. If I'm remembering correctly,

I don't believe SLIME is supported by Clojure anymore. All Emacs

integration these days goes through CIDER and nREPL. It's likely safe to

abandon ob-clojure's SLIME support, at this point. See the first

paragraph of the CIDER Github page (https://github.com/clojure-emacs/cider).


Thanks,


Elliott "Seylerius" Seyler


Emacs : GNU Emacs 24.5.1 (x86_64-unknown-linux-gnu, GTK+ Version 3.16.6)

of 2015-09-09 on foutrelis

Package: Org-mode version 8.3.2 (release_8.3.2-164-g50a182.dirty @ /usr/share/emacs/site-lisp/org/)


current state:

==============

(setq

org-export-backends '(odt md latex icalendar html ascii)

org-hide-leading-stars t

org-reveal-mathjax t

org-tab-first-hook '(org-hide-block-toggle-maybe

org-babel-hide-result-toggle-maybe

org-babel-header-arg-expand)

org-speed-command-hook '(org-speed-command-default-hook

org-babel-speed-command-hook)

org-occur-hook '(org-first-headline-recenter)

org-metaup-hook '(org-babel-load-in-session-maybe)

org-html-format-drawer-function '(lambda (name contents) contents)

org-log-done t

org-latex-format-inlinetask-function 'org-latex-format-inlinetask-default-function

org-confirm-shell-link-function 'yes-or-no-p

org-ascii-format-inlinetask-function 'org-ascii-format-inlinetask-default

org-latex-format-headline-function 'org-latex-format-headline-default-function

org-startup-indented t

org-after-todo-state-change-hook '(org-clock-out-if-current)

org-latex-format-drawer-function '(lambda (name contents) contents)

org-odt-format-headline-function 'org-odt-format-headline-default-function

org-from-is-user-regexp nil

org-src-mode-hook '(org-src-babel-configure-edit-buffer

org-src-mode-configure-edit-buffer)

org-agenda-before-write-hook '(org-agenda-add-entry-text)

org-babel-pre-tangle-hook '(save-buffer)

org-trigger-hook '(org-depend-trigger-todo)

org-mode-hook '(#[nil "\300\301\302\303\304$\207"

[org-add-hook change-major-mode-hook org-show-block-all

append local]

5]

#[nil "\300\301\302\303\304$\207"

[org-add-hook change-major-mode-hook

org-babel-show-result-all append local]

5]

org-babel-result-hide-spec org-babel-hide-all-hashes

org-minor-modes-hook)

org-archive-hook '(org-attach-archive-delete-maybe)

org-ascii-format-drawer-function '(lambda (name contents width) contents)

org-odt-format-inlinetask-function 'org-odt-format-inlinetask-default-function

org-ctrl-c-ctrl-c-hook '(org-babel-hash-at-point

org-babel-execute-safely-maybe)

org-enforce-todo-dependencies t

org-cycle-hook '(org-cycle-hide-archived-subtrees org-cycle-hide-drawers

org-cycle-show-empty-lines

org-optimize-window-after-visibility-change)

org-reveal-mathjax-url "file:///home/emhs/MathJax/MathJax.js"

org-babel-tangle-lang-exts '(("clojure" . "clj") ("emacs-lisp" . "el")

("elisp" . "el"))

org-confirm-elisp-link-function 'yes-or-no-p

org-metadown-hook '(org-babel-pop-to-session-maybe)

org-odt-format-drawer-function '(lambda (name contents) contents)

org-blocker-hook '(org-block-todo-from-children-or-siblings-or-parent

org-depend-block-todo)

org-html-format-headline-function 'org-html-format-headline-default-function

org-html-format-inlinetask-function 'org-html-format-inlinetask-default-function

org-clock-out-hook '(org-clock-remove-empty-clock-drawer)

)


--001a114389ec53a9500521bd530b--