vesoft-inc / nebula-python

Client API of Nebula Graph in Python
184 stars 76 forks source link

feat: support JupyterLite/Emscripten #332

Closed wey-gu closed 3 months ago

wey-gu commented 3 months ago

What type of PR is this?

What problem(s) does this PR solve?

Issue(s) number:

Description:

This is a fix on Thrift python, to enable nebula-python being supported on jupyterlite, a wasm env in browser powered by pyodide.

This will enable embedding runnable jupyter/python client runtime of nebulagraph in a browser or inline of docs/tutorials in the future.

How do you solve it?

This is an equivalent downstream implementation of my pr on fbthrift.

Just to inspect the sys platform and when it's on WASM(with Emscripten), just don't lock as it was done for Windows.

Note

This change has to be applied again every time thrift gen was triggered.