Ensure old- and new-style Python APIs can coexist in the same process #5051
Labels
High Priority
An issue or pull request that if not addressed is severe enough to postponse a release.
Milestone
At the moment if you try and import the new mantid package and the old MantidFramework in to the same process you get a boost assertion error that some registrations already exist and the program exits.
The issue is that boost::python's type conversion registry is a static map and is shared among all dynamically loaded extension modules. The solution is to statically link the old API to boost python so that it gets a private copy of the registry and they don't clash.
We don't want to statically link the new one however as we have split modules that need to share the registry.
The text was updated successfully, but these errors were encountered: