hello tar developers, a debian package maintainer (Fernando Toledo <[email protected]>) found out that after removing one file from a Debian source archive, two other files were deleted as well. I tracked this down to a failure when deleting the file via "tar --delete --file <archive> <file>":
Here is the case: http://www2.inf.fh-brs.de/~fnatte2s/syncterm-1.0.tgz $ gzip -d syncterm-1.0.tgz $ tar -tf syncterm-1.0.tar | grep desktop syncterm-1.0/src/syncterm/syncterm.desktop $ tar --delete --file syncterm-1.0.tar syncterm-1.0/3rdp/dist/cryptlib.zip $ tar -tf syncterm-1.0.tar | grep desktop <no output> What works is this: $ cat syncterm-1.0.tar | tar --delete syncterm-1.0/3rdp/dist/cryptlib.zip > out.tar I tried with tar 1.27.1 and tar 1.28. This problem seems to be known [1], but I think there should be at least a warning when using the in-place deletion. [1] "The `--delete' option has been reported to work properly when tar acts as a filter from stdin to stdout. " https://www.gnu.org/software/tar/manual/html_node/delete.html Thanks and Best Regards, -- Felix Natter
