Skip to content

Unable to install on Python 3.12 due to leveldb #98

Open
@ghisvail

Description

@ghisvail

Describe the bug
quickumls cannot be installed on Python 3.12 (default on Ubuntu 24.04 LTS) due to leveldb

To Reproduce

  1. Deploy a venv for Python 3.12

  2. pip install quickumls

  3. Wheel compilation for leveldb fails with the following error:

          leveldb_object.cc: In function ‘int pyleveldb_str_eq(PyObject*, const char*)’:
          leveldb_object.cc:795:33: error: ‘PyUnicode_AS_UNICODE’ was not declared in this scope; did you mean ‘PyUnicode_AsUCS4’?
            795 |                 Py_UNICODE* c = PyUnicode_AS_UNICODE(p);
                |                                 ^~~~~~~~~~~~~~~~~~~~
                |                                 PyUnicode_AsUCS4
    
    

**Environment **

  • OS: Ubuntu 24.04
  • QuickUMLS version: 1.4
  • UMLS version: N/A

Additional context
It sounds unlikely that py-leveldb will ever receive a fix. Its maintenance looks inactive. It could be worth swapping the leveldb dependency to something else like plyvel which looks maintained and has wheels for the latest versions of Python.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions