This makes sense - the file that was always mentioned was packed with —addlist which I assume is the same mechanism as -a.
PK > On 16 Dec 2014, at 11:29 am, Shawn Laffan <shawn.laf...@unsw.edu.au> wrote: > > I had a similar case recently where a user ran CCleaner on the temp folder > while the application was open. It deleted everything in the cache folder > that was not file locked, so the cache folder still exists, along with > several of the component files. > > A bit of testing showed the .pm and other perl files are re-extracted the > next time the PAR is run, but none of the files packed using -a (an icon file > and a glade file in my case). > > I ended up adding code to the script to manually check for file existence > and, if needed, unpacking from the PAR. It's not a solution that will scale > well, but I only have two such files. Example code is below, but > PAR::par_handle is probably simpler now I look at the docs again. > > For the more general case, is there a simple means to trigger the > re-extraction of all files packed using -a? > > Regards, > Shawn. > > > > ### > require Archive::Zip; > my $icon = Path::Class::file ($ENV{PAR_TEMP}, 'inc', 'Biodiverse_icon.ico'); > my $icon_str = $icon->stringify; > > my $folder = $icon->dir; > my $fname = $icon->basename; > my $zip = Archive::Zip->new($ENV{PAR_PROGNAME}) > or die "Unable to open $ENV{PAR_PROGNAME}"; > > my $success = $zip->extractMember ( $fname, $icon_str ); > > > > On 16/12/2014 21:06, Kime Philip wrote: >> Yes, that’s what I though, just scheduled /tmp cleanup etc. but in fact it >> seems to happen more often on non-Unix … >> Certainly some cases were due to users Ctrl-Cing a first .exe run because >> they thought it was taking too long (normal for it to take longer on first >> run of a new version of course, due to unpacking) and then the cache >> building was incomplete. However, most reports are, they say, “suddenly” it >> no longer works and complains about missing files. I can’t really explain >> it. Deleting the cache and running again always fixes it. >> >> PK >> >> >>> On 16 Dec 2014, at 11:02 am, Roderich Schupp >>> <roderich.sch...@googlemail.com> wrote: >>> >>> On Mon, Dec 15, 2014 at 9:15 PM, Kime Philip <philk...@kime.org.uk> wrote: >>> ...regularly we get an error report from users that after a while using the >>> tool, a particular file disappears from the cache and the cache has to be >>> deleted and the binary unpacked again. I have never worked out why this is >>> and it has been a problem for a few years, through many PP versions. You >>> can see the general issue reported here: >>> >>> http://tex.stackexchange.com/questions/140814/biblatex-biber-fails-with-a-strange-error-about-missing-recode-data-xml-file >>> >>> From what I have seen, when this file is missing, all of the .pm files in >>> inc/ are missing too although I cannot reliably reproduce this. It is a >>> very frequent error from many users on various platforms and I’d very much >>> like to find out why it happens … >>> I'm fairly confident that PAR::Packer doesn't meddle with the files in the >>> cache area of >>> a pp-packed executable. AFAICT there's nothing in the code to delete files >>> there (except >>> to purge the whole cache area immediatly after running the executable). >>> At least for *nix installations I can think of an explanation: >>> administrative cron jobs that clean up >>> /tmp, /var/tmp etc by purging files not modified for some time. Dunno for >>> Windows, esp. >>> since the "temp" directories there are typically specific to each user. >>> Cheers, Roderich >>> >> -- >> Dr Philip Kime >> > -- Dr Philip Kime