From mboxrd@z Thu Jan 1 00:00:00 1970 From: John Hendy Subject: Re: python sessions Date: Mon, 25 Mar 2013 10:55:01 -0500 Message-ID: References: <51496061.20706@easy-emacs.de> <514AB9FC.3050601@easy-emacs.de> <87d2ut2o5m.fsf@bzg.ath.cx> <514AC116.7030408@easy-emacs.de> <877gkxrbgn.fsf@gmail.com> <87fvzko0zv.fsf@gmail.com> <22817.1364179114@alphaville> <87vc8fv671.fsf@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Return-path: Received: from eggs.gnu.org ([208.118.235.92]:52486) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UK9qS-00048u-HF for emacs-orgmode@gnu.org; Mon, 25 Mar 2013 12:02:03 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1UK9qP-0006G3-0r for emacs-orgmode@gnu.org; Mon, 25 Mar 2013 12:02:00 -0400 Received: from mail-la0-x229.google.com ([2a00:1450:4010:c03::229]:40286) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UK9qO-0006Fs-Kc for emacs-orgmode@gnu.org; Mon, 25 Mar 2013 12:01:56 -0400 Received: by mail-la0-f41.google.com with SMTP id fo12so11732193lab.14 for ; Mon, 25 Mar 2013 09:01:55 -0700 (PDT) In-Reply-To: <87vc8fv671.fsf@gmail.com> 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: Eric Schulte Cc: Bastien , nicholas.dokos@hp.com, emacs-orgmode On Mon, Mar 25, 2013 at 10:40 AM, Eric Schulte wrote: > John Hendy writes: > >> On Sun, Mar 24, 2013 at 9:38 PM, Nick Dokos wrote: >>> Eric Schulte wrote: >>> >>>> > >>>> > From participating in evaluating code throughout the discussion and >>>> > catching the comments throughout, I'd say yes, at least in terms of >>>> > how other babel languages function. In other words =#+begin_src R >>>> > :session foo= creates an R session named "foo" whereas doing the same >>>> > with =python= instead of =R= does not yield a named session. >>>> > >>>> > From what others experienced, however, the functionality was working >>>> > correctly (results were persistent across blocks and two differently >>>> > names blocks created two different sessions), just not named >>>> > correctly. >>>> > >>>> >>>> See the cond form starting at line 169 in ob-python.el. Different >>>> session functionality is used based on the `org-babel-python-mode' >>>> variable, and on the version of Emacs in use (prior to 24.1 or not). >>>> >>>> The branch taken when `org-babel-python-mode' equals 'python is >>>> certainly broken, as it never saves the name of the newly created >>>> buffer, so session re-use and use of multiple named sessions probably >>>> works only when `org-babel-python-mode' equals 'python-mode. >>>> >>> >>> That's me: org-babel-python-mode's value is python, so it's no wonder >>> it's broken given what Eric says. I'm on emacs 24.3.50 where there is >>> python.el but no python-mode.el. I tried the "cheap" workaround of >>> switching the value to python-mode, but that does a (require >>> 'python-mode) somewhere, so that option is out as well. >> >> I'm on Emacs 24.3.1 and have no python-mode.el, either (only >> python.el). My setup is working correctly (again, with the caveat of >> not having named sessions). >> > > It sounds like we have the same setup, and the following un-named > session example does not work for me. The first code block evaluates > successfully, but it doesn't appear to be having any impact on the > default session (e.g., in the *Python* buffer). > > Returns the value of x as expected. > > #+begin_src python :session > x = 1 > return x > #+end_src > > #+RESULTS: > : 1 > > #+begin_src python :session > return x > #+end_src > > #+RESULTS: > > The second code block /should/ have access to the x variable defined > previous, but instead it throws an error because x is undefined. > > Currently I'd say session support for python is completely broken. Have *any* changes been made related to python recently? See my mailing list post with reproducible example: - http://www.mail-archive.com/emacs-orgmode@gnu.org/msg68238.html This was definitely working for me with a minimal config and starting with `emacs -Q`. I cannot reproduce that example anymore. Sessions don't work any longer, named or un-named for me, and we had two data points (myself and Ista) for whom it worked (at least for named). I think something was changed that broke it for my working setup. Might be nice to figure out what that was. Is there a way to see one's local git history? Not the git log, but something like what git versions I've been hopping from/to with each successive pull? I could try and see what I was at on 3/20 when I posted that and when I last pulled? I see a change related to ob-python from Bastien on 3/19... perhaps I could switch to a commit prior to that and try again? John > > -- > Eric Schulte > http://cs.unm.edu/~eschulte