Apparently in pub.zipengine (gman's module) when you add a stream/file to a zip it does not overwrite an already existing file of the same name.
Does anyone know how to remove a file from a zip?
You could just ...
1. unzip the whole set of files to memory banks
2. delete the unwanted file/memory bank
3. rezip and save with the new file
In effect that's probably what any zip engine would be doing under the hood, to delete a file.
That would take longer then necessary in most cases (large zip.)
gman?!
Technically you have to do this when delete a file inside zip. it actually does this:
1.Get document list/index from the end of the zip.
2.Copy the data to a new temp file and ignore the unnecessary part.
3.Rewrite file list/index at the end of temp zip file.
4.Delete the orignal zip file.
5.Rename the temp zip to the original file name.
It's still pretty time-consuming on large zips, but still faster than solid archives(in the case you need to re-compress every bits).
Bleh.. zipengine should still manage overwriting the current file though.