You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Add Python pybind11 bindings + Upgrade ci/cd
This PR adds python bindings as well as updates the backend build
process of the mmtf-cpp library significantly. These improvements are
mainly from a convenience perspective and include:
- Removing all build-based submodules
- Moving to cmake fetchcontent build
- Simplify CMakeLists with better linking procedures
- Upgrade msgpack-c
- Upgrade catch2
- Move to github actions for ci/cd
- Use cibuildwheel for wheel cd
Pybind11 library:
The pybind11 library utilizes the c++ code of mmtf-cpp in order to build
an extremely fast cpp layer underneath the python interface. You have
to keep in mind that moving between c++ and python is slow, but this is
still much faster than the previously existing python library. see this
example:
time to load a single mmtf file 1000x
cpp bare 0.29s
this library 0.44s
python og 4.34s