Ralf W. Grosse-Kunstleve
5566c63ebf
Move try_initialization_using_shared_from_this
into PYBIND11_HAVE_INTERNALS_WITH_SMART_HOLDER_SUPPORT
block.
2024-07-19 19:42:12 -07:00
Ralf W. Grosse-Kunstleve
35b1177f42
Small cleanup in detail/init.h: strip originally_smart_holder_type_casters_h
namespace.
2024-07-19 19:11:13 -07:00
Ralf W. Grosse-Kunstleve
62b6c8e404
Revert "Add "_sh_baked_in"
to PYBIND11_INTERNALS_ID
, PYBIND11_MODULE_LOCAL_ID
"
...
`"_sh_baked_in"` is no longer needed because the smart_holder functionality is now tied to the `PYBIND11_INTERNALS_VERSION`.
This reverts commit 884305e953
.
2024-07-19 18:55:18 -07:00
Ralf W. Grosse-Kunstleve
4a66b46080
ifdef out more code if PYBIND11_HAVE_INTERNALS_WITH_SMART_HOLDER_SUPPORT is not defined.
2024-07-19 11:21:35 -07:00
Ralf W. Grosse-Kunstleve
41433f632a
ifdef out classh if PYBIND11_HAVE_INTERNALS_WITH_SMART_HOLDER_SUPPORT is not defined.
2024-07-19 10:41:11 -07:00
Ralf W. Grosse-Kunstleve
e4456197c4
Ignore PYBIND11_USE_SMART_HOLDER_AS_DEFAULT if PYBIND11_HAVE_INTERNALS_WITH_SMART_HOLDER_SUPPORT is not defined.
2024-07-19 10:18:05 -07:00
Ralf W. Grosse-Kunstleve
6fb8b5157d
Add back original copyable_holder_caster
check_holder_compat()
in the std::shared_ptr
specialization and remove pytest.skip("BAKEIN_EXPECTED: ...)
in test_smart_ptr.py
2024-07-19 09:00:03 -07:00
Ralf W. Grosse-Kunstleve
7296c39705
Introduce detail/using_smart_holder.h and remove pybindit::memory::
in most places.
2024-07-19 00:55:15 -07:00
Ralf W. Grosse-Kunstleve
583c07bffd
Use std::unique_ptr<T>
as default holder again.
2024-07-19 00:03:49 -07:00
Ralf W. Grosse-Kunstleve
58a1b75e43
Reinterpret detail::type_info::default_holder
as "uses std::unique_ptr
holder" (which is the original meaning, and compatible with the original smart_holder branch).
2024-07-18 22:45:56 -07:00
Ralf W. Grosse-Kunstleve
cd4f5f6c5b
PYBIND11_HAVE_INTERNALS_WITH_SMART_HOLDER_SUPPORT
2024-07-18 22:44:34 -07:00
Ralf W. Grosse-Kunstleve
4aa2f6b8eb
Merge branch 'bakein_prep_on_master' into bakein
2024-07-18 01:29:47 -07:00
Ralf W. Grosse-Kunstleve
92d7724de4
Add DANGER ZONE
comment in detail/init.h, similar to a comment added on the smart_holder branch (all the way back in 2021).
2024-07-18 01:25:36 -07:00
Ralf W. Grosse-Kunstleve
1ca810e8c7
Undo DANGER ZONE
comment (brought in from smart_holder branch; before adding to PR #5251 ).
2024-07-18 01:21:38 -07:00
Ralf W. Grosse-Kunstleve
9a27e29ebd
Leverage PR #5251 to bring back trampoline_self_life_support.h from smart_holder branch almost as-is.
...
This ensures IWYU correctness in client code.
The only change in trampoline_self_life_support.h is to replace `#include "detail/type_caster_base.h"` with "#include detail/value_and_holder.h".
2024-07-18 01:13:41 -07:00
Ralf W. Grosse-Kunstleve
7fa6dd9d1c
Merge branch 'bakein_prep_on_master' into bakein
2024-07-18 01:01:05 -07:00
Ralf W. Grosse-Kunstleve
54fd559117
Fix a minor and inconsequential inconsistency in copyable_holder_caster
: the correct load_value()
return type is void
(as defined in type_caster_generic
)
...
For easy future reference, this is the long-standing inconsistency:
* dbf848aff7/include/pybind11/detail/type_caster_base.h (L634)
* dbf848aff7/include/pybind11/cast.h (L797)
Noticed in passing while working on PR #5213 .
2024-07-18 00:51:10 -07:00
Ralf W. Grosse-Kunstleve
5e30064ee6
Factor out detail/value_and_holder.h (from detail/type_caster_base.h)
...
This is in support of PR #5213 :
* trampoline_self_life_support.h depends on value_and_holder.h
* type_caster_base.h depends on trampoline_self_life_support.h
2024-07-18 00:41:39 -07:00
Ralf W. Grosse-Kunstleve
8ca559340c
Merge branch 'master' into bakein
2024-07-18 00:12:07 -07:00
Ralf Gommers
dbf848aff7
docs: extend PYBIND11_MODULE
documentation, mention mod_gil_not_used
( #5250 )
...
This follows up on PR 5148, which introduced support for free-threaded CPython.
2024-07-17 23:26:45 -07:00
Ralf W. Grosse-Kunstleve
ed27c37c4e
Merge branch 'master' into bakein
2024-07-16 11:14:30 -07:00
Sam Gross
43de8014f9
fix: make gil_safe_call_once thread-safe in free-threaded CPython ( #5246 )
...
* fix: Make gil_safe_call_once thread-safe in free-threaded CPython
The "is_initialized_" flags is not protected by the GIL in free-threaded
Python, so it needs to be an atomic field.
Fixes #5245
* style: pre-commit fixes
* Apply changes from code review
---------
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2024-07-16 11:06:54 -07:00
Ralf W. Grosse-Kunstleve
ecd01da7ac
smart_holder_from_unique_ptr
: also accept return_value_policy::take_ownership
...
There are no strong reasons for accepting or rejecting `return_value_policy::take_ownership`.
Accepting to accommodate existing use cases in the wild.
2024-07-15 01:33:15 -07:00
Ralf W. Grosse-Kunstleve
12f384bcbb
smart_holder_from_unique_ptr
: also accept return_value_policy::reference
...
There are no strong reasons for accepting or rejecting `return_value_policy::reference`.
Accepting to accommodate existing use cases in the wild.
2024-07-14 23:52:54 -07:00
Ralf W. Grosse-Kunstleve
884305e953
Add "_sh_baked_in"
to PYBIND11_INTERNALS_ID
, PYBIND11_MODULE_LOCAL_ID
2024-07-14 21:56:36 -07:00
Ralf W. Grosse-Kunstleve
0f874deee2
Move must_be_member_function_pointer
to the detail
namespace.
2024-07-14 21:39:33 -07:00
Ralf W. Grosse-Kunstleve
ff3693f1bb
Introduce detail::both_t_and_d_use_type_caster_base<T, D>
helper and use systematically in all property_cpp_function<>
specializations.
...
This fixes a PyTorch build error (using the Google-internal toolchain):
```
In file included from third_party/py/torch/torch/csrc/distributed/c10d/init.cpp:15:
In file included from third_party/py/torch/torch/csrc/distributed/c10d/PyProcessGroup.hpp:4:
In file included from third_party/py/torch/torch/csrc/jit/python/pybind_utils.h:7:
In file included from third_party/pybind11/include/pybind11/complex.h:14:
In file included from third_party/pybind11/include/pybind11/pybind11.h:14:
In file included from third_party/pybind11/include/pybind11/detail/class.h:14:
In file included from third_party/pybind11/include/pybind11/detail/../attr.h:16:
third_party/pybind11/include/pybind11/detail/../cast.h:856:19: error: static assertion failed due to requirement 'std::is_base_of<pybind11::detail::type_caster_base<c10::intrusive_ptr<c10d::Store, c10::detail::intrusive_target_default_null_type<c10d::Store>>>, pybind11::detail::type_caster<c10::intrusive_ptr<c10d::Store, c10::detail::intrusive_target_default_null_type<c10d::Store>>, void>>::value': Holder classes are only supported for custom types
856 | static_assert(std::is_base_of<base, type_caster<type>>::value,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
third_party/pybind11/include/pybind11/detail/../cast.h:982:48: note: in instantiation of template class 'pybind11::detail::copyable_holder_caster<c10::intrusive_ptr<c10d::Store>, std::shared_ptr<c10::intrusive_ptr<c10d::Store>>>' requested here
982 | class type_caster<std::shared_ptr<T>> : public copyable_holder_caster<T, std::shared_ptr<T>> {};
| ^
third_party/crosstool/v18/stable/src/libcxx/include/__type_traits/is_base_of.h:22:91: note: in instantiation of template class 'pybind11::detail::type_caster<std::shared_ptr<c10::intrusive_ptr<c10d::Store>>>' requested here
22 | struct _LIBCPP_TEMPLATE_VIS is_base_of : public integral_constant<bool, __is_base_of(_Bp, _Dp)> {};
| ^
third_party/pybind11/include/pybind11/detail/../cast.h:1382:30: note: in instantiation of template class 'std::is_base_of<pybind11::detail::type_caster_generic, pybind11::detail::type_caster<std::shared_ptr<c10::intrusive_ptr<c10d::Store>>>>' requested here
1382 | detail::enable_if_t<std::is_base_of<type_caster_generic, make_caster<Return>>::value, void>> {
| ^
third_party/pybind11/include/pybind11/pybind11.h:287:19: note: during template argument deduction for class template partial specialization 'return_value_policy_override<Return, detail::enable_if_t<std::is_base_of<type_caster_generic, make_caster<Return>>::value, void>>' [with Return = std::shared_ptr<c10::intrusive_ptr<c10d::Store>>]
287 | = return_value_policy_override<Return>::policy(call.func.policy);
| ^
third_party/pybind11/include/pybind11/pybind11.h:287:19: note: in instantiation of template class 'pybind11::detail::return_value_policy_override<std::shared_ptr<c10::intrusive_ptr<c10d::Store>>>' requested here
third_party/pybind11/include/pybind11/pybind11.h:269:55: note: while substituting into a lambda expression here
269 | rec->impl = [](function_call &call) -> handle {
| ^
third_party/pybind11/include/pybind11/pybind11.h:147:9: note: in instantiation of function template specialization 'pybind11::cpp_function::initialize<(lambda at third_party/pybind11/include/pybind11/pybind11.h:1714:17), std::shared_ptr<c10::intrusive_ptr<c10d::Store>>, pybind11::handle, pybind11::is_method>' requested here
147 | initialize(
| ^
third_party/pybind11/include/pybind11/pybind11.h:1713:20: note: in instantiation of function template specialization 'pybind11::cpp_function::cpp_function<(lambda at third_party/pybind11/include/pybind11/pybind11.h:1714:17), pybind11::is_method, void>' requested here
1713 | return cpp_function(
| ^
third_party/pybind11/include/pybind11/pybind11.h:1964:54: note: in instantiation of function template specialization 'pybind11::property_cpp_function<c10d::DistributedBackendOptions, c10::intrusive_ptr<c10d::Store>>::read<c10::intrusive_ptr<c10d::Store> c10d::DistributedBackendOptions::*, 0>' requested here
1964 | property_cpp_function<type, D>::read(pm, *this),
| ^
third_party/py/torch/torch/csrc/distributed/c10d/init.cpp:945:8: note: in instantiation of function template specialization 'pybind11::class_<c10d::DistributedBackendOptions>::def_readwrite<c10d::DistributedBackendOptions, c10::intrusive_ptr<c10d::Store>>' requested here
945 | .def_readwrite("store", &::c10d::DistributedBackendOptions::store)
| ^
1 error generated.
```
2024-07-14 21:19:50 -07:00
Ralf W. Grosse-Kunstleve
c65d5dfaa8
Systematically use is_base_of<type_caster_generic, make_caster<D>>
in property_cpp_function<>
specializations.
2024-07-14 00:54:41 -07:00
Ralf W. Grosse-Kunstleve
3406be6877
New test_class_sh_property_bakein.py
...
Use cases in the wild:
* `test_readonly_char6_member()`: 4410c44ae6/torch/csrc/cuda/Module.cpp (L961)
* `test_readonly_const_char_ptr_member()`: 862a439a84/include/permonst.h (L43)
2024-07-13 23:46:36 -07:00
Ralf W. Grosse-Kunstleve
6fa0a2e439
PYBIND11_HAVE_HOLDER_CASTER_WITH_SMART_HOLDER_SUPPORT
...
Introduce two helper types:
* copyable_holder_caster_shared_ptr_with_smart_holder_support_enabled
* move_only_holder_caster_unique_ptr_with_smart_holder_support_enabled
2024-07-13 00:07:57 -07:00
Ralf W. Grosse-Kunstleve
d021bb10aa
Remove redundant check_holder_compat()
no-op implementation.
2024-07-12 08:31:35 -07:00
Ralf W. Grosse-Kunstleve
63044cc199
Bring in default_holder_type
from smart_holder branch including using it in pybind11/stl_bind.h
2024-07-12 08:26:34 -07:00
Ralf W. Grosse-Kunstleve
d373a082ad
Remove remaining BAKEIN_BREAK in test_class_sh_property.cpp,py and adjust (simplify) the property_cpp_function<...unique_ptr...>::write
implementation (all tests pass).
...
This PR (#5213 ) at this commit also passes ASAN, MSAN, UBSAN testing with the Google-internal toolchain.
2024-07-12 02:38:14 -07:00
Ralf W. Grosse-Kunstleve
048e36df40
Bring in shared_ptr_with_responsible_parent()
from smart_holder branch:
...
smart_holder branch:
```
static std::shared_ptr<type> shared_ptr_from_python(handle responsible_parent)
```
Renamed in this commit:
```
static std::shared_ptr<type> shared_ptr_with_responsible_parent(handle responsible_parent)
```
Use in `property_cpp_function<>` specializations.
Fixes all 8 test failures introduced with the previous commit (1bcf572780
):
```
FAILED test_class_sh_property_non_owning.py::test_core_fld_common[core_fld_value_ro-expected0-True] - RuntimeError: Non-owning holder (loaded_as_shared_ptr).
FAILED test_class_sh_property_non_owning.py::test_core_fld_common[core_fld_value_rw-expected1-True] - RuntimeError: Non-owning holder (loaded_as_shared_ptr).
FAILED test_class_sh_property_non_owning.py::test_core_fld_common[core_fld_value_rw-expected1-False] - RuntimeError: Non-owning holder (loaded_as_shared_ptr).
FAILED test_class_sh_property_non_owning.py::test_core_fld_common[core_fld_raw_ptr_ro-expected4-True] - RuntimeError: Non-owning holder (loaded_as_shared_ptr).
FAILED test_class_sh_property_non_owning.py::test_core_fld_common[core_fld_raw_ptr_ro-expected4-False] - RuntimeError: Non-owning holder (loaded_as_shared_ptr).
FAILED test_class_sh_property_non_owning.py::test_core_fld_common[core_fld_raw_ptr_rw-expected5-True] - RuntimeError: Non-owning holder (loaded_as_shared_ptr).
FAILED test_class_sh_property_non_owning.py::test_core_fld_common[core_fld_value_ro-expected0-False] - RuntimeError: Non-owning holder (loaded_as_shared_ptr).
FAILED test_class_sh_property_non_owning.py::test_core_fld_common[core_fld_raw_ptr_rw-expected5-False] - RuntimeError: Non-owning holder (loaded_as_shared_ptr).
```
2024-07-12 02:11:09 -07:00
Ralf W. Grosse-Kunstleve
1bcf572780
First pass adapting all property_cpp_function<>
implementations. Still needs debugging and more testing:
...
```
========================================================= short test summary info ==========================================================
SKIPPED [2] test_class_sh_property.py:19: BAKEIN_BREAK: Failed: DID NOT RAISE <class 'ValueError'>
SKIPPED [1] test_class_sh_property.py:87: BAKEIN_BREAK: m_uqcp_readwrite does not build
SKIPPED [1] test_class_sh_property.py:140: BAKEIN_BREAK: m_uqmp_readwrite does not build
SKIPPED [1] test_class_sh_property.py:140: BAKEIN_BREAK: m_uqcp_readwrite does not build
SKIPPED [1] test_class_sh_basic.py:156: unconditional skip
SKIPPED [1] test_class_sh_property.py:87: BAKEIN_BREAK: m_uqmp_readwrite does not build
SKIPPED [1] test_stl.py:149: no <experimental/optional>
SKIPPED [1] test_smart_ptr.py:301: BAKEIN_EXPECTED: Failed: DID NOT RAISE <class 'RuntimeError'>
FAILED test_class_sh_property_non_owning.py::test_core_fld_common[core_fld_value_rw-expected1-True] - RuntimeError: Non-owning holder (loaded_as_shared_ptr).
FAILED test_class_sh_property_non_owning.py::test_core_fld_common[core_fld_value_rw-expected1-False] - RuntimeError: Non-owning holder (loaded_as_shared_ptr).
FAILED test_class_sh_property_non_owning.py::test_core_fld_common[core_fld_value_ro-expected0-True] - RuntimeError: Non-owning holder (loaded_as_shared_ptr).
FAILED test_class_sh_property_non_owning.py::test_core_fld_common[core_fld_raw_ptr_ro-expected4-True] - RuntimeError: Non-owning holder (loaded_as_shared_ptr).
FAILED test_class_sh_property_non_owning.py::test_core_fld_common[core_fld_raw_ptr_ro-expected4-False] - RuntimeError: Non-owning holder (loaded_as_shared_ptr).
FAILED test_class_sh_property_non_owning.py::test_core_fld_common[core_fld_raw_ptr_rw-expected5-True] - RuntimeError: Non-owning holder (loaded_as_shared_ptr).
FAILED test_class_sh_property_non_owning.py::test_core_fld_common[core_fld_value_ro-expected0-False] - RuntimeError: Non-owning holder (loaded_as_shared_ptr).
FAILED test_class_sh_property_non_owning.py::test_core_fld_common[core_fld_raw_ptr_rw-expected5-False] - RuntimeError: Non-owning holder (loaded_as_shared_ptr).
================================================ 8 failed, 1056 passed, 9 skipped in 3.96s =================================================
```
2024-07-10 15:21:09 -07:00
Ralf W. Grosse-Kunstleve
f852cf5714
Copy code property_cpp_function<>
code from smart_holder branch as-is. Ifdef out all but the "classic" implementation.
2024-07-10 15:16:59 -07:00
Ralf W. Grosse-Kunstleve
127058cb16
Replace loaded_v_h.type = get_type_info(typeid(type))
with loaded_v_h.type = typeinfo
in unique_ptr
type_caster
and remove pytest.skip()
in test_class_sh_disowning_mi.py
2024-07-10 08:18:24 -07:00
Ralf W. Grosse-Kunstleve
575919098a
Remove all LOOOK in type_caster_base.h
2024-07-09 15:14:05 -07:00
Ralf W. Grosse-Kunstleve
c6a87e8897
Call new load_helper.get_void_ptr_or_nullptr() instead of calling type_caster_generic::load_value() in shared_ptr and unique_ptr casters.
2024-07-09 15:07:10 -07:00
Ralf W. Grosse-Kunstleve
36bbac1b47
LOOOK to trace disowning
2024-07-09 14:09:38 -07:00
Ralf W. Grosse-Kunstleve
0296d33b1d
Stress test: use PYBIND11_SMART_HOLDER_PADDING unconditionally.
2024-07-08 17:43:31 -07:00
Ralf W. Grosse-Kunstleve
f1f0eef3cb
Remove cruft from smart_holder_type_caster_support::load_helper<>
2024-07-07 10:14:06 -07:00
Ralf W. Grosse-Kunstleve
b82892ae6f
Resolve clang-tidy errors and warnings.
2024-07-07 09:43:53 -07:00
Ralf W. Grosse-Kunstleve
bd37d69b67
Bug fix: typeid(cpptype)
-> cpptype->name()
2024-07-07 08:54:55 -07:00
Ralf W. Grosse-Kunstleve
042ea81fbe
Pass thunk-corrected pointer to loaded_as_unique_ptr(). With this all test_class_sh_mi_thunks tests pass.
2024-07-07 07:34:00 -07:00
Ralf W. Grosse-Kunstleve
103666ad40
Micro-scale cleanup/consolidation.
2024-07-07 06:58:07 -07:00
Ralf W. Grosse-Kunstleve
1fbc4a2f54
Clean out dead-end and debug code.
2024-07-07 06:46:04 -07:00
Ralf W. Grosse-Kunstleve
bb6b429a2f
MESSY but success for: test_get_vec_size_raw_shared[get_drvd_as_base0_raw_ptr-vec_size_base0_shared_ptr]
...
scons -j 48 selected_test_cpp=test_class_sh_mi_thunks.cpp && "$(cat PYROOT)"/bin/python3 $HOME/clone/pybind11_scons/run_tests.py ../pybind11 test_class_sh_mi_thunks.py -s -vv -k 'test_get_vec_size_raw_shared[get_drvd_as_base0_raw_ptr-vec_size_base0_shared_ptr]'
```
=========================================================== test session starts ============================================================
platform linux -- Python 3.11.8, pytest-7.4.4, pluggy-1.5.0 -- /usr/bin/python3
cachedir: .pytest_cache
C++ Info: 13.2.0 C++20 __pybind11_internals_v10000000_gcc_libstdcpp_cxxabi1018__ PYBIND11_SIMPLE_GIL_MANAGEMENT=False PYBIND11_NUMPY_1_ONLY=False
rootdir: /usr/local/google/home/rwgk/forked/pybind11/tests
configfile: pytest.ini
plugins: xdist-3.5.0
collected 10 items / 9 deselected / 1 selected
test_class_sh_mi_thunks.py::test_get_vec_size_raw_shared[get_drvd_as_base0_raw_ptr-vec_size_base0_shared_ptr]
LOOOK A
LOOOK get raw drvd 47927280
LOOOK get raw base 47927312
LOOOK B
LOOOK shd load(src, convert) X
LOOOK shd try_implicit_casts(src, convert) Q
LOOOK shd try_implicit_casts(src, convert) R
LOOOK shd load(src, convert) X
LOOOK shd load_value(v_h) ENTRY
LOOOK shd load_value(v_h) A
LOOOK shd load_value(v_h) B
LOOOK shd load(src, convert) Y 47927280
LOOOK shd try_implicit_casts(src, convert) S
LOOOK shd load(src, convert) Y 47927312
LOOOK operator std::shared_ptr<type> & A 47927312 /usr/local/google/home/rwgk/forked/pybind11/include/pybind11/detail/../cast.h:891
LOOOK /usr/local/google/home/rwgk/forked/pybind11/include/pybind11/detail/../detail/type_caster_base.h:838
LOOOK /usr/local/google/home/rwgk/forked/pybind11/include/pybind11/detail/../detail/type_caster_base.h:842
LOOOK operator std::shared_ptr<type> & B 47927312 /usr/local/google/home/rwgk/forked/pybind11/include/pybind11/detail/../cast.h:893
LOOOK shd const Base0 *obj 47927312
LOOOK shd const auto *obj_der 47927280
LOOOK C
PASSED
===================================================== 1 passed, 9 deselected in 0.01s ======================================================
```
2024-07-07 06:31:23 -07:00
Ralf W. Grosse-Kunstleve
eb15f1a384
WIP: remove convert_type() call from loaded_as_shared_ptr()
2024-07-06 14:29:22 -07:00
Ralf W. Grosse-Kunstleve
4114e975d4
throw from convert_type()
to expose bug.
...
```
========================================================= short test summary info ==========================================================
SKIPPED [4] test_class_sh_disowning_mi.py:67: BAKEIN_BREAK: AssertionError
SKIPPED [2] test_class_sh_disowning_mi.py:43: BAKEIN_BREAK: AssertionError
SKIPPED [2] test_class_sh_disowning_mi.py:54: BAKEIN_BREAK: AssertionError
SKIPPED [1] test_class_sh_basic.py:156: unconditional skip
SKIPPED [6] test_class_sh_mi_thunks.py:34: BAKEIN_BREAK: Segmentation fault
SKIPPED [2] test_class_sh_mi_thunks.py:43: BAKEIN_BREAK: AssertionError
SKIPPED [1] test_class_sh_mi_thunks.py:51: BAKEIN_BREAK: Failed: DID NOT RAISE <class 'ValueError'>
SKIPPED [1] test_stl.py:149: no <experimental/optional>
SKIPPED [1] test_smart_ptr.py:301: BAKEIN_EXPECTED: Failed: DID NOT RAISE <class 'RuntimeError'>
FAILED test_class_sh_basic.py::test_load_with_mtxt[pass_shmp-Shmp-pass_shmp:Shmp(_MvCtor)*_MvCtor] - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_disowning_mi.py::test_disown_b - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_basic.py::test_unique_ptr_consumer_roundtrip[pass_valu-rtrn_lref-True-False] - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_basic.py::test_cannot_disown_use_count_ne_1[pass_udcp-rtrn_udcp] - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_basic.py::test_unique_ptr_roundtrip - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_basic.py::test_unique_ptr_consumer_roundtrip[pass_valu-rtrn_cref-True-False] - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_basic.py::test_load_with_mtxt[pass_uqmp-Uqmp-pass_uqmp:Uqmp(_MvCtor)*_MvCtor] - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_basic.py::test_load_with_mtxt[pass_uqcp-Uqcp-pass_uqcp:Uqcp(_MvCtor)*_MvCtor] - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_basic.py::test_load_with_rtrn_f[pass_udmp-rtrn_udmp-pass_udmp:rtrn_udmp] - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_basic.py::test_load_with_rtrn_f[pass_udcp-rtrn_udcp-pass_udcp:rtrn_udcp] - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_basic.py::test_deleter_roundtrip[pass_udcp_del-rtrn_udcp_del-pass_udcp_del:rtrn_udcp_del,udcp_deleter(_MvCtorTo)*_MvCtorTo] - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_basic.py::test_deleter_roundtrip[pass_udmp_del_nd-rtrn_udmp_del_nd-pass_udmp_del_nd:rtrn_udmp_del_nd,udmp_deleter_nd(_MvCtorTo)*_MvCtorTo] - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_basic.py::test_deleter_roundtrip[pass_udcp_del_nd-rtrn_udcp_del_nd-pass_udcp_del_nd:rtrn_udcp_del_nd,udcp_deleter_nd(_MvCtorTo)*_MvCtorTo] - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_disowning.py::test_same_twice - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_disowning.py::test_mixed - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_disowning.py::test_overloaded - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_basic.py::test_pass_unique_ptr_disowns[pass_udmp-rtrn_udmp-pass_udmp:rtrn_udmp] - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_basic.py::test_pass_unique_ptr_disowns[pass_udcp-rtrn_udcp-pass_udcp:rtrn_udcp] - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_basic.py::test_cannot_disown_use_count_ne_1[pass_uqmp-rtrn_uqmp] - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_basic.py::test_cannot_disown_use_count_ne_1[pass_uqcp-rtrn_uqcp] - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_basic.py::test_unique_ptr_consumer_roundtrip[pass_valu-rtrn_valu-True-True] - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_basic.py::test_pass_unique_ptr_disowns[pass_uqmp-rtrn_uqmp-pass_uqmp:rtrn_uqmp] - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_disowning_mi.py::test_disown_base1_first[MI1-1-2-None] - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_trampoline_shared_from_this.py::test_pure_cpp_sft_raw_ptr[make_pure_cpp_sft_unq_ptr] - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_trampoline_shared_from_this.py::test_pure_cpp_sft_raw_ptr[make_pure_cpp_sft_shd_ptr] - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_trampoline_basic.py::test_drvd0_add_in_cpp_unique_ptr - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_trampoline_basic.py::test_drvd1_add_in_cpp_unique_ptr - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_trampoline_self_life_support.py::test_m_big5 - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_trampoline_self_life_support.py::test_py_big5[0-Seed_CpCtor] - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_virtual_py_cpp_mix.py::test_get_from_cpp_unique_ptr[Base-5101] - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_virtual_py_cpp_mix.py::test_get_from_cpp_unique_ptr[PyBase-5323] - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_disowning_mi.py::test_disown_base2_first[MI1-1-2-None] - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_disowning_mi.py::test_disown_base2_first[MI2-3-4-1] - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_disowning_mi.py::test_disown_base2_first[MI3-5-6-1] - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_disowning_mi.py::test_disown_base2_first[MI4-7-8-1] - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_inheritance.py::test_rtrn_shmp_drvd_pass_shcp_base - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_inheritance.py::test_rtrn_shmp_drvd_up_cast_pass_shcp_drvd - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_trampoline_shared_from_this.py::test_std_make_shared_factory - AssertionError: assert 'BEAKIN_WIP: ...ype() called.' == 'smart_holder...ed_from_this.'
FAILED test_class_sh_trampoline_shared_ptr_cpp_arg.py::test_shared_ptr_cpp_arg - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_trampoline_shared_ptr_cpp_arg.py::test_shared_ptr_cpp_prop - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_trampoline_shared_ptr_cpp_arg.py::test_shared_ptr_arg_identity - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_disowning_mi.py::test_disown_base2[MI6-12-1] - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_disowning_mi.py::test_disown_base2[MI7-13-4] - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_disowning_mi.py::test_disown_base2[MI8-14-1] - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_disowning_mi.py::test_disown_base2[MI8b-15-3] - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_trampoline_shared_from_this.py::test_multiple_registered_instances_for_same_pointee - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_trampoline_shared_from_this.py::test_multiple_registered_instances_for_same_pointee_leak - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_virtual_py_cpp_mix.py::test_get_from_cpp_unique_ptr[CppDerivedPlain-5202] - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_virtual_py_cpp_mix.py::test_get_from_cpp_unique_ptr[CppDerived-5212] - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_trampoline_shared_from_this.py::test_release_and_stash_leak - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_trampoline_shared_from_this.py::test_release_and_stash_via_shared_from_this - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_trampoline_shared_from_this.py::test_release_and_stash_via_shared_from_this_leak - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_trampoline_shared_from_this.py::test_pass_released_shared_ptr_as_unique_ptr - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_trampoline_shared_ptr_cpp_arg.py::test_shared_ptr_goaway - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_trampoline_shared_ptr_cpp_arg.py::test_infinite - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_trampoline_shared_ptr_cpp_arg.py::test_std_make_shared_factory[pass_through_shd_ptr] - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_trampoline_shared_ptr_cpp_arg.py::test_std_make_shared_factory[pass_through_shd_ptr_release_gil] - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_trampoline_unique_ptr.py::test_m_clone_and_foo - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_unique_ptr_member.py::test_pointee_and_ptr_owner[give_up_ownership_via_unique_ptr] - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_trampoline_self_life_support.py::test_py_big5[2-Seed_OpEqLv] - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_trampoline_self_life_support.py::test_py_big5[3-Seed_OpEqRv] - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_trampoline_shared_from_this.py::test_release_and_shared_from_this - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_trampoline_shared_from_this.py::test_release_and_shared_from_this_leak - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_basic.py::test_load_with_mtxt[pass_shcp-Shcp-pass_shcp:Shcp(_MvCtor)*_MvCtor] - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_disowning_mi.py::test_disown_base1_first[MI2-3-4-1] - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_basic.py::test_unique_ptr_consumer_roundtrip[pass_rref-rtrn_valu-True-True] - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_disowning_mi.py::test_disown_base1_first[MI3-5-6-1] - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_disowning_mi.py::test_disown_base1_first[MI4-7-8-1] - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_basic.py::test_pass_unique_ptr_disowns[pass_uqcp-rtrn_uqcp-pass_uqcp:rtrn_uqcp] - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_basic.py::test_cannot_disown_use_count_ne_1[pass_udmp-rtrn_udmp] - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_trampoline_unique_ptr.py::test_m_clone - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_disowning_mi.py::test_disown_base2_first[MI5-10-11-1] - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_trampoline_self_life_support.py::test_py_big5[1-Seed_MvCtor] - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_trampoline_shared_from_this.py::test_multiple_registered_instances_for_same_pointee_recursive - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_virtual_py_cpp_mix.py::test_get_from_cpp_unique_ptr[PyCppDerived-5434] - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_trampoline_basic.py::test_drvd0_add_in_cpp_shared_ptr - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_trampoline_shared_from_this.py::test_release_and_stash - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_basic.py::test_deleter_roundtrip[pass_udmp_del-rtrn_udmp_del-pass_udmp_del:rtrn_udmp_del,udmp_deleter(_MvCtorTo)*_MvCtorTo] - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_unique_ptr_member.py::test_pointee_and_ptr_owner[give_up_ownership_via_shared_ptr] - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_trampoline_shared_from_this.py::test_pure_cpp_sft_raw_ptr[make_pure_cpp_sft_raw_ptr] - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_trampoline_shared_ptr_cpp_arg.py::test_shared_ptr_alias_nonpython - RuntimeError: BEAKIN_WIP: convert_type() called.
FAILED test_class_sh_disowning_mi.py::test_disown_base1_first[MI5-10-11-1] - RuntimeError: BEAKIN_WIP: convert_type() called.
================================================ 82 failed, 939 passed, 20 skipped in 4.02s ================================================
```
2024-07-06 13:11:20 -07:00