I'd like to learn more about how PyInstaller avoids rebuilding targets
when they're newer than the sources. I have a specific and two more
general questions. For context, I'm doing a onedir build with MERGE to
create a group of related apps.
In exploring how the process works, I touched a .py file in one of the
apps, and noticed that the output showed "building because x.py
changed". I then ran it again, and it said "building because x.pyc
changed". OK, so I ran it yet again, and it still said "building
because x.pyc changed". What file(s) is PyInstaller checking the .pyc
against?
That aside, it seems that the analysis phase is doing a lot of work,
even when nothing has changed among the sources. I can imagine that
it's checking all the dependency files as well, but still I wonder.
Finally, in the collection phase, PyInstaller insists that the target
directory be empty (and will remove it if the -y option is set). I'd
like the option to have it not replace files that are the same or newer
than the files it wants to put there.
Something I've done in the past was, before starting Analysis, check all
the source files against the targets, and just exit if there was no
newer source. This isn't as thorough a check, since some of the
dependency files might have changed as well.
I'm willing to dig into the PyInstaller code, and even submit a patch if
I come up with something that might be generally useful. I'd like some
guidance as to what the design is and where to look in the code.
Thanks,
--
Don Dwiggins
Advanced Publishing Technology
--
You received this message because you are subscribed to the Google Groups
"PyInstaller" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/pyinstaller?hl=en.