Details
-
Type:
Story
-
Status: Done
-
Resolution: Done
-
Fix Version/s: None
-
Component/s: None
-
Labels:None
-
Story Points:2
-
Epic Link:
-
Sprint:DRP S17-2, DRP S17-3, DRP S17-4
-
Team:Data Release Production
Description
Pybind11 version 2, with it's latest bugfix update (2.0.1), is out.
This is a big release with some API incompatibilities (most of which we already depend on). But we have been using pybind11 master so far so we won't have to change much.
Nevertheless this is slightly more work than normal (normally about 0.1 SP) because py::metaclass() is now a required attribute for all classes that use .def_static which requires a lot of (trivial) changes. And of course there may be other hidden problems.
Now that a major fraction of the porting work is done, and we have the upstream features we need merged into the release version, the intention is to stick to fixed releases from now on if possible (instead of tracking master).
Attachments
Issue Links
- blocks
-
DM-8580 Diagnose upstream pybind11 problem with some vector overloads
- To Do
Encountered a problem. When a derived class MroDerived needs to expose a static attribute (which necessitates using py::metaclass), but also inherits from multiple bases Python raises the following error:
ImportError: MroDerived: PyType_Ready failed (TypeError: mro() returned base with unsuitable layout ('pybind11_tests.MroBaseB'))!
This has been bugreported upstream as https://github.com/pybind/pybind11/issues/597 and further work on this ticket is blocked until the issue is resolved.