FS#9906 - [git] Update warning when using pacman with LANG=de_DE

Attached to Project: Arch Linux
Opened by Gerhard Brauer (GerBra) - Saturday, 22 March 2008, 10:14 GMT
Last edited by Dan McGee (toofishes) - Wednesday, 09 April 2008, 12:03 GMT
Task Type Bug Report
Category Packages: Extra
Status Closed
Assigned To Dan McGee (toofishes)
Architecture All
Severity Medium
Priority Normal
Reported Version 2007.08-2
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

Description:
There is a file in git package:
/usr/share/gitweb/test/Märchen
(ä is german "umlaut" ae)
During current update 1.5.3.7-1 -> 1.5.4.2-1 git won't update with an overwriting warning that above file exist in filesystem.
Then i run pacman with LANG=C instead of my default LANG=de_DE.utf8 to get english error messages, and with LANG=C pacman update git without an error.
But before and after update:
LANG=C pacman -Qo /usr/share/gitweb/test/Märchen
error: No package owns /usr/share/gitweb/test/Märchen
But it's surely in current git package.

I think the problem result from this file with german umlaut in filename.

This task depends upon

Closed by  Dan McGee (toofishes)
Wednesday, 09 April 2008, 12:03 GMT
Reason for closing:  Fixed
Additional comments about closing:  Once pacman regains control of the problem, this should not be an issue anymore, and we have one user confirming that it is now working here, along with plenty of pacman devs.
Comment by Maximilian Müller (kakTuZ) - Saturday, 22 March 2008, 13:24 GMT
I can confirm the bug and the workaround.
Also: before update

$ pacman -Ql git | grep rchen
git /usr/share/gitweb/test/M\303\244rchen

I updated using LANG=C. The file /usr/share/gitweb/Märchen is on the disk, but not listed using 'pacman -Ql git'.
Comment by Xavier (shining) - Monday, 24 March 2008, 09:51 GMT
I also had this issue on that last upgrade, but I already noticed this problem before.
Anyway, if you remove that file and upgrade git, it will then work fine.
"pacman -Qo /usr/share/gitweb/test/Märchen" and "pacman -Ql git | grep rchen" return correct results.

I think that's because makepkg now uses bsdtar to create packages (instead of tar previously), so this issue shouldn't happen again.
Comment by Roman Kyrylych (Romashka) - Monday, 24 March 2008, 16:04 GMT
I've installed my vmware system with LANG=C (forgot to generate locales and installer did too)
Then I've changed locale to en_US.UTF-8

# pacman -Q pacman libarchive git
pacman 3.1.3-1
libarchive 2.4.12-1
git 1.5.4.2-1

# pacman -Ql git | grep test
git /usr/share/gitweb/test/
git /usr/share/gitweb/test/M), request rejected because SOCKS server cannot connect to identd on the client.
git /usr/share/gitweb/test/file with spaces
git /usr/share/gitweb/test/file+plus+sign
I don't have any clue what that "SOCKS" message is doing here (werid vmware server console bug?) :-/

# tar tvf /var/cache/pacman/pkg/git-1.5.4.2-1-i686.pkg.tar.gz | grep test
displays Märchen correctly
# bsdtar ... displays M\303\244rchen

# LANG=C pacman -S git
and I get
git: /usr/share/gitweb/test/M exists in filesystem

# ls /usr/share/gitweb/test (after git was installed with LANG=C)
shows M instead of Märchen

# pacman -S git (en_US.UTF-8 locale) installs /usr/share/gitweb/test/Märchen correctly
and also claims ownership on it.
I didn't test other locales yet.


P.S.: BTW, our webinterface shows:
usr/share/gitweb/test/Märchen
usr/share/gitweb/test/file
usr/share/gitweb/test/file+plus+sign
e.g. "/file" instead of "/file with spaces"
Comment by Maximilian Müller (kakTuZ) - Wednesday, 26 March 2008, 13:53 GMT
Problem seems to be fixed. At least the git update 1.5.4.2-1 -> 1.5.4.4-1 worked after removing /usr/share/gitweb/test/Märchen .
And /usr/share/gitweb/test/Märchen is now assigned to the git package.
Comment by Roman Kyrylych (Romashka) - Saturday, 05 April 2008, 10:11 GMT
ok, I'll try to reproduce the issue again in Monday.
Comment by Gerhard Brauer (GerBra) - Wednesday, 09 April 2008, 10:08 GMT
Last update 1.5.4.5-1 -> 1.5.5-1 worked fine. One update before current i removed /usr/share/gitweb/test/Märchen.
Now this update runs without a problem.
From my side i could say: Fixed.

Loading...