On Fri, 26 Aug 2016 10:26:53 +0200
Antonio Ospite <[email protected]> wrote:

> Package: gajim
> Version: 0.16.5-2
> Followup-For: Bug #835472
> 
> Dear Maintainer,
> 
> the problem is not in gajim and not related to the gajim package update.
> 
> The problem is caused by a new version of the python-protobuf package
> which affects the python-axolotl package, on which gajim depends:
> 
> See
> 
> https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=835271
> 
[...]

OK, python-axolotl_0.1.35-1, which is available in unstable, fixes this
issue, so now the latest python-protobuf package can be used in case you
downgraded it as I suggested in the previous message.

However the recent update of the python-setuptools and
python-pkg-resources packages breaks some gajim plugins (namely the OMEMO
plugin) in another way:

$ gajim
Traceback (most recent call last):
  File "gajim.py", line 533, in <module>
    interface.run()
  File "/usr/share/gajim/src/gui_interface.py", line 2733, in run
    gajim.plugin_manager = plugins.PluginManager()
  File "/usr/share/gajim/src/plugins/helpers.py", line 129, in __call__
    cls.instance=super(Singleton, cls).__call__(*args,**kw)
  File "/usr/share/gajim/src/plugins/pluginmanager.py", line 104, in __init__
    pc = PluginManager.scan_dir_for_plugins(path)
  File "/usr/share/gajim/src/plugins/helpers.py", line 114, in wrapper
    result = f(*args, **kwargs)
  File "/usr/share/gajim/src/plugins/pluginmanager.py", line 454, in 
scan_dir_for_plugins
    module = __import__(module_name)
  File "/usr/share/gajim/src/common/demandimport.py", line 95, in _demandimport
    return _import(name, globals, locals, fromlist, level)
  File "/home/ao2/.local/share/gajim/plugins/omemo/__init__.py", line 61, in 
<module>
    from .omemo.state import OmemoState
  File "/usr/share/gajim/src/common/demandimport.py", line 112, in _demandimport
    return _origimport(name, globals, locals, fromlist, level)
  File "/home/ao2/.local/share/gajim/plugins/omemo/omemo/state.py", line 31, in 
<module>
    from axolotl.protocol.prekeywhispermessage import PreKeyWhisperMessage
  File "/usr/share/gajim/src/common/demandimport.py", line 114, in _demandimport
    mod = _origimport(name, globals, locals)
  File 
"/usr/lib/python2.7/dist-packages/axolotl/protocol/prekeywhispermessage.py", 
line 3, in <module>
    from google.protobuf.message import DecodeError
  File "/usr/share/gajim/src/common/demandimport.py", line 114, in _demandimport
    mod = _origimport(name, globals, locals)
  File "/usr/lib/python2.7/dist-packages/google/protobuf/__init__.py", line 37, 
in <module>
    __import__('pkg_resources').declare_namespace(__name__)
  File "/usr/share/gajim/src/common/demandimport.py", line 95, in _demandimport
    return _import(name, globals, locals, fromlist, level)
  File "/usr/lib/python2.7/dist-packages/pkg_resources/__init__.py", line 72, 
in <module>
    __import__('pkg_resources.extern.packaging.requirements')
  File "/usr/share/gajim/src/common/demandimport.py", line 95, in _demandimport
    return _import(name, globals, locals, fromlist, level)
  File "/usr/lib/python2.7/dist-packages/pkg_resources/extern/__init__.py", 
line 43, in load_module
    __import__(extant)
  File "/usr/share/gajim/src/common/demandimport.py", line 95, in _demandimport
    return _import(name, globals, locals, fromlist, level)
  File 
"/usr/lib/python2.7/dist-packages/pkg_resources/_vendor/packaging/requirements.py",
 line 9, in <module>
    from pkg_resources.extern.pyparsing import stringStart, stringEnd, 
originalTextFor, ParseException
  File "/usr/share/gajim/src/common/demandimport.py", line 112, in _demandimport
    return _origimport(name, globals, locals, fromlist, level)
  File "/usr/lib/python2.7/dist-packages/pkg_resources/extern/__init__.py", 
line 43, in load_module
    __import__(extant)
  File "/usr/share/gajim/src/common/demandimport.py", line 95, in _demandimport
    return _import(name, globals, locals, fromlist, level)
  File "/usr/lib/python2.7/dist-packages/pkg_resources/_vendor/pyparsing.py", 
line 1076, in <module>
    class ParserElement(object):
  File "/usr/lib/python2.7/dist-packages/pkg_resources/_vendor/pyparsing.py", 
line 1496, in ParserElement
    packrat_cache_lock = RLock()
  File "/usr/share/gajim/src/common/demandimport.py", line 82, in __call__
    raise TypeError("%s object is not callable" % repr(self))
TypeError: <unloaded module 'RLock'> object is not callable


A workaround is to downgrade the offending packages:
http://ftp.debian.org/debian/pool/main/p/python-setuptools/python-setuptools_25.2.0-1_all.deb
http://ftp.debian.org/debian/pool/main/p/python-setuptools/python-pkg-resources_25.2.0-1_all.deb

I don't know if the issue is in these packages or in the
demandimport.py code, or rather in how the OMEMO plugin uses it.

Does anyone have any insight?

Thanks,
   Antonio

-- 
Antonio Ospite
http://ao2.it

A: Because it messes up the order in which people normally read text.
   See http://en.wikipedia.org/wiki/Posting_style
Q: Why is top-posting such a bad thing?

Reply via email to