Closed aspiers closed 3 years ago
Thank you
I have this issue again. A rm -rf ~/.emacs.d/straight/{build,build-cache.el,repos}
sometimes fixed it. There is no visible issues again using the test-cases (apart from the first test-case failing for some reason). On macOS, exec-path-from-shell
is required to correct the PATH
to include the package manager's makeinfo
command as the built-in version is too old to build org-mode.
This doesn't occur with the minimal configuration above. If I then switch to my config from the minimal config in-place without deleting anything then org-mode is not rebuilt. I assume this means something in my config is touching org-mode's files timestamps but only sometimes? (also only org-mode nothing else is ever rebuilt)
2020-11-20 23:01:40
darwin
prerelease (HEAD, origin/develop) 7b5a930 %cs
GNU Emacs 27.1 (build 1, x86_64-apple-darwin, NS appkit-2022.10 Version 11.0.1 (Build 20B29)) of 2020-11-18
2020-11-20 23:03:15
darwin
prerelease (HEAD, origin/develop) 7b5a930 %cs
GNU Emacs 27.1 (build 1, x86_64-apple-darwin, NS appkit-2022.10 Version 11.0.1 (Build 20B29)) of 2020-11-18
2020-11-20 23:08:29
darwin
prerelease (HEAD, origin/develop) 7b5a930 %cs
GNU Emacs 27.1 (build 1, x86_64-apple-darwin, NS appkit-2022.10 Version 11.0.1 (Build 20B29)) of 2020-11-18
@jdek: Sorry to hear that. It most likely is a configuration error. If you would like to link me to your config, I'd be happy to take a look at it.
Appreciate everyone's patience. This is a thorny one. Here's what I'm thinking is at the root of all this:
:no-byte-compile t
and :no-autoloads t
by default, as the :build
step takes care of these and is most likely what is causing the org-loaddefs.el changed on disk
prompt and is redundant work.:build
being rebuilt when it is a dependency of another package (@jdek: I'm seeing this now with your config with org-journal declaring Org as a dependency.) Though, I think there's a chance #76 could resolve this as well.I'll implement #76 first and keep everyone posted. Thanks again for your patience and the information you've provided.
Looks like you have a plan of action on this @progfolio, sharing an additional test case below in case it's helpful.
Also it seems like some people have resolved when testing with straight-bug-report
only to still experience the issue with their config. I found that if I changed the test case code without using a fresh :user-dir
it seemed to trick straight-bug-report
. But as soon as I ran the same test case twice in a fresh :user-dir
the problem would present it self again.
Not sure what the cause is but thought it might be an explanation why the problem seems to go away when testing.
2020-12-16 09:16:41
darwin
prerelease (HEAD -> develop, origin/develop) 0f283e2 2020-11-04
GNU Emacs 28.0.50 (build 1, x86_64-apple-darwin19.6.0, NS appkit-1894.60 Version 10.15.7 (Build 19H2)) of 2020-12-12
The latest develop branch is byte compiling in a separate process and has the altered Org mode recipes. Hoping that takes care of this. Appreciate any testing/feedback.
This appears to work for me. I had to update my custom org-plus-contrib recipe to use the new built-in one, which appears to work well. Thank you!
I'll gladly test later. What's the recommended use-package/straight-use form for this now?
On Sat, 2 Jan 2021 at 07:54, Aaron Jensen notifications@github.com wrote:
This appears to work for me. I had to update my custom org-plus-contrib recipe to use the new built-in one, which appears to work well. Thank you!
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/raxod502/straight.el/issues/624#issuecomment-753440788, or unsubscribe https://github.com/notifications/unsubscribe-auth/AACYTC2OEXBNFVV6OWKHP2TSX27MBANCNFSM4TGXVASQ .
I just switched to (use-package org-plus-contrib)
and other packages to :after org-plus-contrib
and it seems to work fine.
but org-plus-contrib takes care of loading org? What a minefield. I've kind of given up trying to understand it;)
On Sat, 2 Jan 2021 at 12:14, Adam Spiers notifications@github.com wrote:
I just switched to (use-package org-plus-contrib) and other packages to :after org-plus-contrib and it seems to work fine.
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/raxod502/straight.el/issues/624#issuecomment-753461156, or unsubscribe https://github.com/notifications/unsubscribe-auth/AACYTCZRXSPEUNRMBGZPKODSX353BANCNFSM4TGXVASQ .
If you look at the latest source, you'll see that straight.el translates both org
and org-plus-contrib
into recipes which start with (org ...)
and both have "lisp/*.el"
in their :files
property, but only org-plus-contrib
also has "contrib/lisp/*.el"
in its :files
property.
I've no idea what that means or the consequences. I'll just use-package org-plus-contrib and see how it goes. Many thanks.
On Sat, 2 Jan 2021, 14:22 Adam Spiers, notifications@github.com wrote:
If you look at the latest source, you'll see that straight.el translates both org and org-plus-contrib into recipes which start with (org ...) and both have "lisp/.el" in their :files property, but only org-plus-contrib also has "contrib/lisp/.el" in its :files property.
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/raxod502/straight.el/issues/624#issuecomment-753473136, or unsubscribe https://github.com/notifications/unsubscribe-auth/AACYTC7O33ZK5KBVUMLK2P3SX4MZVANCNFSM4TGXVASQ .
Thank you everyone for you patience and testing efforts. Glad to see things are working. I'll consider this bug closed for now. If the issue crops up again for anyone, feel free to leave a comment and we can reopen it.
@reilyrg: I understand the confusion around Org vs "Org plus contrib". In Org 9.5, the plan (as I understand it) is to break out the contrib
packages into their own separate repository.
This should simplify things and hopefully clear up some of the confusion. If you're interested in the details:
Thank goodness. org-plus-contrib is quite frankly bizarre. Unfortunately, in the absence of some upstream packaging changes, I do not think it is possible to smooth over the unintuitive behavior in straight.el
(really, org-plus-contrib should be a virtual package consisting of "org" and "org-contrib" separately, but there's no concept of virtual packages or anything like that).
@progfolio One thing I notice with the new recipes is that it is now possible for (straight--convert-recipe 'org-plus-contrib)
to return a recipe whose package is not named org-plus-contrib
-- I believe such a situation never happened before. I don't know if that would cause any problems, and clearly your implementation is working well enough so far, but I wanted to call your attention to this in case something does crop up later.
I don't know if it's something particular to my setup, but I still frequently have to rebuild org.
I tracked this down. Because I launch Emacs on a mac in different ways, invocation-directory
and invocation-name
can vary. When they vary, org rebuilds because of:
Instead, I hardcoded the recipe with EMACS=emacs
which is sufficient for me and it no longer rebuilds unnecessarily
(straight-use-package
`(org
:type git
:repo "https://code.orgmode.org/bzg/org-mode.git"
:depth full
:build (:not autoloads)
:local-repo "org"
:pre-build ,(list
(concat (when (eq system-type 'berkeley-unix) "g")
"make")
"autoloads"
"EMACS=emacs")
:files (:defaults "lisp/*.el"
"contrib/lisp/*.el")))
Maybe those variables should be evaluated at build time, rather than at recipe expansion time? I can't think of a good reason we'd want to rebuild Org just because a different path to Emacs is used. Perhaps if it's a different Emacs version, but in that case the build cache will be invalidated anyway.
Agreed. I'll look into it.
What's wrong
I am now seeing a
Building org...
message from straight.el every single time I launch emacs. Presumably this is related to the recent addition of support for:build
steps. Since the build steps do things like compiling the whole manual, this takes something like one or two minutes and therefore drastically increases the waiting time before emacs is ready for use.Directions to reproduce
I've added some debug to the bit of
straight-use-package
which calculatesmodified
and it is showing that(straight--package-might-be-modified-p recipe no-build)
returns98
, so presumably it's something in there which is going wrong.But if you can't reproduce this and it's looking like this might be related to some peculiarity of my config, given that I have a decent amount of elisp hacking experience, rather than trying to create a minimal test case I guess it might be quicker if you can confirm I'm on the right track and I'll keep digging in
straight--package-might-be-modified-p
.Version information
master
ofstraight.el