"docs/vscode:/vscode.git/clone" did not exist on "deb3cb238a9f299d7c57f810165e90a1b14b3e6f"
- 01 Jan, 2021 1 commit
-
-
Yannick Jadoul authored
* Fix leak in the test_copy_move::test_move_fallback * Fix leaking PyMethodDef in test_class::test_implicit_conversion_life_support * Plumb leak in test_buffer, occuring when a mutable buffer is requested for a read-only object, and enable test_buffer.py * Fix weird return_value_policy::reference in test_stl_binders, and enable those tests * Cleanup nodelete holder objects in test_smart_ptr, and enable those tests
-
- 16 Oct, 2020 1 commit
-
-
Henry Schreiner authored
* style: use Black everywhere * style: minor touchup from review
-
- 12 Sep, 2020 1 commit
-
-
andriish authored
* Added guards to the includes Added new CI config Added new trigger Changed CI workflow name Debug CI Debug CI Debug CI Debug CI Added flags fro PGI Disable Eigen Removed tests that fail Uncomment lines * fix: missing include fix: minor style cleanup tests: support skipping ci: remove and tighten a bit fix: try msvc workaround for pgic * tests: split up prealoc tests * fix: PGI compiler fix * fix: PGI void_t only * fix: try to appease nvcc * ci: better ordering for slow tests * ci: minor improvements to testing * ci: Add NumPy to testing * ci: Eigen generates CUDA warnings / PGI errors * Added CentOS7 back for a moment * Fix YAML * ci: runs-on missing * centos7 is missing pytest * ci: use C++11 on CentOS 7 * ci: test something else * Try just adding flags on CentOS 7 * fix: CentOS 7 * refactor: move include to shared location * Added verbose flag * Try to use system cmake3 on CI * Try to use system cmake3 on CI, attempt2 * Try to use system cmake3 on CI, attempt3 * tests: not finding pytest should be a warning, not a fatal error * tests: cleanup * Weird issue? * fix: final polish Co-authored-by:
Andrii Verbytskyi <andrii.verbytskyi@mpp.mpg.de> Co-authored-by:
Henry Schreiner <henryschreineriii@gmail.com> Co-authored-by:
Andrii Verbytskyi <averbyts@cern.ch>
-
- 20 Jul, 2020 1 commit
-
-
Henry Schreiner authored
-
- 30 Jun, 2020 1 commit
-
-
Yannick Jadoul authored
* Adding pybind11::cast overload for rvalue references
-
- 06 Jul, 2019 1 commit
-
-
Wenzel Jakob authored
-
- 10 Jun, 2019 1 commit
-
-
luzpaz authored
-
- 11 Nov, 2018 1 commit
-
-
Trevor Laughlin authored
* Check default holder -Recognize "std::unique_ptr<T, D>" as a default holder even if "D" doesn't match between base and derived holders * Add test for unique_ptr<T, D> change
-
- 24 Jun, 2018 1 commit
-
-
Khachajantc Michael authored
-
- 05 Aug, 2017 1 commit
-
-
Jason Rhinelander authored
This udpates all the remaining tests to the new test suite code and comment styles started in #898. For the most part, the test coverage here is unchanged, with a few minor exceptions as noted below. - test_constants_and_functions: this adds more overload tests with overloads with different number of arguments for more comprehensive overload_cast testing. The test style conversion broke the overload tests under MSVC 2015, prompting the additional tests while looking for a workaround. - test_eigen: this dropped the unused functions `get_cm_corners` and `get_cm_corners_const`--these same tests were duplicates of the same things provided (and used) via ReturnTester methods. - test_opaque_types: this test had a hidden dependence on ExampleMandA which is now fixed by using the global UserType which suffices for the relevant test. - test_methods_and_attributes: this required some additions to UserType to make it usable as a replacement for the test's previous SimpleType: UserType gained a value mutator, and the `value` property is not mutable (it was previously readonly). Some overload tests were also added to better test overload_cast (as described above). - test_numpy_array: removed the untemplated mutate_data/mutate_data_t: the templated versions with an empty parameter pack expand to the same thing. - test_stl: this was already mostly in the new style; this just tweaks things a bit, localizing a class, and adding some missing `// test_whatever` comments. - test_virtual_functions: like `test_stl`, this was mostly in the new test style already, but needed some `// test_whatever` comments. This commit also moves the inherited virtual example code to the end of the file, after the main set of tests (since it is less important than the other tests, and rather length); it also got renamed to `test_inherited_virtuals` (from `test_inheriting_repeat`) because it tests both inherited virtual approaches, not just the repeat approach.
-
- 27 Jun, 2017 1 commit
-
-
Dean Moldovan authored
-
- 12 Jun, 2017 1 commit
-
-
Jason Rhinelander authored
This commit allows multiple inheritance of pybind11 classes from Python, e.g. class MyType(Base1, Base2): def __init__(self): Base1.__init__(self) Base2.__init__(self) where Base1 and Base2 are pybind11-exported classes. This requires collapsing the various builtin base objects (pybind11_object_56, ...) introduced in 2.1 into a single pybind11_object of a fixed size; this fixed size object allocates enough space to contain either a simple object (one base class & small* holder instance), or a pointer to a new allocation that can contain an arbitrary number of base classes and holders, with holder size unrestricted. * "small" here means having a sizeof() of at most 2 pointers, which is enough to fit unique_ptr (sizeof is 1 ptr) and shared_ptr (sizeof is 2 ptrs). To minimize the performance impact, this repurposes `internals::registered_types_py` to store a vector of pybind-registered base types. For direct-use pybind types (e.g. the `PyA` for a C++ `A`) this is simply storing the same thing as before, but now in a vector; for Python-side inherited types, the map lets us avoid having to do a base class traversal as long as we've seen the class before. The change to vector is needed for multiple inheritance: Python types inheriting from multiple registered bases have one entry per base.
-
- 22 May, 2017 1 commit
-
-
Jason Rhinelander authored
Using a dynamic_cast instead of a static_cast is needed to safely cast from a base to a derived type. The previous static_pointer_cast isn't safe, however, when downcasting (and fails to compile when downcasting with virtual inheritance). Switching this to always use a dynamic_pointer_cast shouldn't incur any additional overhead when a static_pointer_cast is safe (i.e. when upcasting, or self-casting): compilers don't need RTTI checks in those cases.
-
- 21 Mar, 2017 1 commit
-
-
Dean Moldovan authored
Instead of a segfault. Fixes #751. This covers the case of loading a custom holder from a default-holder instance. Attempting to load one custom holder from a different custom holder (i.e. not `std::unique_ptr`) yields undefined behavior, just as #588 established for inheritance.
-
- 31 Jan, 2017 1 commit
-
-
Dean Moldovan authored
* Abstract away some holder functionality (resolve #585) Custom holder types which don't have `.get()` can select the correct function to call by specializing `holder_traits`. * Add support for move-only holders (fix #605)
-
- 15 Dec, 2016 1 commit
-
-
Wenzel Jakob authored
* always_construct_holder feature to support intrusively reference-counted types * added testcase
-
- 07 Dec, 2016 1 commit
-
-
Dean Moldovan authored
-
- 20 Nov, 2016 1 commit
-
-
Dean Moldovan authored
A flake8 configuration is included in setup.cfg and the checks are executed automatically on Travis: * Ensures a consistent PEP8 code style * Does basic linting to prevent possible bugs
-
- 04 Sep, 2016 1 commit
-
-
Jason Rhinelander authored
Currently pybind11 only supports std::unique_ptr<T> holders by default (other holders can, of course, be declared using the macro). PR #368 added a `py::nodelete` that is intended to be used as: py::class_<Type, std::unique_ptr<Type, py::nodelete>> c("Type"); but this doesn't work out of the box. (You could add an explicit holder type declaration, but this doesn't appear to have been the intention of the commit). This commit fixes it by generalizing the unique_ptr type_caster to take both the type and deleter as template arguments, so that *any* unique_ptr instances are now automatically handled by pybind. It also adds a test to test_smart_ptr, testing both that py::nodelete (now) works, and that the object is indeed not deleted as intended.
-
- 19 Aug, 2016 1 commit
-
-
Dean Moldovan authored
Use simple asserts and pytest's powerful introspection to make testing simpler. This merges the old .py/.ref file pairs into simple .py files where the expected values are right next to the code being tested. This commit does not touch the C++ part of the code and replicates the Python tests exactly like the old .ref-file-based approach.
-