Well, I have no idea what is going on but I'm suspecting a hardware
problem. In my last reply I was confident the problem was reproducible but
as I continued to try things that proved to not be the case.

I switched to working with Chicken-5.3.0rc2 and the build there failed on
creation of modules.db, again it was very reliably reproducible. Thinking
this was maybe a race condition between the creation of the modules.db file
and the following file copy I added a little code to read the file back and
compare it. The problem went away. Unfortunately when I reverted the code
the problem did not return. That does not make any sense whatsoever.

Currently I'm able to get to where when I install the sqlite3 egg it fails
with:

Error: unterminated list

If I run the install a couple times it results in a working egg.

I'll keep chipping away at this but I don't think I have anything tangible
to offer in terms of a problem statement other than ... "Windows sucks".

On Tue, Oct 31, 2023 at 3:25 AM Peter Bex <pe...@more-magic.net> wrote:

> On Mon, Oct 30, 2023 at 05:45:28PM -0400, Matt Welland wrote:
> > Well, maybe there is a silver lining here, I can currently reliably
> > reproduce the problem!
>
> That's excellent!  Do you have to do any special steps, or does it
> simply always happen?
>
> > One hypothesis I'm looking at is replacing calls using
> with-input-from-file
> > and with-output-to-file with open-*-file ... close loops for the reading
> > and creation of the egg-info files.
>
> You're probably on the wrong track there.  AFAICT, egg-info files are
> only *created* in the foo.install.sh / foo.install.bat file, at the very
> end where (on *nix) it uses cat(1) to write into it.
>
> If the file is already empty, changing how it's read won't make a
> difference.
>
> The only way it would fail that I can see is if one presses ^C to abort
> installation at a very unlucky time.  This sounds like a race condition
> but depending on the shell, it might be that it will process that signal
> after evaluating the line that redirects stdout to the egg-info file,
> but before actually invoking cat.  Dunno, grasping at straws here :)
>
> Since you're using mingw, it's a UNIX shell at least.  Could you try
> inserting a sync(1) call at the end of the .install.sh file to see if
> that fixes things?
>
> Cheers,
> Peter
>


-- 
--
Complexity is your enemy. Any fool can make something complicated.
It is hard to keep things simple. - Richard Branson.

Reply via email to