You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@nifi.apache.org by "Marton Szasz (Jira)" <ji...@apache.org> on 2022/08/09 16:07:00 UTC

[jira] [Created] (MINIFICPP-1902) Explore options to stabilize the python dependency of the scripting extension

Marton Szasz created MINIFICPP-1902:
---------------------------------------

             Summary: Explore options to stabilize the python dependency of the scripting extension
                 Key: MINIFICPP-1902
                 URL: https://issues.apache.org/jira/browse/MINIFICPP-1902
             Project: Apache NiFi MiNiFi C++
          Issue Type: Task
            Reporter: Marton Szasz


libpython changes its SONAME every minor version, making it impossible to distribute binaries that work across multiple python versions. The script extension depends on libpython through pybind11.

 

Python itself provides a stable API since 3.2, which is fairly old at this point: [https://docs.python.org/3/c-api/stable.html#c-api-stability]

 

Pybind11 and boost.python are both using API functions that are not part of the stable API: [https://github.com/pybind/pybind11/issues/1755]

 

There seems to be some activity on swig to support this stable API: [https://github.com/swig/swig/pull/2190]

 

TODO: explore options, so that binary distributions of the scripting extension is possible



--
This message was sent by Atlassian Jira
(v8.20.10#820010)