Hello Tomasz,
On Tue, Sep 13, 2016 at 10:04:28PM +0200, Carsten Schoenert wrote:
...
> So now I was using option -k to see if there is something abnormal. And
> yes, the manifest file has already that broken naming.
>
> carsten@stretch:/tmp $ grep -rw "303" */manifest
> pristine-tar.fbAnsJPkxo/manifest:libraries/Shielding_Cabinets.pretty/W\303\274rth_36503505_50x50mm.kicad_mod
> pristine-tar.fbAnsJPkxo/manifest:libraries/Shielding_Cabinets.pretty/W\303\274rth_36103605_60x60mm.kicad_mod
> pristine-tar.fbAnsJPkxo/manifest:libraries/Shielding_Cabinets.pretty/W\303\274rth_36103505_50x50mm.kicad_mod
> pristine-tar.fbAnsJPkxo/manifest:libraries/Shielding_Cabinets.pretty/W\303\274rth_36103205_20x20mm.kicad_mod
> pristine-tar.fbAnsJPkxo/manifest:libraries/Shielding_Cabinets.pretty/W\303\274rth_36503205_20x20mm.kicad_mod
> pristine-tar.fbAnsJPkxo/manifest:libraries/Shielding_Cabinets.pretty/W\303\274rth_36503255_25x25mm.kicad_mod
> pristine-tar.fbAnsJPkxo/manifest:libraries/Shielding_Cabinets.pretty/W\303\274rth_36103255_25x25mm.kicad_mod
> pristine-tar.fbAnsJPkxo/manifest:libraries/Shielding_Cabinets.pretty/W\303\274rth_36503305_30x30mm.kicad_mod
> pristine-tar.fbAnsJPkxo/manifest:libraries/Shielding_Cabinets.pretty/W\303\274rth_36503605_60x60mm.kicad_mod
> pristine-tar.fbAnsJPkxo/manifest:libraries/Shielding_Cabinets.pretty/W\303\274rth_36103305_30x30mm.kicad_mod
>
> I don't how this manifest file is created but there is probably
> something working not well.
>
> If I try to follow the command while working with verbose or debuging
> messages this part is not vissible.
thanks to a colleague I could get a workaround and commit my
orig*.tar.xz tarballs to the tree.
The problems must be araising in the genmanifest function due some
charset voodoo. I'm running locally the de_DE.utf8 charset. So I think
the created orig*.tar.xz tarballs are created with this charset.
pristine-tar set LANG to 'C'. So also the function genmanifest is
running with this setting. So if we hack and modify now this function to
use de_DE.utf8 the commit is working, also the later extracting from the
branch. The hackish looks now this way:
$ git diff
diff --git a/pristine-tar b/pristine-tar
index fa73fcf..9e28855 100755
--- a/pristine-tar
+++ b/pristine-tar
@@ -501,16 +501,23 @@ sub genmanifest {
my $tarball=shift;
my $manifest=shift;
+ delete $ENV{LANG};
+ $ENV{LANG} = 'de_DE.utf8';
+ #print $ENV{LANG} . "\n";
open(IN, "tar --quoting-style=escape -tf $tarball |") || die "tar tf:
$!";
open(OUT, ">", $manifest) || die "$!";
while (<IN>) {
chomp;
# ./ or / in the manifest just confuses tar
+ #print "DEBUG1: $_\n";
s/^\.?\/+//;
+ #print "DEBUG2: $_\n";
print OUT "$_\n" if length $_;
}
close IN;
close OUT;
+ delete $ENV{LANG};
+ $ENV{LANG} = 'C';
}
sub gendelta {
Maybe pristine-tar should figure out which charest is used within the
tarball and use this while creating the manifest of the tarball? I don't
know, I'm really not a Perl guy. :-)
Regards
Carsten