From mboxrd@z Thu Jan 1 00:00:00 1970 From: Nick Dokos Subject: Re: Erroneous "No such file or directory" with babel and remote dir Date: Wed, 14 Nov 2012 01:23:19 -0500 Message-ID: <9608.1352874199@alphaville> References: <87y5kiq71h.fsf@slate.zedat.fu-berlin.de> <87vcfapgfy.fsf@bzg.ath.cx> <87a9wd56i6.fsf@slate.zedat.fu-berlin.de> <878vbwhczx.fsf@Rainer.invalid> <87a9wc1uki.fsf@slate.zedat.fu-berlin.de> <87vcf0ft1s.fsf@Rainer.invalid> <87mx0chswg.fsf@slate.zedat.fu-berlin.de> <87r4pnpehe.fsf@Rainer.invalid> <87fw4dlei8.fsf@slate.zedat.fu-berlin.de> <7557.1352869451@alphaville> Reply-To: nicholas.dokos@hp.com Return-path: Received: from eggs.gnu.org ([208.118.235.92]:44613) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TYWNh-0003eL-VK for emacs-orgmode@gnu.org; Wed, 14 Nov 2012 01:23:28 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1TYWNe-0006NE-Sl for emacs-orgmode@gnu.org; Wed, 14 Nov 2012 01:23:25 -0500 Received: from g1t0026.austin.hp.com ([15.216.28.33]:14993) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TYWNe-0006NA-LN for emacs-orgmode@gnu.org; Wed, 14 Nov 2012 01:23:22 -0500 In-Reply-To: Message from Nick Dokos of "Wed, 14 Nov 2012 00:04:11 EST." <7557.1352869451@alphaville> 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: Loris Bennett , emacs-orgmode@gnu.org Nick Dokos wrote: > > Back in the days of release_7.01h, the following used to work: > > > > ,------------------------------------------ > > | #+begin_src sh :dir /loris@othercomputer: > > | hostname > > | #+end_src > > `------------------------------------------ > > > > Currently it produces the error: > > > > ,--------------------------------------------------- > > | apply: Wrong type argument: number-or-marker-p, "" > > `--------------------------------------------------- > > BTW, I get no error with the (more or less) current version of org I'm using: Org-mode version 7.9.2 (release_7.9.2-582-g6d099e @ /home/nick/elisp/org-mode/lisp/) I just get the wrong answer: instead of evaluating on the remote, babel evaluates it locallly. > > I have had another go at bisecting this problem and came up with this: > > > > ,------------------------------------------------------------------------------------------------------------- > > | 9c878a8290c071fbe5e97bc33c300ef2f07d6153 is the first bad commit > > | commit 9c878a8290c071fbe5e97bc33c300ef2f07d6153 > > | Author: Dan Davison > > | Date: Mon Aug 30 09:34:05 2010 -0700 > > | > > | babel: Fix temporary file processing in the remote execution case. > > | > > | * ob.el (org-babel-temp-file): Don't use babel temporary > > | directory in remote case; use make-temp-file with remote file > > | name so that temp file is guaranteed not to exist previously > > | on remote machine. > > | (org-babel-tramp-localname): New function to return local name > > | portion of possibly remote file specification > > | > > | * ob-R.el (org-babel-R-evaluate-external-process): Respond to > > | changes in `org-babel-temp-file'; pass local file name to > > | remote R process. > > | (org-babel-R-evaluate-session) Respond to > > | changes in `org-babel-temp-file'; pass local file name to > > | remote R process. > > | > > | :040000 040000 b31e072cf6b2951e95b7956d907303e7a04a8cfd 5f794ada52cceb0614fe7962a399f7e549759003 M lisp > > `------------------------------------------------------------------------------------------------------------- > > > > Does that help anyone any further? > > > > I don't think so: afaict, both 7.01h (which did not contain this patch) > and 7.02 (which did) do the right thing (at least with your simple > script above). Something else broke it. > I checked successive versions from 7.01h onwards and found breakage between release_7.8 and release_7.9. So I bisected and came up with this as the bad commit: ,---- | commit 5cb80c7e5b9bcae180b799d2a49c78d529e029f0 | Author: Eric Schulte | Date: Mon Mar 12 13:23:53 2012 -0400 | | apply :shebang and :padline to shell script execution | | * lisp/ob-sh.el (org-babel-execute:sh): Pass all params to subroutine. | (org-babel-sh-evaluate): Apply :shebang and :padline to shell script | execution. `---- Reverting it caused a merge conflict that I didn't have the patience to resolve. But I made branches, one with this commit as its tip and one with its predecessor: git checkout -b foo 5cb80c7 git checkout -b bar de09874 Testing on foo gives me an error, testing on bar gives the correct result. So I'm pretty sure this commit introduced the problem. Eric has applied a partial fix since then which gets rid of the error but still gives the wrong answer (not Eric's fault: he followed my suggestion, but I was treating the symptom, not the disease). But I think this commit is the place that deserves more scrutiny. HTH, Nick