- 20 Aug, 2020 1 commit
-
-
Henry Schreiner authored
-
- 19 Aug, 2020 1 commit
-
-
Henry Schreiner authored
* feat: FindPython support * refactor: rename to PYBIND11_FINDPYTHON * docs: Caps fixes * feat: NOPYTHON mode * test: check simple call * docs: add changelog/upgrade guide * feat: Support Python3 and Python2 * refactor: Use targets in tests * fix: support CMake 3.4+ * feat: classic search also finds virtual environments * docs: some updates from @wjakob's review * fix: wrong name for QUIET mode variable, reported by @skoslowski * refactor: cleaner output messaging * fix: support debug Python's in FindPython mode too * fixup! refactor: cleaner output messaging * fix: missing pybind11_FOUND and pybind11_INCLUDE_DIR restored to subdir mode * fix: nicer reporting of Python / PyPy * fix: out-of-order variable fix * docs: minor last-minute cleanup
-
- 16 Aug, 2020 1 commit
-
-
James R. Barlow authored
To deal with exceptions that hit destructors or other noexcept functions. Includes fixes to support Python 2.7 and extends documentation on error handling. @virtuald and @YannickJadoul both contributed to this PR.
-
- 04 Aug, 2020 1 commit
-
-
Yannick Jadoul authored
* Enable py::ellipsis on Python 2 * Enable py::ellipsis tests on Python 2 and mention `Ellipsis` in the docs
-
- 23 Jul, 2020 1 commit
-
-
Boris Staletic authored
-
- 20 Jul, 2020 1 commit
-
-
Henry Schreiner authored
-
- 15 Jul, 2020 1 commit
-
-
Kota Yamaguchi authored
* Fix undefined memoryview format * Add missing <algorithm> header * Add workaround for py27 array compatibility * Workaround py27 memoryview behavior * Fix memoryview constructor from buffer_info * Workaround PyMemoryView_FromMemory availability in py27 * Fix up memoryview tests * Update memoryview test from buffer to check signedness * Use static factory method to create memoryview * Remove ndim arg from memoryview::frombuffer and add tests * Allow ndim=0 memoryview and documentation fixup * Use void* to align to frombuffer method signature * Add const variants of frombuffer and frommemory * Add memory view section in doc * Fix docs * Add test for null buffer * Workaround py27 nullptr behavior in test * Rename frombuffer to from_buffer
-
- 07 Jul, 2020 1 commit
-
-
Dustin Spicuzza authored
- Fixes #2103
-
- 30 Jun, 2020 2 commits
-
-
Wenzel Jakob authored
-
Guilherme Dantas authored
-
- 10 Jun, 2020 1 commit
-
-
Matthijs van der Burgh authored
* (docs) convert note to real note * (docs) Add information about (deep)copy
-
- 26 Apr, 2020 5 commits
-
-
Wenzel Jakob authored
This reverts commit 9ed8b440.
-
Sebastian Koslowski authored
-
Jason Rhinelander authored
This adds support for a `py::args_kw_only()` annotation that can be specified between `py::arg` annotations to indicate that any following arguments are keyword-only. This allows you to write: m.def("f", [](int a, int b) { /* ... */ }, py::arg("a"), py::args_kw_only(), py::arg("b")); and have it work like Python 3's: def f(a, *, b): # ... with respect to how `a` and `b` arguments are accepted (that is, `a` can be positional or by keyword; `b` can only be specified by keyword). -
Dustin Spicuzza authored
- Not currently supported on PyPy
-
Orell Garten authored
__init__(self) cannot return values. According to https://stackoverflow.com/questions/2491819/how-to-return-a-value-from-init-in-python __new__(cls) should be used, which works.
-
- 14 Nov, 2019 1 commit
-
-
Francesco Biscani authored
-
- 19 Jul, 2019 1 commit
-
-
phil-zxx authored
* Added ability to convert from Python datetime.date and datetime.time to C++ system_clock::time_point
-
- 22 Jun, 2019 1 commit
-
-
Ian Bell authored
-
- 11 Jun, 2019 2 commits
-
-
Wenzel Jakob authored
-
Roland Dreier authored
Commit 2b045757 ("Improve documentation related to inheritance. (#1676)") left off a ':' from a hyperlink, which breaks the Travis CI build.
-
- 10 Jun, 2019 5 commits
-
-
Ivor Wanders authored
* Adds section to the reference. * Adds section to advanced classes page describing how to use `get_overload`.
-
Manuel Schneider authored
-
Darius Arnold authored
* Always capitalize Eigen * Fix spelling
-
Omar Awile authored
I think this particular method binding should not be done with `PYBIND11_OVERLOAD_PURE` but instead `PYBIND11_OVERLOAD`.
-
Sergei Izmailov authored
* doc: Add note about casting from `None` to `T*` * doc: reword 'none-to-pointer' note message * doc: mention opaque types in 'none-to-pointer' note message
-
- 16 Nov, 2018 2 commits
-
-
Wenzel Jakob authored
[ci skip]
-
voxmea authored
* Adds std::deque to the types supported by list_caster in stl.h. * Adds a new test_deque test in test_stl.{py,cpp}. * Updates the documentation to include std::deque as a default supported type.
-
- 28 Aug, 2018 1 commit
-
-
Wenzel Jakob authored
This PR adds a new py::ellipsis() method which can be used in conjunction with NumPy's generalized slicing support. For instance, the following is now valid (where "a" is a NumPy array): py::array b = a[py::make_tuple(0, py::ellipsis(), 0)];
-
- 24 Jun, 2018 1 commit
-
-
Thomas Hrabe authored
-
- 24 May, 2018 1 commit
-
-
Antony Lee authored
-
- 07 May, 2018 1 commit
-
-
François Becker authored
Fixed typos (erroneous `;`) in `classes.rst`.
-
- 06 May, 2018 2 commits
-
-
luzpaz authored
Found via `codespell`
-
Tom de Geus authored
-
- 14 Apr, 2018 1 commit
-
-
oremanj authored
* Add basic support for tag-based static polymorphism Sometimes it is possible to look at a C++ object and know what its dynamic type is, even if it doesn't use C++ polymorphism, because instances of the object and its subclasses conform to some other mechanism for being self-describing; for example, perhaps there's an enumerated "tag" or "kind" member in the base class that's always set to an indication of the correct type. This might be done for performance reasons, or to permit most-derived types to be trivially copyable. One of the most widely-known examples is in LLVM: https://llvm.org/docs/HowToSetUpLLVMStyleRTTI.html This PR permits pybind11 to be informed of such conventions via a new specializable detail::polymorphic_type_hook<> template, which generalizes the previous logic for determining the runtime type of an object based on C++ RTTI. Implementors provide a way to map from a base class object to a const std::type_info* for the dynamic type; pybind11 then uses this to ensure that casting a Base* to Python creates a Python object that knows it's wrapping the appropriate sort of Derived. There are a number of restrictions with this tag-based static polymorphism support compared to pybind11's existing support for built-in C++ polymorphism: - there is no support for this-pointer adjustment, so only single inheritance is permitted - there is no way to make C++ code call new Python-provided subclasses - when binding C++ classes that redefine a method in a subclass, the .def() must be repeated in the binding for Python to know about the update But these are not much of an issue in practice in many cases, the impact on the complexity of pybind11's innards is minimal and localized, and the support for automatic downcasting improves usability a great deal.
-
- 09 Apr, 2018 1 commit
-
-
Antony Lee authored
-
- 03 Apr, 2018 1 commit
-
-
Patrik Huber authored
I think that there's the word "for" missing for that sentence to be correct. Please double-check that the sentence means what it's supposed to mean. :-)
-
- 10 Mar, 2018 1 commit
-
-
Jason Rhinelander authored
- PYBIND11_MAKE_OPAQUE now takes ... rather than a single argument and expands it with __VA_ARGS__; this lets templated, comma-containing types get through correctly. - Adds a new macro PYBIND11_TYPE() that lets you pass the type into a macro as a single argument, such as: PYBIND11_OVERLOAD(PYBIND11_TYPE(R<1,2>), PYBIND11_TYPE(C<3,4>), func) Unfortunately this only works for one macro call: to forward the argument on to the next macro call (without the processor breaking it up again) requires also adding the PYBIND11_TYPE(...) to type macro arguments in the PYBIND11_OVERLOAD_... macro chain. - updated the documentation with these two changes, and use them at a couple places in the test suite to test that they work.
-
- 28 Feb, 2018 1 commit
-
-
Tomas Babej authored
-
- 11 Jan, 2018 1 commit
-
-
luz.paz authored
Found via `codespell`
-