Control: reassign -1 python3-augeas
Control: severity -1 serious

Hi!

On Sat, 2019-11-09 at 11:06:15 +0100, Jakub Wilk wrote:
> * Alexander Thomas <doctor.lex+db...@gmail.com>, 2019-11-08, 15:50:
> > Traceback (most recent call last):
> >  File "/usr/lib/the-package/setup-package.py", line 3, in <module>
> >    from augeas import Augeas
> >  File "/usr/lib/python2.7/dist-packages/augeas.py", line 78, in <module>
> >    class Augeas(object):
> >  File "/usr/lib/python2.7/dist-packages/augeas.py", line 82, in Augeas
> >    _libaugeas = _dlopen("augeas")
> >  File "/usr/lib/python2.7/dist-packages/augeas.py", line 75, in _dlopen
> >    raise ImportError("Unable to import lib%s!" % args[0])
> > ImportError: Unable to import libaugeas!
> 
> The _dlopen() function uses ctypes.util.find_library(), which is a
> fundamentally broken API. This is the culprit, not dpkg.

Ah, thanks for tracking this down! I was not sure whether the ld caching
logic in glibc might have regressed perhaps.

> > ldconfig is one of the triggers of libc-bin. It seems that its
> > invocation is now postponed too late.
> 
> ldconfig is declared as a noawait trigger, so dpkg is allowed to configure
> the triggering package immediately, without waiting for the trigger to be
> run.
>
> This declaration is correct, because running ldconfig shouldn't have any
> effect on software functionality, unless there's a bug somewhere else.

Exactly. So I guess this needs to be reassigned first to augeas, which
I'm doing now. And perhaps cloned or a new bug filed to python too for
the brokeness in the ctypes.util.find_library() API, but I'd leave that
to you Jakub, as I've not checked any of that.

Thanks,
Guillem

Reply via email to