- 13 Jan, 2017 2 commits
-
-
Alexander Stukowski authored
Correct function signature of module init function generated PYBIND11_PLUGIN_IMPL macro for Python 2.x (#602)
-
Lori A. Burns authored
-
- 06 Jan, 2017 2 commits
-
-
Dean Moldovan authored
This way a non-CACHE variable can also be used. For example: ``` set(PYBIND11_PYTHON_VERSION <value>) add_subdirectory(...) ```
-
Wenzel Jakob authored
-
- 04 Jan, 2017 4 commits
-
-
Wenzel Jakob authored
-
Wenzel Jakob authored
-
Wenzel Jakob authored
-
Wenzel Jakob authored
On a debian jessie machine, running 'python --version --noconftest' caused pytest to try and run the test suite with the not-yet-compiled extension module, thus failing the test. This commit chages the pytest detection so that it only attempts to run an import statement.
-
- 03 Jan, 2017 1 commit
-
-
Dean Moldovan authored
-
- 01 Jan, 2017 4 commits
-
-
Wenzel Jakob authored
-
Jason Rhinelander authored
Both are no longer needed: debian testing has Python 2.7.13 final now, and wheels of numpy and scipy are available.
-
Wenzel Jakob authored
-
Wenzel Jakob authored
-
- 29 Dec, 2016 2 commits
-
-
Wenzel Jakob authored
-
Wenzel Jakob authored
-
- 28 Dec, 2016 1 commit
-
-
Michael König authored
-
- 26 Dec, 2016 7 commits
-
-
Wenzel Jakob authored
-
Wenzel Jakob authored
-
Wenzel Jakob authored
-
Wenzel Jakob authored
-
Jason Rhinelander authored
Fixes #567. If pybind's CMakeLists gets loaded via an include_directory from another CMakeLists with a higher minimum version (e.g. 3.0), the project() command without a version produces a CMP0048 warning. This commit explicitly requests the new behaviour if the policy exists, as it won't cause problems (we set VERSION later).
-
Yung-Yu Chen authored
* Fixed a regression that was introduced in the PyPy patch: use ht_qualname_meta instead of ht_qualname to fix PyHeapTypeObject->ht_qualname field. * Added a qualname/repr test that works in both Python 3.3+ and previous versions
-
Yung-Yu Chen authored
* Temporarily allows osx homebrew Python 3.6 to fail. https://github.com/pybind/pybind11/pull/570#issuecomment-269120613 "Homebrew just got Python 3.6 (brew install python3), but numpy and scipy don't have binary wheels for 3.6 yet so it's trying to compile from source and failing."
-
- 23 Dec, 2016 2 commits
-
-
Wenzel Jakob authored
-
Wenzel Jakob authored
-
- 19 Dec, 2016 5 commits
-
-
Jason Rhinelander authored
-
Dean Moldovan authored
-
Dean Moldovan authored
Makes room for an eventual pybind11::embedded target.
-
Dean Moldovan authored
See the documentation for a description of the options.
-
Dean Moldovan authored
Add a BUILD_INTERFACE and a pybind11::pybind11 alias for the interface library to match the installed target. Add new cmake tests for add_subdirectory and consolidates the .cpp and .py files needed for the cmake build tests: Before: tests |-- test_installed_module | |-- CMakeLists.txt | |-- main.cpp | \-- test.py \-- test_installed_target |-- CMakeLists.txt |-- main.cpp \-- test.py After: tests \-- test_cmake_build |-- installed_module/CMakeLists.txt |-- installed_target/CMakeLists.txt |-- subdirectory_module/CMakeLists.txt |-- subdirectory_target/CMakeLists.txt |-- main.cpp \-- test.py
-
- 18 Dec, 2016 1 commit
-
-
Wenzel Jakob authored
-
- 16 Dec, 2016 1 commit
-
-
Wenzel Jakob authored
This commit includes modifications that are needed to get pybind11 to work with PyPy. The full test suite compiles and runs except for a last few functions that are commented out (due to problems in PyPy that were reported on the PyPy bugtracker). Two somewhat intrusive changes were needed to make it possible: two new tags ``py::buffer_protocol()`` and ``py::metaclass()`` must now be specified to the ``class_`` constructor if the class uses the buffer protocol and/or requires a metaclass (e.g. for static properties). Note that this is only for the PyPy version based on Python 2.7 for now. When the PyPy 3.x has caught up in terms of cpyext compliance, a PyPy 3.x patch will follow.
-
- 15 Dec, 2016 3 commits
-
-
Lori A. Burns authored
-
Wenzel Jakob authored
* always_construct_holder feature to support intrusively reference-counted types * added testcase
-
Jason Rhinelander authored
Current debian testing has Python 2.7.13-RC1, which has a serious regression (upstream https://bugs.python.org/issue5322) which should be reverted for RC2 (or the final 2.7.13). Ignore build failures for this build test temporarily (with the intention of reverting this commit in a couple of weeks once it stops failing, i.e. when debian testing picks up an updated python 2.7 release).
-
- 14 Dec, 2016 5 commits
-
-
Jason Rhinelander authored
-
Jason Rhinelander authored
This replaces the current `all_of_t<Pred, Ts...>` with `all_of<Ts...>`, with previous use of `all_of_t<Pred, Ts...>` becoming `all_of<Pred<Ts>...>` (and similarly for `any_of_t`). It also adds a `none_of<Ts...>`, a shortcut for `negation<any_of<Ts...>>`. This allows `all_of` and `any_of` to be used a bit more flexible, e.g. in cases where several predicates need to be tested for the same type instead of the same predicate for multiple types. This commit replaces the implementation with a more efficient version for non-MSVC. For MSVC, this changes the workaround to use the built-in, recursive std::conjunction/std::disjunction instead. This also removes the `count_t` since `any_of_t` and `all_of_t` were the only things using it. This commit also rearranges some of the future std imports to use actual `std` implementations for C++14/17 features when under the appropriate compiler mode, as we were already doing for a few things (like index_sequence). Most of these aren't saving much (the implementation for enable_if_t, for example, is trivial), but I think it makes the intention of the code instantly clear. It also enables MSVC's native std::index_sequence support.
-
Jason Rhinelander authored
-
Jason Rhinelander authored
Add a build using g++-7 snapshot from debian experimental. This build is set to allow failures without triggering an overall build failure (since this is an experimental compiler with experimental support for a future C++ standard).
-
Jason Rhinelander authored
When compiling in C++17 mode the noexcept specifier is part of the function type. This causes a failure in pybind11 because, by omitting a noexcept specifier when deducing function return and argument types, we are implicitly making `noexcept(false)` part of the type. This means that functions with `noexcept` fail to match the function templates in cpp_function (and other places), and we get compilation failure (we end up trying to fit it into the lambda function version, which fails since a function pointer has no `operator()`). We can, however, deduce the true/false `B` in noexcept(B), so we don't need to add a whole other set of overloads, but need to deduce the extra argument when under C++17. That will *not* work under pre-C++17, however. This commit adds two macros to fix the problem: under C++17 (with the appropriate feature macro set) they provide an extra `bool NoExceptions` template argument and provide the `noexcept(NoExceptions)` deduced specifier. Under pre-C++17 they expand to nothing. This is needed to compile pybind11 with gcc7 under -std=c++17.
-