On Fri, Dec 04, 2015 at 08:52:59PM +0100, Alexandre Detiste wrote:
> Le vendredi 4 décembre 2015, 10:16:05 Julian Andres Klode a écrit :
> > Control: reassign -1 unattended-upgrades
> > 
> > On Fri, Dec 04, 2015 at 08:06:36AM +0100, Alexandre Detiste wrote:
> > > Package: python3-apt
> > > Version: 1.1.0~beta1
> > > Severity: normal
> > > 
> > > Hi,
> > > 
> > > Since the last update of python3-apt to 1.1, unattended-upgrades
> > > is crashing on a package with an uppercase case name.
> > > 
> > > I do know this package is not policy-compliant;
> > > but still UU / python3-apt should handle this situation
> > > in a more gracefull way than a triple exception.
> > > (and more enterprise-ish stuff may want to use
> > > uppercase package names too)
> > 
> > dpkg won't even let you create packages with upper case package
> > names.
> > 
> > Internally they are mapped to lowercase before entered into the
> > cache, so I don't know where unattended-upgrades gets the mixed
> > case name from.
> > 
> > The behaviour of not accepting the upper case name is consistent
> > with APT (apt-cache show WorldOfGoo fails) and dpkg (dpkg -l 
> > WorldOfGoo fails too).
> > 
> > As such, I'm not going to fix this in python-apt. This should
> > be patched in unattended-upgrades that gets a mixed name from
> > somewhere it should not look at.
> > 
> > 
> 
> (keeping you in CC because I don't know if you'll get this mail
> after bug has been reassigned)
> 
> 
> update-apt-xapian-index now barfs on this upercase package too.
> 
> I agree the package was likely built on a Debian-less system with "ar + tar"  
> and without lintian.
> 
> It looks like in some cases the package name is converted to lowercase
> and in other cases not.
> 
> 
> 
> Reading en.diff_Index translations from 
> /var/lib/apt/lists/ftp.be.debian.org_debian_dists_unstable_main_i18n_Translation-en.diff_Index:
>  done.  
> Rebuilding Xapian index... 0%
> Traceback (most recent call last):
>   File "/usr/sbin/update-apt-xapian-index", line 104, in <module>
>     indexer.rebuild(opts.pkgfile)
>   File "/usr/lib/python2.7/dist-packages/axi/indexer.py", line 717, in rebuild
>     self.buildIndex(dbdir, generator)
>   File "/usr/lib/python2.7/dist-packages/axi/indexer.py", line 692, in 
> buildIndex
>     for doc in documents:
>   File "/usr/lib/python2.7/dist-packages/axi/indexer.py", line 563, in 
> gen_documents_apt
>     for idx, pkg in enumerate(cache):
>   File "/usr/lib/python2.7/dist-packages/apt/cache.py", line 231, in __iter__
>     yield self[pkgname]
>   File "/usr/lib/python2.7/dist-packages/apt/cache.py", line 200, in 
> __getitem__
>     raise KeyError('The cache has no package named %r' % key)
> KeyError: "The cache has no package named 'WorldOfGoo'"
> 
> 

I'm running since multiple weeks with a dummy package 
installed and cannot produce any error.

Running update-apt-xapian-index works fine as well.

So I'm sorry, but I can't help here, I don't know where your code
get's a mixed case package name from, but the expected response
to mixed case package names is a "no such package" response.

-- 
Julian Andres Klode  - Debian Developer, Ubuntu Member

See http://wiki.debian.org/JulianAndresKlode and http://jak-linux.org/.

When replying, only quote what is necessary, and write each reply
directly below the part(s) it pertains to (`inline'). Thank you.

Reply via email to