emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: Colin Baxter <m43cap@yandex.com>
To: Tim Cross <theophilusx@gmail.com>
Cc: emacs-orgmode@gnu.org
Subject: Re: refresh not working for org-mode from git
Date: Sat, 24 Sep 2022 09:14:47 +0100	[thread overview]
Message-ID: <87k05tw5mw.fsf@yandex.com> (raw)
In-Reply-To: <86sfkhmu1l.fsf@gmail.com> (Tim Cross's message of "Sat, 24 Sep 2022 11:12:18 +1000")


Thank you for your detailed reply.

>>>>> Tim Cross <theophilusx@gmail.com> writes:

    > Colin Baxter <m43cap@yandex.com> writes:

    >> Recently, if I use C-c C-x ! to refresh org-mode after a git
    >> pull, I get an error. I then have to close down emacs and launch
    >> again. This rather defeats the object of C-c C-x !. This appears
    >> to have happened only recently

    ----------------- snip ---------------------------------

    > I wasn't aware that command even existed. However, I suspect it
    > will cause issues in your use case. I'm not sure it is a good
    > command to actually have given the complexities associated with
    > getting a clean org build.

    > In many cases, you may not run into issues - especially if you do
    > a git pull frequently. However, I can see various scenarios which
    > will lead to inconsistent builds. I suspect the error you are
    > seeing is the result of recent work to try and identify builds
    > which are likely to result in an inconsistent 'mixed' version
    > build.

That could well be the case here because the technique used to work up
until quite recently (~2 weeks)

    > Detecting such scenarios is difficult and relies on a
    > number of heuristics, one of which is to flag a problem if the
    > loaded version and the target build version don't match.

    > A lot would depend on how you build (re-compile) org mode after
    > doing a git pull. If you compile it in a separate Emacs instance,
    > you should have less issues and reloading after the build will
    > likely work. However, if your trying to build org mode within the
    > running Emacs where you have already loaded org mode, I suspect
    > you will run into issues. You have a slight 'chicken and egg'
    > issue and will run into similar issues as the common mixed build
    > problems.

Normally, I use `M-x vc-dir' to update from git, then `M-x compile'
followed by `make clean' and `make'. Finally, update org-mode in the
same emacs with an org-mode buffer present. As I said, it used to work
well. 

    > One thing which might work would be to ensure you run the reload
    > command with the option to load from uncompiled sources BEFORE you
    > run the build process and then re-run the load command after the
    > build (loading compiled versions this time).

Yes, I will try that. And I will also ring all the other changes to see
what happens --- if anything. 

    > I have no idea how things might break given the new native
    > compilation modes in Emacs. I suspect it will cause all sorts of
    > issue with your workflow.

I have avoided problems here by not using native compilation. I did try
it once in the past, but I didn't think it was worth the candle since
frankly I didn't notice any change in emacs performance, possibly
because I only do simple things with emacs.

    > Personally, I always update org in a fresh instance of Emacs
    > (before any org functionality is loaded) and I would always
    > restart Emacs after updating a major packages like org mode. I'm
    > not sure why we have the reload command - I suspect it may be a
    > hang over from earlier attempts to work around the mixed build
    > problem. I do suspect that given new native compilation modes and
    > the additional complexity ths can cause, combined with increasing
    > org mode complexity, the notion of being able to pull down a new
    > version, build and reload it within one emacs instance is perhaps
    > flawed or at the very least, is more complex than just forcing a
    > reload of org *.elc files.

Indeed. Emacs seems to have became a rather complex beast in recent
years. Perhaps it was ever thus.

Best wishes,

Colin.


  reply	other threads:[~2022-09-24  8:18 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-09-23 17:59 refresh not working for org-mode from git Colin Baxter
2022-09-24  1:12 ` Tim Cross
2022-09-24  8:14   ` Colin Baxter [this message]
2022-09-24  3:22 ` Ihor Radchenko
2022-09-24  8:19   ` Colin Baxter
2022-09-24  9:31     ` Colin Baxter
2022-09-26 14:34       ` Ihor Radchenko

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=87k05tw5mw.fsf@yandex.com \
    --to=m43cap@yandex.com \
    --cc=emacs-orgmode@gnu.org \
    --cc=theophilusx@gmail.com \
    /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).