emacs-orgmode
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Why am I being told to use "straight.el"?


From: Max Nikulin
Subject: Re: Why am I being told to use "straight.el"?
Date: Sat, 22 Apr 2023 10:29:12 +0700
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.10.0

On 21/04/2023 23:17, Colin Baxter wrote:

I will address the other points in your reply the next time I update
org-mode. In the meantime, I can answer some of your other questions
immediately.

Thanks for info. I have asked for org git branch. I am almost sure it is main, but to be sure

   git -C ~/git/org-mode branch --show-current
   git -C ~/git/org-mode describe

If the issue was caused by specific order of file changes, even in the current state output of the following command may be used for attempt to replay updates by git checkout + make

   git -C ~/git/org-mode reflog --max-count 20

GNU Emacs 30.0.50 (build 1, i686-pc-linux-gnu, X toolkit, cairo version
1.14.8, Xaw3d scroll bars) of 2023-04-19.

I assume you build it yourself. Do you run emacs binary from source+build tree or from install tree (make install)? The latter has .el.gz files instead of .el, and at least in Emacs-28 it affects behavior of compilation of ELPA packages by package.el.

Another point is that the origin of your issue might be in built-in version of Org. It has `org-assert-version' as well. Perhaps there is a bug in make rules for Org in Emacs tree. Could you, please, try the following for your *current* emacs build?

    emacs -Q -l org-agenda

1. emacs <RET>

Till `org-reload' C-c C-x ! at the step 10 org is not involved. Does you init file loads some Org component or some Org buffer is created at startup? To be sure

    M-: (featurep 'org)

I assume that ~/git/org-mode/lisp is added to `load-path' in your init file.

2. M-x vc-dir <RET>
3. Navigate to ~/git/org-mode.
4. + (to pull)
5. M-x compile <RET>
6. make clean <RET>
7. make <RET>

I am sorry for my ignorance, I usually run make from a terminal independent of emacs. Doesn't M-x compile runs make, so I expect it is the same as

    make; make clean; make

and it is a bit strange for me.

8. In an eshell buffer navigate to ~/git/emacs/lisp.

Typo! I meant navigate to ~/git/org-mode/lisp.

9. rm *.elc <RET>

Why did you decided to manually delete *.elc files? I have lost at which step you got the warning. I expect that "make clean" should remove .elc files.

10. Open any org-mode file or buffer and do C-c C-x !

`org-reload' immediately after removing of .elc files sounds strange for me. At least since previous command was "make", not "make clean", org-loaddefs.el should exist at this moment, so uncompiled version should be loaded, but prefix argument should be used to load Org uncompiled

    C-u C-c C-x !

If org has not been loaded before the step 10, then `org-reload' should-not be necessary at all.

11. Return to vc-dir or eshell
12. make clean <RET>
13. make <RET>
15. Return to org-mode buffer and do C-c C-x ! again.
16. Update complete, usually with no warnings or errors.

Is org-loaddefs loaded from ~/git/org-mode/lisp? It is a sanity check for working Org and more interesting when it is broken.

(car (assoc "/org-loaddefs.el" load-history (lambda (a b) (string-match-p b a))))

However I am unsure if it is relevant to your case.

Next time when you get that warning, please, confirm that

    emacs -Q -L ~/git/org-mode/lisp -l org-agenda

is not affected, so the problem is solely with reloading of updated version without emacs restart.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]