Xpra: Ticket #1929: python-lz4 2.1 is broken, again

on win32 clean install:

Traceback (most recent call last):
  File "E:\Xpra\trunk\src\dist/lib/xpra/net/compression.py", line 24, in <module>
    import lz4
  File "C:/msys64/mingw64/lib/python2.7/site-packages/lz4-2.1.0-py2.7-mingw.egg/lz4/__init__.py", line 8, in <module>
    VERSION = __version__
NameError: name '__version__' is not defined


Mon, 06 Aug 2018 19:12:45 GMT - totaamwin32: status changed; resolution set

So, it turns out (unsurprisingly) that python-lz4 has changed how it gets its version information yet again - I can't remember if it's 3rd or 4th time now. And when it doesn't get its version number, the whole library fails to load!

For such a small and simple wrapper library, the number of releases and constant needless breakage is shocking.

Here's what it does now:

from pkg_resources import get_distribution, DistributionNotFound
try:
    __version__ = get_distribution(__name__).version
except DistributionNotFound:
    # package is not installed
    pass

And here's what I replaced it with to get on with more productive things:

    # package is not installed
    __version__ = "2.1.0"

Let's try to deal with this in #1883 so this won't break again next time there is an update.


Thu, 23 Aug 2018 09:14:31 GMT - Antoine Martin:

r20171 fixes the packaging for macos by adding the patch to jhbuild.


Sun, 04 Nov 2018 11:22:15 GMT - Antoine Martin:

For reference, here are some other instances of python-lz4 gratuitous breakage: #1464, #960

The import problem has been resolved, there were other reasons for avoiding pkg_resources: Importing lz4 is very slow

We now use version 2.1.2: r20928.


Sat, 23 Jan 2021 05:37:35 GMT - migration script:

this ticket has been moved to: https://github.com/Xpra-org/xpra/issues/1929