Re: dumpMetadata utf-8 question

seth vidal <[email protected]>
Newsgroups gmane.linux.rpm.metadata
Message-ID <1167969930.11355.91.camel@cutter>
On Thu, 2007-01-04 at 13:45 -0500, Jay Soffian wrote:
> In dealing with some i18n RPMs recently I noticed that dumpMetadata  
> can generate XML which is unparseable on the receiving end by yum due  
> to feeding libxml2 non-utf8 encoded strings in some cases. The reason  
> for this is two-fold:
> 
> 1) The RPM in question (constructed for QA purposes) was encoded  
> using the euc_jp encoding.
> 2) dumpMetadata does not pass all the strings it extracts from an RPM  
> through utf8String. (In particular, the name of the RPM as well as  
> the name portion of each of the PRCO entries.)
> 
> I've modified dumpMetadata to: a) pass all strings through  
> utf8String; and b) allow you to optionally specify the encoding that  
> was in use when the RPM was constructed.
> 
> This causes problems downstream with yum when attempting to install  
> the RPM (because yum compares the utf-8 encoded RPM name to the name  
> of the RPM as represented by the raw bytes from the downloaded RPM  
> header and these are not equal, thus yum rejects the header), but at  
> least the XML is valid allowing other RPMs in the repo to be installed.
> 
> Anyway, I'm wondering whether it was an intentional design decision  
> to not pass all the bits handed to libxml2 through utf8String first.


Mostly I think it was that:
1. We never encountered non-utf8 strings in package names and I
_thought_ that at one point in time rpm used to bitch about them
2. file names used to get upset in package builds when non-utf8 strings
were in %files - I remember running into this error at one point.

-sv
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.