This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author lars.gustaebel
Recipients lars.gustaebel, loewis, rhettinger, rossmclendon
Date 2009-09-02.12:11:12
SpamBayes Score 1.614384e-07
Marked as misclassified No
Message-id <1251893474.33.0.828162470395.issue6818@psf.upfronthosting.co.za>
In-reply-to
Content
-1, although I can only speak for tarfile. Removing members from a tar
archive sounds obvious and easy but it is *not*. A file in an archive is
stored as a header block (that contains the metadata) followed by a
number of data blocks (that contain the file's data). New files are
simply appended to the archive file. There is no central table of
contents whatsoever. To make things worse, a compressed archive is
compressed in one go from the beginning right up to the end, it is not
possible to access a member in the middle of an archive without having
to decompress all data before it.
Deleting files from an uncompressed archive is rather straightforward
implementation-wise but IO intensive and risky. In contrast, there is no
other way to delete files from a *compressed* tarfile than to make a
copy of it omitting the unwanted files.
History
Date User Action Args
2009-09-02 12:11:14lars.gustaebelsetrecipients: + lars.gustaebel, loewis, rhettinger, rossmclendon
2009-09-02 12:11:14lars.gustaebelsetmessageid: <1251893474.33.0.828162470395.issue6818@psf.upfronthosting.co.za>
2009-09-02 12:11:12lars.gustaebellinkissue6818 messages
2009-09-02 12:11:12lars.gustaebelcreate