Bug#869087: devscripts: [uscan] Files excluded without a matching pattern in debian/copyright's Files-Excluded
James McCoy
jamessan at debian.org
Fri Jul 21 01:52:30 UTC 2017
Control: reassign -1 tar 1.29b-1.1
Control: affects -1 devscripts
Control: retitle -1 tar corrupts filenames when using --delete
On Thu, Jul 20, 2017 at 02:01:00PM +0200, Emmanuel Bourg wrote:
> While updating plexus-archiver I noticed that uscan filters more files
> than expected.
>
> The watch file is:
>
> version=3
> opts=uversionmangle=s{-alpha-}{~alpha} \
> https://github.com/codehaus-plexus/plexus-archiver/tags .*/plexus-archiver-(.*).tar.gz
>
> The file downloaded is:
>
> https://github.com/codehaus-plexus/plexus-archiver/archive/plexus-archiver-3.5.tar.gz
>
> And debian/copyright contains:
>
> Files-Excluded: jira
>
> In this case the file plexus-archiver-plexus-archiver-3.5/src/test/resources/zeroFileMode/foobar.zip
> and a few others are removed from the tarball. It doesn't happen
> if the Files-Excluded field is removed.
I tested this out manually and it seems to be an issue with tar.
[jamessan at freya] $ wget https://github.com/codehaus-plexus/plexus-archiver/archive/plexus-archiver-3.5.tar.gz
--2017-07-20 21:38:49-- https://github.com/codehaus-plexus/plexus-archiver/archive/plexus-archiver-3.5.tar.gz
Resolving github.com (github.com)... 192.30.253.113, 192.30.253.112
Connecting to github.com (github.com)|192.30.253.113|:443... connected.
HTTP request sent, awaiting response... 302 Found
Location: https://codeload.github.com/codehaus-plexus/plexus-archiver/tar.gz/plexus-archiver-3.5 [following]
--2017-07-20 21:38:49-- https://codeload.github.com/codehaus-plexus/plexus-archiver/tar.gz/plexus-archiver-3.5
Resolving codeload.github.com (codeload.github.com)... 192.30.253.121, 192.30.253.120
Connecting to codeload.github.com (codeload.github.com)|192.30.253.121|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: unspecified [application/x-gzip]
Saving to: ‘plexus-archiver-3.5.tar.gz’
plexus-archiver-3.5.tar.gz [ <=> ] 545.30K 3.43MB/s in 0.2s
2017-07-20 21:38:50 (3.43 MB/s) - ‘plexus-archiver-3.5.tar.gz’ saved [558383]
[jamessan at freya] $ gunzip plexus-archiver-3.5.tar.gz
[jamessan at freya] $ tar --delete $(tar tf plexus-archiver-3.5.tar | grep jira | sort -r) < plexus-archiver-3.5.tar > plexus.tar
[jamessan at freya] $ diff -u <(tar tvf plexus-archiver-3.5.tar) <(tar tvf plexus.tar)
--- /proc/self/fd/11 2017-07-20 21:47:49.999199728 -0400
+++ /proc/self/fd/12 2017-07-20 21:47:49.999199728 -0400
@@ -5,286 +5,6 @@
-rw-rw-r-- root/root 11358 2017-06-29 12:27 plexus-archiver-plexus-archiver-3.5/LICENSE
-rw-rw-r-- root/root 1153 2017-06-29 12:27 plexus-archiver-plexus-archiver-3.5/README.md
-rw-rw-r-- root/root 12709 2017-06-29 12:27 plexus-archiver-plexus-archiver-3.5/ReleaseNotes.md
-drwxrwxr-x root/root 0 2017-06-29 12:27 plexus-archiver-plexus-archiver-3.5/jira/
--rw-rw-r-- root/root 17770 2017-06-29 12:27 plexus-archiver-plexus-archiver-3.5/jira/PLXCOMP-1.json
--rw-rw-r-- root/root 8733 2017-06-29 12:27 plexus-archiver-plexus-archiver-3.5/jira/PLXCOMP-10.json
…
--rw-rw-r-- root/root 7741 2017-06-29 12:27 plexus-archiver-plexus-archiver-3.5/jira/PLXCOMP-97.json
--rw-rw-r-- root/root 4116 2017-06-29 12:27 plexus-archiver-plexus-archiver-3.5/jira/PLXCOMP-98.json
--rw-rw-r-- root/root 26543 2017-06-29 12:27 plexus-archiver-plexus-archiver-3.5/jira/PLXCOMP-99.json
-rw-rw-r-- root/root 4808 2017-06-29 12:27 plexus-archiver-plexus-archiver-3.5/pom.xml
drwxrwxr-x root/root 0 2017-06-29 12:27 plexus-archiver-plexus-archiver-3.5/src/
drwxrwxr-x root/root 0 2017-06-29 12:27 plexus-archiver-plexus-archiver-3.5/src/main/
@@ -546,17 +266,17 @@
drwxrwxr-x root/root 0 2017-06-29 12:27 plexus-archiver-plexus-archiver-3.5/src/test/resources/utf8/
-rw-rw-r-- root/root 0 2017-06-29 12:27 plexus-archiver-plexus-archiver-3.5/src/test/resources/utf8/D12345679012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890æøå.txt
-rw-rw-r-- root/root 0 2017-06-29 12:27 plexus-archiver-plexus-archiver-3.5/src/test/resources/utf8/D12345679012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890æøå.txt
-drwxrwxr-x root/root 0 2017-06-29 12:27 plexus-archiver-plexus-archiver-3.5/src/test/resources/world-writable/
--rw-rw-r-- root/root 0 2017-06-29 12:27 plexus-archiver-plexus-archiver-3.5/src/test/resources/world-writable/foo.txt
-drwxrwxr-x root/root 0 2017-06-29 12:27 plexus-archiver-plexus-archiver-3.5/src/test/resources/zeroFileMode/
--rwxrwxr-x root/root 453 2017-06-29 12:27 plexus-archiver-plexus-archiver-3.5/src/test/resources/zeroFileMode/foobar.zip
--rw-rw-r-- root/root 1877 2017-06-29 12:27 plexus-archiver-plexus-archiver-3.5/src/test/resources/zeroFileMode/mixed-file-mode.zip
-drwxrwxr-x root/root 0 2017-06-29 12:27 plexus-archiver-plexus-archiver-3.5/src/test/resources/zip-timestamp/
--rw-rw-r-- root/root 0 2017-06-29 12:27 plexus-archiver-plexus-archiver-3.5/src/test/resources/zip-timestamp/file-with-even-time.txt
--rw-rw-r-- root/root 0 2017-06-29 12:27 plexus-archiver-plexus-archiver-3.5/src/test/resources/zip-timestamp/file-with-odd-time.txt
-drwxrwxr-x root/root 0 2017-06-29 12:27 plexus-archiver-plexus-archiver-3.5/src/test/resources/zip-timestamp/foo/
--rw-rw-r-- root/root 0 2017-06-29 12:27 plexus-archiver-plexus-archiver-3.5/src/test/resources/zip-timestamp/foo/file-with-even-time.txt
--rw-rw-r-- root/root 0 2017-06-29 12:27 plexus-archiver-plexus-archiver-3.5/src/test/resources/zip-timestamp/foo/file-with-odd-time.txt
--rw-rw-r-- root/root 368 2017-06-29 12:27 plexus-archiver-plexus-archiver-3.5/src/test/resources/zip-timestamp/foo/macOsZipFile.jar
--rw-rw-r-- root/root 164170 2017-06-29 12:27 plexus-archiver-plexus-archiver-3.5/src/test/resources/zip-timestamp/foo/plexus-archiver-2.4.4-SNAPSHOT.jar
--rw-rw-r-- root/root 368 2017-06-29 12:27 plexus-archiver-plexus-archiver-3.5/src/test/resources/zip-timestamp/macOsZipFile.zip
+drwxrwxr-x root/root 0 2017-06-29 12:27 plexus-archiver-plexus-archiver-3.5/src/test/resources/utf8/D12345679012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890æøå.txt
+-rw-rw-r-- root/root 0 2017-06-29 12:27 plexus-archiver-plexus-archiver-3.5/src/test/resources/utf8/D12345679012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890æøå.txt
+drwxrwxr-x root/root 0 2017-06-29 12:27 plexus-archiver-plexus-archiver-3.5/src/test/resources/utf8/D12345679012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890æøå.txt
+-rwxrwxr-x root/root 453 2017-06-29 12:27 plexus-archiver-plexus-archiver-3.5/src/test/resources/utf8/D12345679012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890æøå.txt
+-rw-rw-r-- root/root 1877 2017-06-29 12:27 plexus-archiver-plexus-archiver-3.5/src/test/resources/utf8/D12345679012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890æøå.txt
+drwxrwxr-x root/root 0 2017-06-29 12:27 plexus-archiver-plexus-archiver-3.5/src/test/resources/utf8/D12345679012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890æøå.txt
+-rw-rw-r-- root/root 0 2017-06-29 12:27 plexus-archiver-plexus-archiver-3.5/src/test/resources/utf8/D12345679012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890æøå.txt
+-rw-rw-r-- root/root 0 2017-06-29 12:27 plexus-archiver-plexus-archiver-3.5/src/test/resources/utf8/D12345679012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890æøå.txt
+drwxrwxr-x root/root 0 2017-06-29 12:27 plexus-archiver-plexus-archiver-3.5/src/test/resources/utf8/D12345679012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890æøå.txt
+-rw-rw-r-- root/root 0 2017-06-29 12:27 plexus-archiver-plexus-archiver-3.5/src/test/resources/utf8/D12345679012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890æøå.txt
+-rw-rw-r-- root/root 0 2017-06-29 12:27 plexus-archiver-plexus-archiver-3.5/src/test/resources/utf8/D12345679012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890æøå.txt
+-rw-rw-r-- root/root 368 2017-06-29 12:27 plexus-archiver-plexus-archiver-3.5/src/test/resources/utf8/D12345679012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890æøå.txt
+-rw-rw-r-- root/root 164170 2017-06-29 12:27 plexus-archiver-plexus-archiver-3.5/src/test/resources/utf8/D12345679012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890æøå.txt
+-rw-rw-r-- root/root 368 2017-06-29 12:27 plexus-archiver-plexus-archiver-3.5/src/test/resources/utf8/D12345679012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890æøå.txt
All the jira files (and directory) get deleted, as expected. However,
the filenames for every member after
plexus-archiver-plexus-archiver-3.5/src/test/resources/utf8/D12345679012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890æøå.txt
had its name replaced with
plexus-archiver-plexus-archiver-3.5/src/test/resources/utf8/D12345679012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890æøå.txt
The filesizes and other metadata remain correct … just the filenames are
wrong.
Cheers,
--
James
GPG Key: 4096R/91BF BF4D 6956 BD5D F7B7 2D23 DFE6 91AE 331B A3DB
More information about the devscripts-devel
mailing list