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 14:47:30 -0500 Message-ID: <6847.1352922450@alphaville.americas.hpqcorp.net> 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> <9608.1352874199@alphaville> Reply-To: nicholas.dokos@hp.com Return-path: Received: from eggs.gnu.org ([208.118.235.92]:59316) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TYivw-0006zW-Hq for emacs-orgmode@gnu.org; Wed, 14 Nov 2012 14:47:39 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1TYivt-00029e-FU for emacs-orgmode@gnu.org; Wed, 14 Nov 2012 14:47:36 -0500 Received: from g1t0027.austin.hp.com ([15.216.28.34]:12005) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TYivt-00029T-7x for emacs-orgmode@gnu.org; Wed, 14 Nov 2012 14:47:33 -0500 In-Reply-To: Message from Nick Dokos of "Wed, 14 Nov 2012 01:23:19 EST." <9608.1352874199@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: > 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. > The plot thickens. If I create a branch with 5cb80c7 as the tip and then immediately apply the later patch that fixes the error, then things are working as they should. Here is the procedure in case somebody wants to try to replicate: o First, save the later commit as a patch to apply: git show 86e515d > patch.to.apply o Then go back in time: git checkout -b foo 5cb80c7 That gets you back to 7.8.03 and when I try the code block with emacs -q -l /path/to/minimal.emacs.that.requires.ob-sh /path/to/loris.org I get an error: /bin/bash: /scpc:nick@lefou.usa.hp.com:/tmp/sh-script-6207TKx: No such file or directory o I then apply the patch: git apply patch.to.apply and retry: I get the remote host name as I should. Which tells me that the tmp file error is a red herring and the real breakage occurred after 5cb80c7, probably through a commit that touched ob-sh.el (although that's far from guaranteed). Here's that list: $ git log --oneline -- lisp/ob-sh.el 86e515d fix remote execution w/empty shebang header arg 70dd119 Massive code clean-up. 966447c Don't use `org-flet' in ob-awk.el and ob-sh.el 8eb5843 Add punctuation at the end of the first line of docstrings. Code cleanup. 63b5f8f replace flet/labels with org-flet/org-labels ecd0562 Fix the master branch. 6e306f6 Fix copyright years in maint. de42649 Manually revert maint to e85080. 73bb18b Manually revert to the Release 7.8.04 tag. 38c5045 Fix copyright years. 6e534f9 Manually revert back to commit e85080. 5cb80c7 apply :shebang and :padline to shell script execution ... So unless somebody sees something wrong with the above procedure, we are a bit closer to finding the culprit, but it's certainly not who I thought it was. Nick