emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
* make update2 and ob-comint.el bugs
@ 2016-04-24  1:57 Charles C. Berry
  2016-04-24  3:19 ` Charles C. Berry
  0 siblings, 1 reply; 3+ messages in thread
From: Charles C. Berry @ 2016-04-24  1:57 UTC (permalink / raw)
  To: Org-Mode mailing list



Summary: ob-comint.elc compiled with `make update2' fails, but 
ob-comint.elc byte compiled via dired or with `emacs-lisp-byte-compile' 
succeeds.

===

I recently pushed a fix [1] for ob-comint.el or so I thought. See [2] for 
info on the bug.

First, I tested the fix on my own system by eval'ing ob-comint.el and 
running some tests (including `make test' FWIW).

I also byte-compiled the code using `dired-do-byte-compile', loaded that 
and ran more tests. All good.

Then I pushed that commit to master.

When I did `make update2' the compiled fixes did not work. But loading 
`ob-comint.el' works, and compiling via `dired-do-byte-compile' works and 
loading the result also works.

What?!

So I tried to undo the damage with two more commits, but in each case the 
`make update2' step generated code that was buggy.

I see that `make update2' uses `byte-recompile-directory' and indeed 
running that gives a different (larger) ob-comint.elc than does 
`dired-do-byte-compile'. But both eventually use `byte-compile-file', and 
AFAICS the optimization level is the same in both cases. So I am baffled.

Any advice on how to produce code that works when compiled with `make 
update2' or just to understand what gives here is appreciated.

Best,

Chuck

[1] commit e42454088ff1176cce9cc65a4bd1c6f17fe958ec
[2]<http://permalink.gmane.org/gmane.emacs.orgmode/106557>

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: make update2 and ob-comint.el bugs
  2016-04-24  1:57 make update2 and ob-comint.el bugs Charles C. Berry
@ 2016-04-24  3:19 ` Charles C. Berry
  2016-04-24  4:29   ` Charles C. Berry
  0 siblings, 1 reply; 3+ messages in thread
From: Charles C. Berry @ 2016-04-24  3:19 UTC (permalink / raw)
  To: Org-Mode mailing list

On Sat, 23 Apr 2016, Charles C. Berry wrote:

>
>
> Summary: ob-comint.elc compiled with `make update2' fails, but ob-comint.elc 
> byte compiled via dired or with `emacs-lisp-byte-compile' succeeds.
>
> ===
>

A bit more info:

It appears that the crucial difference is that my init file has

 	(require 'ess-site)

in it. If I start `emacs -q' and byte-compile I get one file. If I 
(require 'ess-site) and compile again, I get a different *.elc file.

The latter *.elc file works.

If anyone knows what ess is adding that results in ob-comint.elc that 
works, I am keen to know what it might be.

Best,

Chuck

[rest deleted]

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: make update2 and ob-comint.el bugs
  2016-04-24  3:19 ` Charles C. Berry
@ 2016-04-24  4:29   ` Charles C. Berry
  0 siblings, 0 replies; 3+ messages in thread
From: Charles C. Berry @ 2016-04-24  4:29 UTC (permalink / raw)
  To: Org-Mode mailing list

On Sat, 23 Apr 2016, Charles C. Berry wrote:

> On Sat, 23 Apr 2016, Charles C. Berry wrote:
>
>> 
>> 
>> Summary: ob-comint.elc compiled with `make update2' fails, but 
>> ob-comint.elc byte compiled via dired or with `emacs-lisp-byte-compile' 
>> succeeds.
>> 
>> ===
>>


To answer my own questions:

ob-comint.el needed to (require 'tramp) and to declare a number of 
tramp functions that the macro `with-parsed-tramp-file-name' invokes.

The compilations I did interactively had tramp loaded as a result of 
loading ess-site, which is why ob-comint.el compiled to produce a working
`org-babel-comint-eval-invisibly-and-wait-for-file'.

I'll check and test a bit more to be sure I've got a patch that really 
works after `make update2' and then push it.

I guess the lesson is to batch compile or use `emacs -q' or a stripped 
down .emacs for interactive compilation to avoid issues like this.

Sorry for messing up the commit history with so many commits for such a 
simple (in the end) issue.

Chuck

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2016-04-24  4:29 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-04-24  1:57 make update2 and ob-comint.el bugs Charles C. Berry
2016-04-24  3:19 ` Charles C. Berry
2016-04-24  4:29   ` Charles C. Berry

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).