guile-user
[Top][All Lists]
Advanced

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

Re: Guile 3.0.7 compile cache messages


From: Zelphir Kaltstahl
Subject: Re: Guile 3.0.7 compile cache messages
Date: Wed, 2 Jun 2021 12:20:48 +0000

Hi Chris!

On 6/2/21 12:30 PM, Chris Vine wrote:
> On Wed,  2 Jun 2021 08:52:54 +0000
> Zelphir Kaltstahl <zelphirkaltstahl@posteo.de> wrote:
>> On 6/2/21 8:00 AM, Adriano Peluso wrote:
>>> Il giorno mar, 01/06/2021 alle 08.14 -0400, Olivier Dion via General
>>> Guile related discussions ha scritto:
>>>> On Mon, 31 May 2021, Zelphir Kaltstahl <zelphirkaltstahl@posteo.de>
>>>> wrote:
>>>>> Hello Guile Users!
>>>>>
>>>>> It seems my Guile (version 3.0.7, installed via GNU Guile, updated
>>>>> today) is
>>>>> doing something weird, or perhaps something correct but unexpected
>>>>> with regard
>>>>> to informing about it finding compile caches. When I run a program
>>>>> with `guile
>>>>> -L . main.scm`, it displays the following:
>>>> I also find it annoying.  I use Guile as a script language for a
>>>> video game engine in C.  This interferes with the logging system and it
>>>> annoys the hell out of me >:-)
>>> Does this bug help anyone of you ?
>>>
>>> https://debbugs.gnu.org/cgi/bugreport.cgi?bug=16364
>> To be honest my need is not as urgent as something failing because of the
>> messages, but rather a visual annoyance, that did not happen before. When I 
>> do
>> not expect a recompilation, because I did not change any code, then it is
>> surprising to see the cache messages appearing, even with auto compilation
>> switched off. For a moment I think: "Huh? Did something change?" and then 
>> "Ah,
>> it is only those always shown messages.". It did not use to do that.
>>
>> I am not sure what changed in my setting or with GNU Guile. My theory is, 
>> that
>> it is something introduced between 3.0.5 (or 4?) and 3.0.7 perhaps. Or that
>> something was changed in the way that GNU Guix installs GNU Guile and that
>> affects the caching messages somehow.
> You reported that when running  a program file of yours named 'main.scm'
> which is in your project's source directory, you get this message:
>
> $ guile -L . main.scm 
> ;;; note: source file ./logging.scm
> ;;;       newer than compiled 
> /home/user/.guix-profile/lib/guile/3.0/site-ccache/logging.go
> ;;; found fresh local cache at 
> /home/user/.cache/guile/ccache/3.0-LE-8-4.5/home/user/dev/guile/lf2-data-files/logging.scm.go
> ;;; note: source file ./file-reader.scm
> ;;;       newer than compiled 
> /home/user/.guix-profile/lib/guile/3.0/site-ccache/file-reader.go
> ;;; found fresh local cache at 
> /home/user/.cache/guile/ccache/3.0-LE-8-4.5/home/user/dev/guile/lf2-data-files/file-reader.scm.go
> 160
>
> On the face of it the warnings look reasonable and I would be surprised
> if they were something new.  You appear to have two module files
> logging.scm and file-reader.scm in your project's source directory
> /home/user/dev/guile/lf2-data-files which are newer than
> pre-compiled .go files for them which you (or guix on your behalf) have
> installed at some time in the past in guile-3.0's site-ccache,
> presumably by some kind of 'make install' operation carried out for
> your project.  When you updated logging.scm and file-reader.scm in your
> project, guile noticed this, recompiled the modules for you
> automatically and put the generated code in your local cache
> directory.  It now emits helpful warnings in consequence.
Yes, the warnings would look reasonable, if they only were shown once every
change. However, what confuses me about them is, that no matter how often I run
the same program without changing any code (!), the same messages are shown, as
if there was constantly a newer version than the cache. If I understand the
messages correctly, that is.

(I do not doubt, that the messages can be helpful, in cases, where there really
is a newer version than the cache.)

In this project I do not have any makefile yet and it is a pure GNU Guile
project. Link: https://notabug.org/ZelphirKaltstahl/lf2-data-decrypt
<https://notabug.org/ZelphirKaltstahl/lf2-data-decrypt>.

> The question is how did you get into this position?  More particulaly,
> what installed logging.go and file-reader.go in site-ccache (presumably
> 'make install') and, when logging.scm and file-reader.scm were updated,
> why didn't you recompile and reinstall your modules?
I am not sure. I am merely calling `guile -L . main` in the project root
directory and have not had any other call to it, when I noticed this behavior. I
basically did not do anything special before.
> The most immediate solution is to delete your local cache and reinstall
> your program modules.  Alternatively, I suspect from your comments that
> your normal work methods may be better served by not pre-compiling/
> installing the modules at all, and instead rely on their automatic
> compilation and installation into the local cache by guile on need.

How do I go about it? Simply removing the cache folder the messages point to?

And what commands would that alternative workflow entail?

> Possibly there is a guix issue involved but it looks more
> straightforward than that. I don't use guix.

OK : ) Thanks nevertheless!

Best regards,
Zelphir

-- 
repositories: https://notabug.org/ZelphirKaltstahl




reply via email to

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