emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: Aaron Ecay <aaronecay@gmail.com>
To: "Charles C. Berry" <ccberry@ucsd.edu>
Cc: emacs-orgmode@gnu.org
Subject: Re: R code block produces only partial output
Date: Thu, 28 Aug 2014 01:24:40 -0400	[thread overview]
Message-ID: <87lhq9tcdj.fsf@gmail.com> (raw)
In-Reply-To: <alpine.OSX.2.00.1408231558290.2651@charles-berrys-macbook.local>

Hi Chuck,

Thanks for your feedback.  The patch you’ve sent looks basically correct
to me.

2014ko abuztuak 23an, "Charles C. Berry"-ek idatzi zuen:

[...]

> The old hacky way works pretty well most of the time. I suspect that it 
> will be hard to get folks to really test a new ob-R.el in advance of its 
> moving to maint. ./lisp/test-ob-R.el only has one :session src block and 
> a few other src blocks...

Agreed, more tests are something I want to add to this patch before
landing it, and I’ll try to encourage that in the future (from myself
most of all!).

> 
> I was thinking of having a drop in replacement for the each of the two 
> functions that are changed and maybe selecting which version to use with 
> defalias. If there is a slicker way to enable a user to revert to an 
> earlier version without having good git skills, fine. But I think the 
> possibility of breaking something that someone needs and not noticing till 
> the changes go to maint is high.

I think that having two different implementations will in the long run
increase the surface area susceptible to bugs.  We should do our best
and then release what we have when we feel it’s stable.

(I admit to being a bit bewildered by org’s release process; I just use
whatever is in git and deal with the occasional breakage.  The big no-no
is letting a bug slip into an emacs-bundled version of Org, since that
will live for years.  But it seems like it takes a long time even after
reaching maint for code to make its way into emacs.)


[...]

> 
> Not sure I get why the sentinel file is needed, 

The execution of the R commands is asynchronous (from emacs’ POV); org
polls for the existence of this file to let it know that R has finished
its execution.

> but the patch here uses on.exit(file.create(...)) to ensure that that
> file is created. One hiccup (not sure if it exists in master,too) is
> that starting a remote session and then trying to run src blocks from
> a buffer for a local file will hang (because a local temp file is used
> for sentinel). So there is still stuff to do.

Hmm, OK.


[...]

> 
> Putting objects in userspace is considered poor practice. FWIW, CRAN 
> disallows it. `environment-hacking' as you call it underlies much of R. If 
> you must create and hold variables use the attach(NULL,name="org-vars") 
> trick.

I’ll defer to your judgment.

Thanks again for the feedback and revised patch.  I’ll try to get a few
tests written this weekend, and study the remote vs. local files
business.

-- 
Aaron Ecay

  reply	other threads:[~2014-08-28  5:25 UTC|newest]

Thread overview: 41+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-08-04 11:18 R code block produces only partial output Andreas Kiermeier
2014-08-04 11:53 ` Eric Schulte
2014-08-04 12:23   ` Andreas Kiermeier
2014-08-04 13:10     ` Eric Schulte
2014-08-05  0:46       ` Andreas Kiermeier
2014-08-05  4:00         ` John Hendy
2014-08-05  4:31           ` Andreas Kiermeier
2014-08-05 18:05       ` Charles Berry
2014-08-05 19:02         ` Eric Schulte
2014-08-05 19:11           ` John Hendy
2014-08-05 19:57             ` Nick Dokos
2014-08-05 20:10               ` Nick Dokos
2014-08-05 22:21             ` Charles C. Berry
2014-08-06  3:32           ` Aaron Ecay
2014-08-06 11:30             ` Eric Schulte
2014-08-07  6:00               ` Aaron Ecay
2014-08-07 17:42                 ` Charles C. Berry
2014-08-07 18:06                   ` Aaron Ecay
2014-08-07 18:42                     ` Charles C. Berry
2014-08-07 19:06                       ` Thomas S. Dye
2014-08-09  8:54                       ` Rainer M Krug
2014-08-16  5:05                     ` Aaron Ecay
2014-08-16 18:50                       ` Charles C. Berry
2014-08-16 20:58                         ` Aaron Ecay
2014-08-17  6:03                           ` Achim Gratz
2014-08-19  0:13                             ` Aaron Ecay
2014-08-19  5:36                               ` Achim Gratz
2014-08-23  8:32                                 ` Aaron Ecay
2014-08-23  9:24                                   ` Andreas Kiermeier
2014-08-23 17:10                                   ` Aaron Ecay
2014-08-23 18:35                                   ` Thomas S. Dye
2014-08-23 19:37                                     ` Ista Zahn
2014-08-24  0:10                           ` Charles C. Berry
2014-08-28  5:24                             ` Aaron Ecay [this message]
2014-09-01  5:00                               ` Aaron Ecay
2014-09-01 16:08                                 ` Charles C. Berry
2014-08-09  8:48                   ` Rainer M Krug
2014-08-06  1:11         ` Andreas Kiermeier
2014-08-06  2:21           ` Charles C. Berry
2014-08-06  3:24             ` Aaron Ecay
2014-08-06 15:59               ` Charles C. Berry

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.orgmode.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87lhq9tcdj.fsf@gmail.com \
    --to=aaronecay@gmail.com \
    --cc=ccberry@ucsd.edu \
    --cc=emacs-orgmode@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).