- 09 Oct, 2016 3 commits
-
-
Wenzel Jakob authored
Python 3.5 can often import pybind11 modules compiled compiled for Python 3.4 (i.e. all symbols can be resolved), but this leads to crashes later on due to changes in various Python-internal data structures. This commit adds an extra sanity check to prevent a successful import when the Python versions don't match.
-
Wenzel Jakob authored
-
Wenzel Jakob authored
-
- 08 Oct, 2016 1 commit
-
-
Wenzel Jakob authored
This fixes an issue that can arise when forwarding (*args, **kwargs) captured from a pybind11-bound function call to another Python function. When the initial function call includes no keyword arguments, the py::kwargs field is set to nullptr and causes a crash later on.
-
- 07 Oct, 2016 1 commit
-
-
Wenzel Jakob authored
-
- 02 Oct, 2016 2 commits
-
-
Wenzel Jakob authored
Re-add accessor bool operator
-
Jason Rhinelander authored
PR #425 removed the bool operator from attribute accessors. This is likely in use by existing code as it was the only way before #425 added the `hasattr` function to check for the existence of an attribute, via: if (obj.attr("foo")) { ... } This commit adds it back in for attr and item accessors, but with a deprecation warning to use `hasattr(obj, ...)` or `obj.contains(...)` instead.
-
- 30 Sep, 2016 2 commits
-
-
Wenzel Jakob authored
-
Wenzel Jakob authored
-
- 29 Sep, 2016 3 commits
-
-
Wenzel Jakob authored
-
Wenzel Jakob authored
Simplify base class detection for Eigen types
-
Dean Moldovan authored
-
- 27 Sep, 2016 6 commits
-
-
Wenzel Jakob authored
-
Wenzel Jakob authored
Add in casts for c++11s chrono classes to pythons datetime
-
Trent Houliston authored
-
Trent Houliston authored
-
Trent Houliston authored
-
Wenzel Jakob authored
-
- 26 Sep, 2016 1 commit
-
-
Wenzel Jakob authored
Make the accessor interface more complete
-
- 23 Sep, 2016 3 commits
-
-
Dean Moldovan authored
`auto var = l[0]` has a strange quirk: `var` is actually an accessor and not an object, so any later assignment of `var = ...` would modify l[0] instead of `var`. This is surprising compared to the non-auto assignment `py::object var = l[0]; var = ...`. By overloading `operator=` on lvalue/rvalue, the expected behavior is restored even for `auto` variables.
-
Dean Moldovan authored
-
Dean Moldovan authored
-
- 22 Sep, 2016 4 commits
-
-
Dean Moldovan authored
This also adds the `hasattr` and `getattr` functions which are needed with the new attribute behavior. The new functions behave exactly like their Python counterparts. Similarly `object` gets a `contains` method which calls `__contains__`, i.e. it's the same as the `in` keyword in Python.
-
Dean Moldovan authored
-
Wenzel Jakob authored
Use consistent indentation and typenames in numpy vectorize.
-
Dzhelil Rufat authored
-
- 21 Sep, 2016 4 commits
-
-
Wenzel Jakob authored
Fix minor documentation spelling mistakes
-
Jason Rhinelander authored
-
Wenzel Jakob authored
-
Wenzel Jakob authored
-
- 20 Sep, 2016 2 commits
-
-
Wenzel Jakob authored
Fix missing smart_ptr test
-
Dean Moldovan authored
-
- 19 Sep, 2016 6 commits
-
-
Wenzel Jakob authored
WIP: Multiple inheritance support
-
Wenzel Jakob authored
-
Wenzel Jakob authored
-
Wenzel Jakob authored
-
Wenzel Jakob authored
-
Wenzel Jakob authored
-
- 17 Sep, 2016 1 commit
-
-
Wenzel Jakob authored
-
- 16 Sep, 2016 1 commit
-
-
Jason Rhinelander authored
The custom exception handling added in PR #273 is robust, but is overly complex for declaring the most common simple C++ -> Python exception mapping that needs only to copy `what()`. This add a simpler `py::register_exception<CppExp>(module, "PyExp");` function that greatly simplifies the common basic case of translation of a simple CppException into a simple PythonException, while not removing the more advanced capabilities of defining custom exception handlers.
-