yohm / rb_call

Call Ruby methods from Python
MIT License
33 stars 4 forks source link

Revert "replace msgpack-rpc-python with mprpc" - mprpc does not install on Python 3.11 #4

Open jnareb opened 3 months ago

jnareb commented 3 months ago

This reverts commit de35f64158dcc54477de0910516d7f91cc418ee7.

Unfortunately, the mprpc package fails to install with Python 3.11.x most probably because of the changes in Cython.

  × Building wheel for mprpc (pyproject.toml) did not run successfully.
  │ exit code: 1
  [...]
        mprpc/client.c:181:12: fatal error: longintrepr.h: No such file or directory
        181 |   #include "longintrepr.h"
            |            ^~~~~~~~~~~~~~~
      compilation terminated.

The solution would be to update the package, but it is no longer developed. The GitHub repository for mprpc project (https://github.com/studio-ousia/mprpc) got archived by the owner on Dec 27, 2022:

NOTICE: This library is not actively maintained. Please consider using other alternatives such as gRPC.

There are other Python packages for MessagePack RPC than msgpack-rpc-python and mprpc, but they have their own problems.

It looks like best replacement would be tinyrpc, assuming that is performance is not worse than msgpack-rpc-python... but it would require some changes (though not as much as switching to gRPC would).