Skip to content

Tests on the main branch fail in GitHub Codespaces #5254

@olp-cs

Description

@olp-cs

Bug Description

The test session is failing on the main branch:

$ nox -s test

error: 3 targets failed:
    `--lib`
    `--test test_datetime`
    `--test test_pyerr_debug_unformattable`
nox > Command cargo test --no-fail-fast --no-default-features --all-targets failed with exit code 101
nox > Session test failed.

Steps to Reproduce

  1. Open the pyo3 repository on GitHub, click the "Code" button (on the right), and click "+" (Create a codespace on main).
  2. pip install nox
  3. Install Rust (curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh) > Click "Enter" (Proceed with standard installation)
  4. . "$HOME/.cargo/env"
  5. export RUST_BACKTRACE=1 to include backtrace
  6. nox -s test

Backtrace

Running unittests src/lib.rs (target/debug/deps/pyo3-63b2690869d110b9)

running 668 tests
test buffer::tests::test_bytes_buffer ... ok
test buffer::tests::test_compatible_size ... ok
test buffer::tests::test_array_buffer ... FAILED
test buffer::tests::test_debug ... ok
test buffer::tests::test_element_type_from_format ... ok
test conversions::std::array::tests::array_try_from_fn ... ok
test conversions::std::array::tests::test_array_intopyobject_impl ... ok
test conversions::std::array::tests::test_extract_bytearray_to_array ... ok
test conversions::std::array::tests::test_extract_invalid_sequence_length ... ok
test conversions::std::array::tests::test_extract_non_iterable_to_array ... ok
test conversions::std::array::tests::test_extract_small_bytearray_to_array ... ok
test conversions::std::array::tests::test_into_pyobject_array_conversion ... ok
test conversions::std::array::tests::test_intopyobject_array_conversion ... ok
test conversions::std::ipaddr::test_ipaddr::test_from_pystring ... ok
test conversions::std::map::tests::test_btreemap_into_py ... ok
test conversions::std::map::tests::test_btreemap_to_python ... ok
test conversions::std::map::tests::test_hashmap_into_python ... ok
test conversions::std::map::tests::test_hashmap_to_python ... ok
test conversions::std::num::test_128bit_integers::test_i128_max ... ok
test conversions::std::num::test_128bit_integers::test_i128_min ... ok
test conversions::std::num::test_128bit_integers::test_i128_overflow ... ok
test conversions::std::ipaddr::test_ipaddr::test_roundtrip ... ok
test conversions::std::num::test_128bit_integers::test_nonzero_i128_max ... ok
test conversions::std::num::test_128bit_integers::test_nonzero_i128_min ... ok
test conversions::std::num::test_128bit_integers::test_nonzero_i128_overflow ... ok
test conversions::std::num::test_128bit_integers::test_i128_roundtrip ... ok
test conversions::std::num::test_128bit_integers::test_nonzero_i128_zero_value ... ok
test conversions::std::num::test_128bit_integers::test_nonzero_u128_max ... ok
test conversions::std::num::test_128bit_integers::test_nonzero_u128_overflow ... ok
test conversions::std::num::test_128bit_integers::test_nonzero_i128_roundtrip ... ok
test conversions::std::num::test_128bit_integers::test_nonzero_u128_zero_value ... ok
test conversions::std::num::test_128bit_integers::test_u128_max ... ok
test conversions::std::num::test_128bit_integers::test_u128_overflow ... ok
test conversions::std::num::test_128bit_integers::test_nonzero_u128_roundtrip ... ok
test conversions::std::num::tests::i128::from_py_float_type_error ... ok
test conversions::std::num::tests::i128::from_py_string_type_error ... ok
test conversions::std::num::tests::i128::to_py_object_and_back ... ok
test conversions::std::num::tests::i16::from_py_float_type_error ... ok
test conversions::std::num::tests::i16::from_py_string_type_error ... ok
test conversions::std::num::tests::i16::to_py_object_and_back ... ok
test conversions::std::num::tests::i32::from_py_float_type_error ... ok
test conversions::std::num::tests::i32::from_py_string_type_error ... ok
test conversions::std::num::tests::i32::to_py_object_and_back ... ok
test conversions::std::num::tests::i64::from_py_float_type_error ... ok
test conversions::std::num::tests::i64::from_py_string_type_error ... ok
test conversions::std::num::tests::i64::to_py_object_and_back ... ok
test conversions::std::num::tests::i8::from_py_float_type_error ... ok
test conversions::std::num::tests::i8::from_py_string_type_error ... ok
test conversions::std::num::tests::i8::to_py_object_and_back ... ok
test conversions::std::num::tests::isize::from_py_float_type_error ... ok
test conversions::std::num::tests::isize::from_py_string_type_error ... ok
test conversions::std::num::tests::isize::to_py_object_and_back ... ok
test conversions::std::num::tests::nonzero_i128::from_py_float_type_error ... ok
test conversions::std::num::tests::nonzero_i128::from_py_string_type_error ... ok
test conversions::std::num::tests::nonzero_i128::to_py_object_and_back ... ok
test conversions::std::num::tests::nonzero_i16::from_py_float_type_error ... ok
test conversions::std::num::tests::nonzero_i16::from_py_string_type_error ... ok
test conversions::std::num::tests::nonzero_i16::to_py_object_and_back ... ok
test conversions::std::num::tests::nonzero_i32::from_py_float_type_error ... ok
test conversions::std::num::tests::nonzero_i32::from_py_string_type_error ... ok
test conversions::std::num::tests::nonzero_i32::to_py_object_and_back ... ok
test conversions::std::num::tests::nonzero_i64::from_py_float_type_error ... ok
test conversions::std::num::tests::nonzero_i64::from_py_string_type_error ... ok
test conversions::std::num::tests::nonzero_i64::to_py_object_and_back ... ok
test conversions::std::num::tests::nonzero_i8::from_py_float_type_error ... ok
test conversions::std::num::tests::nonzero_i8::from_py_string_type_error ... ok
test conversions::std::num::tests::nonzero_i8::to_py_object_and_back ... ok
test conversions::std::num::tests::nonzero_isize::from_py_float_type_error ... ok
test conversions::std::num::tests::nonzero_isize::from_py_string_type_error ... ok
test conversions::std::num::tests::nonzero_isize::to_py_object_and_back ... ok
test conversions::std::num::tests::nonzero_u128::from_py_float_type_error ... ok
test conversions::std::num::tests::nonzero_u128::from_py_string_type_error ... ok
test conversions::std::num::tests::nonzero_u128::to_py_object_and_back ... ok
test conversions::std::num::tests::nonzero_u16::from_py_float_type_error ... ok
test conversions::std::num::tests::nonzero_u16::from_py_string_type_error ... ok
test conversions::std::num::tests::nonzero_u16::to_py_object_and_back ... ok
test conversions::std::num::tests::nonzero_u32::from_py_float_type_error ... ok
test conversions::std::num::tests::nonzero_u32::from_py_string_type_error ... ok
test conversions::std::num::tests::nonzero_u32::to_py_object_and_back ... ok
test conversions::std::num::tests::nonzero_u64::from_py_float_type_error ... ok
test conversions::std::num::tests::nonzero_u64::from_py_string_type_error ... ok
test conversions::std::num::tests::nonzero_u64::to_py_object_and_back ... ok
test conversions::std::num::tests::nonzero_u8::from_py_float_type_error ... ok
test conversions::std::num::tests::nonzero_u8::from_py_string_type_error ... ok
test conversions::std::num::tests::nonzero_u8::to_py_object_and_back ... ok
test conversions::std::num::tests::nonzero_usize::from_py_float_type_error ... ok
test conversions::std::num::tests::nonzero_usize::from_py_string_type_error ... ok
test conversions::std::num::tests::nonzero_usize::to_py_object_and_back ... ok
test conversions::std::num::tests::test_i64_bool ... ok
test conversions::std::num::tests::test_i64_f64 ... ok
test conversions::std::num::tests::test_i64_max ... ok
test conversions::std::num::tests::test_i64_min ... ok
test conversions::std::num::tests::test_nonzero_i64_max ... ok
test conversions::std::num::tests::test_nonzero_i64_min ... ok
test conversions::std::num::tests::test_nonzero_u32_max ... ok
test conversions::std::num::tests::test_nonzero_u64_max ... ok
test conversions::std::num::tests::test_u32_max ... ok
test conversions::std::num::tests::test_u64_max ... ok
test conversions::std::num::tests::u128::from_py_float_type_error ... ok
test conversions::std::num::tests::u128::from_py_string_type_error ... ok
test conversions::std::num::tests::u128::to_py_object_and_back ... ok
test conversions::std::num::tests::u16::from_py_float_type_error ... ok
test conversions::std::num::tests::u16::from_py_string_type_error ... ok
test conversions::std::num::tests::u16::to_py_object_and_back ... ok
test conversions::std::num::tests::u32::from_py_float_type_error ... ok
test conversions::std::num::tests::u32::from_py_string_type_error ... ok
test conversions::std::num::tests::u32::to_py_object_and_back ... ok
test conversions::std::num::tests::u64::from_py_float_type_error ... ok
test conversions::std::num::tests::u64::from_py_string_type_error ... ok
test conversions::std::num::tests::u64::to_py_object_and_back ... ok
test conversions::std::num::tests::u8::from_py_float_type_error ... ok
test conversions::std::num::tests::u8::from_py_string_type_error ... ok
test conversions::std::num::tests::u8::to_py_object_and_back ... ok
test conversions::std::num::tests::usize::from_py_float_type_error ... ok
test conversions::std::num::tests::usize::from_py_string_type_error ... ok
test conversions::std::num::tests::usize::to_py_object_and_back ... ok
test conversions::std::osstr::tests::test_intopyobject_roundtrip ... ok
test conversions::std::osstr::tests::test_non_utf8_conversion ... ok
test conversions::std::path::tests::test_from_pystring ... ok
test conversions::std::num::test_128bit_integers::test_u128_roundtrip ... ok
test conversions::std::path::tests::test_non_utf8_conversion ... FAILED
test conversions::std::path::tests::test_intopyobject_roundtrip ... FAILED
test conversions::std::set::tests::test_extract_btreeset ... ok
test conversions::std::set::tests::test_extract_hashset ... ok
test conversions::std::set::tests::test_set_into_pyobject ... ok
test conversions::std::slice::tests::test_cow_impl ... ok
test conversions::std::slice::tests::test_cow_intopyobject_impl ... ok
test conversions::std::slice::tests::test_extract_bytes ... ok
test conversions::std::slice::tests::test_slice_intopyobject_impl ... ok
test conversions::std::string::tests::test_cow_into_pyobject ... ok
test conversions::std::string::tests::test_extract_char ... ok
test conversions::std::string::tests::test_extract_char_err ... ok
test conversions::std::string::tests::test_extract_str ... ok
test conversions::std::string::tests::test_non_bmp ... ok
test conversions::std::string::tests::test_string_into_pyobject ... ok
test conversions::std::time::tests::test_duration_frompyobject ... FAILED
test conversions::std::time::tests::test_duration_into_pyobject ... FAILED
test conversions::std::time::tests::test_duration_frompyobject_negative ... FAILED
test conversions::std::time::tests::test_duration_into_pyobject_overflow ... ok
test conversions::std::time::tests::test_time_frompyobject ... FAILED
test conversions::std::time::tests::test_time_intopyobject ... FAILED
test conversions::std::time::tests::test_time_frompyobject_before_epoch ... FAILED
test conversions::std::time::tests::test_time_intopyobject_overflow ... ok
test conversions::std::vec::tests::test_vec_intopyobject_impl ... ok
test conversions::std::vec::tests::test_vec_reference_intopyobject_impl ... ok
test err::err_state::tests::test_reentrant_normalization - should panic ... ok
test err::impls::tests::io_errors ... ok
test err::tests::err_debug ... ok
test err::tests::err_display ... ok
pyo3_runtime.PanicException: new panic
test err::tests::fetching_panic_exception_resumes_unwind - should panic ... ok
test err::tests::invalid_error_type ... ok
test err::tests::no_error ... ok
test err::tests::set_typeerror ... ok
test err::tests::set_valueerror ... ok
test err::tests::test_pyerr_cause ... ok
test err::tests::test_pyerr_matches ... ok
test err::tests::test_pyerr_send_sync ... ok
test err::tests::warnings ... ok
test err::err_state::tests::test_no_deadlock_thread_switch ... ok
test exceptions::asyncio::tests::CancelledError ... FAILED
test exceptions::asyncio::tests::IncompleteReadError ... FAILED
test exceptions::asyncio::tests::InvalidStateError ... FAILED
test exceptions::asyncio::tests::LimitOverrunError ... FAILED
test exceptions::asyncio::tests::QueueEmpty ... FAILED
test exceptions::asyncio::tests::QueueFull ... FAILED
test exceptions::asyncio::tests::TimeoutError ... FAILED
test exceptions::socket::tests::gaierror ... FAILED
test exceptions::socket::tests::herror ... FAILED
test exceptions::socket::tests::timeout ... FAILED
test exceptions::tests::PyArithmeticError ... ok
test exceptions::tests::PyAssertionError ... ok
test exceptions::tests::PyAttributeError ... ok
test exceptions::tests::PyBaseException ... ok
test exceptions::tests::PyBaseExceptionGroup ... ok
test exceptions::tests::PyBlockingIOError ... ok
test exceptions::tests::PyBrokenPipeError ... ok
test exceptions::tests::PyBufferError ... ok
test exceptions::tests::PyBytesWarning ... ok
test exceptions::tests::PyChildProcessError ... ok
test exceptions::tests::PyConnectionAbortedError ... ok
test exceptions::tests::PyConnectionError ... ok
test exceptions::tests::PyConnectionRefusedError ... ok
test exceptions::tests::PyConnectionResetError ... ok
test exceptions::tests::PyDeprecationWarning ... ok
test exceptions::tests::PyEOFError ... ok
test exceptions::tests::PyEncodingWarning ... ok
test exceptions::tests::PyEnvironmentError ... ok
test exceptions::tests::PyException ... ok
test exceptions::tests::PyFileExistsError ... ok
test exceptions::tests::PyFileNotFoundError ... ok
test exceptions::tests::PyFloatingPointError ... ok
test exceptions::tests::PyFutureWarning ... ok
test exceptions::tests::PyGeneratorExit ... ok
test exceptions::tests::PyIOError ... ok
test exceptions::tests::PyImportError ... ok
test exceptions::tests::PyImportWarning ... ok
test exceptions::tests::PyIndexError ... ok
test exceptions::tests::PyInterruptedError ... ok
test exceptions::tests::PyIsADirectoryError ... ok
test exceptions::tests::PyKeyError ... ok
test exceptions::tests::PyKeyboardInterrupt ... ok
test exceptions::tests::PyLookupError ... ok
test exceptions::tests::PyMemoryError ... ok
test exceptions::tests::PyModuleNotFoundError ... ok
test exceptions::tests::PyNameError ... ok
test exceptions::tests::PyNotADirectoryError ... ok
test exceptions::tests::PyNotImplementedError ... ok
test exceptions::tests::PyOSError ... ok
test exceptions::tests::PyOverflowError ... ok
test exceptions::tests::PyPendingDeprecationWarning ... ok
test exceptions::tests::PyPermissionError ... ok
test exceptions::tests::PyProcessLookupError ... ok
test exceptions::tests::PyRecursionError ... ok
test exceptions::tests::PyReferenceError ... ok
test exceptions::tests::PyRuntimeError ... ok
test exceptions::tests::PyRuntimeWarning ... ok
test exceptions::tests::PyStopAsyncIteration ... ok
test exceptions::tests::PyStopIteration ... ok
test exceptions::tests::PySyntaxError ... ok
test exceptions::tests::PySyntaxWarning ... ok
test exceptions::tests::PySystemExit ... ok
test exceptions::tests::PySystemError ... ok
test exceptions::tests::PyTimeoutError ... ok
test exceptions::tests::PyTypeError ... ok
test exceptions::tests::PyUnboundLocalError ... ok
test exceptions::tests::PyUnicodeDecodeError ... ok
test exceptions::tests::PyUnicodeError ... ok
test exceptions::tests::PyUnicodeTranslateError ... ok
test exceptions::tests::PyUnicodeWarning ... ok
test exceptions::tests::PyUnicodeEncodeError ... ok
test exceptions::tests::PyUserWarning ... ok
test exceptions::tests::PyValueError ... ok
test exceptions::tests::PyWarning ... ok
test exceptions::tests::PyZeroDivisionError ... ok
test exceptions::tests::custom_exception ... ok
test exceptions::tests::custom_exception_doc ... ok
test exceptions::tests::custom_exception_doc_expr ... ok
test exceptions::tests::custom_exception_dotted_module ... ok
test exceptions::tests::native_exception_display ... ok
test exceptions::tests::native_exception_debug ... ok
Traceback (most recent call last):
  File "/home/codespace/.python/current/lib/python3.12/socket.py", line 52, in <module>
    import _socket
ImportError: /home/codespace/.python/current/lib/python3.12/lib-dynload/_socket.cpython-312-x86_64-linux-gnu.so: undefined symbol: PyByteArray_Type
test exceptions::tests::test_check_exception_nested ... ok
test exceptions::tests::test_check_exception ... FAILED
test ffi::tests::ascii ... ok
test exceptions::tests::unicode_decode_error ... ok
test ffi::tests::ascii_object_bitfield ... ok

thread 'ffi::tests::test_date_fromtimestamp' panicked at pyo3-ffi/src/datetime.rs:726:13:
null pointer dereference occurred
stack backtrace:
   0: __rustc::rust_begin_unwind
             at /rustc/6b00bc3880198600130e1cf62b8f8a93494488cc/library/std/src/panicking.rs:697:5
   1: core::panicking::panic_nounwind_fmt::runtime
             at /rustc/6b00bc3880198600130e1cf62b8f8a93494488cc/library/core/src/panicking.rs:117:22
   2: core::panicking::panic_nounwind_fmt
             at /rustc/6b00bc3880198600130e1cf62b8f8a93494488cc/library/core/src/intrinsics/mod.rs:3196:9
   3: core::panicking::panic_null_pointer_dereference
             at /rustc/6b00bc3880198600130e1cf62b8f8a93494488cc/library/core/src/panicking.rs:312:5
   4: pyo3_ffi::datetime::PyDate_FromTimestamp
             at ./pyo3-ffi/src/datetime.rs:726:13
   5: pyo3::ffi::tests::test_date_fromtimestamp::{{closure}}
             at ./src/ffi/tests.rs:44:39
   6: pyo3::marker::Python::attach
             at ./src/marker.rs:419:9
   7: pyo3::ffi::tests::test_date_fromtimestamp
             at ./src/ffi/tests.rs:40:5
   8: pyo3::ffi::tests::test_date_fromtimestamp::{{closure}}
             at ./src/ffi/tests.rs:38:29
   9: core::ops::function::FnOnce::call_once
             at /rustc/6b00bc3880198600130e1cf62b8f8a93494488cc/library/core/src/ops/function.rs:250:5
  10: core::ops::function::FnOnce::call_once
             at /rustc/6b00bc3880198600130e1cf62b8f8a93494488cc/library/core/src/ops/function.rs:250:5
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
thread caused non-unwinding panic. aborting.
error: test failed, to rerun pass `--lib`

Caused by:
  process didn't exit successfully: `/workspaces/pyo3/target/debug/deps/pyo3-63b2690869d110b9` (signal: 6, SIGABRT: process abort signal)

_____________________________________________________________________________


_____________________________________________________________________________

     Running tests/test_datetime.rs (target/debug/deps/test_datetime-baaada7273d810cb)

running 8 tests
test test_date_check ... FAILED
Traceback (most recent call last):
  File "/home/codespace/.python/current/lib/python3.12/datetime.py", line 2, in <module>
    from _datetime import *
test test_datetime_utc ... FAILED
ImportError: /home/codespace/.python/current/lib/python3.12/lib-dynload/_datetime.cpython-312-x86_64-linux-gnu.so: undefined symbol: PyExc_NotImplementedError

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/codespace/.python/current/lib/python3.12/datetime.py", line 5, in <module>
    from _pydatetime import *
  File "/home/codespace/.python/current/lib/python3.12/_pydatetime.py", line 12, in <module>
    import math as _math
ImportError: /home/codespace/.python/current/lib/python3.12/lib-dynload/math.cpython-312-x86_64-linux-gnu.so: undefined symbol: PyFloat_Type
test test_datetime_check ... FAILED
test test_delta_check ... FAILED
test test_pydate_out_of_bounds ... ok
test test_pydatetime_out_of_bounds ... ok
test test_pytime_out_of_bounds ... ok
test test_time_check ... FAILED

failures:

---- test_date_check stdout ----

thread 'test_date_check' panicked at tests/test_datetime.rs:74:85:
called `Result::unwrap()` on an `Err` value: PyErr { type: <class 'ImportError'>, value: ImportError('/home/codespace/.python/current/lib/python3.12/lib-dynload/math.cpython-312-x86_64-linux-gnu.so: undefined symbol: PyFloat_Type'), traceback: Some("Traceback (most recent call last):\n  File \"/home/codespace/.python/current/lib/python3.12/datetime.py\", line 5, in <module>\n    from _pydatetime import *\n  File \"/home/codespace/.python/current/lib/python3.12/_pydatetime.py\", line 12, in <module>\n    import math as _math\n") }
stack backtrace:
   0: __rustc::rust_begin_unwind
             at /rustc/6b00bc3880198600130e1cf62b8f8a93494488cc/library/std/src/panicking.rs:697:5
   1: core::panicking::panic_fmt
             at /rustc/6b00bc3880198600130e1cf62b8f8a93494488cc/library/core/src/panicking.rs:75:14
   2: core::result::unwrap_failed
             at /rustc/6b00bc3880198600130e1cf62b8f8a93494488cc/library/core/src/result.rs:1732:5
   3: core::result::Result<T,E>::unwrap
             at /rustc/6b00bc3880198600130e1cf62b8f8a93494488cc/library/core/src/result.rs:1137:23
   4: test_datetime::test_date_check::{{closure}}
             at ./tests/test_datetime.rs:74:43
   5: pyo3::marker::Python::attach
             at ./src/marker.rs:419:9
   6: test_datetime::test_date_check
             at ./tests/test_datetime.rs:73:5
   7: test_datetime::test_date_check::{{closure}}
             at ./tests/test_datetime.rs:72:21
   8: core::ops::function::FnOnce::call_once
             at /rustc/6b00bc3880198600130e1cf62b8f8a93494488cc/library/core/src/ops/function.rs:250:5
   9: core::ops::function::FnOnce::call_once
             at /rustc/6b00bc3880198600130e1cf62b8f8a93494488cc/library/core/src/ops/function.rs:250:5
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.

---- test_datetime_utc stdout ----

thread 'test_datetime_utc' panicked at tests/test_datetime.rs:136:37:
called `Result::unwrap()` on an `Err` value: PyErr { type: <class 'ImportError'>, value: ImportError('PyCapsule_Import could not import module "datetime"'), traceback: None }
stack backtrace:
   0: __rustc::rust_begin_unwind
             at /rustc/6b00bc3880198600130e1cf62b8f8a93494488cc/library/std/src/panicking.rs:697:5
   1: core::panicking::panic_fmt
             at /rustc/6b00bc3880198600130e1cf62b8f8a93494488cc/library/core/src/panicking.rs:75:14
   2: core::result::unwrap_failed
             at /rustc/6b00bc3880198600130e1cf62b8f8a93494488cc/library/core/src/result.rs:1732:5
   3: core::result::Result<T,E>::unwrap
             at /rustc/6b00bc3880198600130e1cf62b8f8a93494488cc/library/core/src/result.rs:1137:23
   4: test_datetime::test_datetime_utc::{{closure}}
             at ./tests/test_datetime.rs:136:19
   5: pyo3::marker::Python::attach
             at ./src/marker.rs:419:9
   6: test_datetime::test_datetime_utc
             at ./tests/test_datetime.rs:135:5
   7: test_datetime::test_datetime_utc::{{closure}}
             at ./tests/test_datetime.rs:131:23
   8: core::ops::function::FnOnce::call_once
             at /rustc/6b00bc3880198600130e1cf62b8f8a93494488cc/library/core/src/ops/function.rs:250:5
   9: core::ops::function::FnOnce::call_once
             at /rustc/6b00bc3880198600130e1cf62b8f8a93494488cc/library/core/src/ops/function.rs:250:5
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.

---- test_datetime_check stdout ----

thread 'test_datetime_check' panicked at tests/test_datetime.rs:105:14:
called `Result::unwrap()` on an `Err` value: ()
stack backtrace:
   0: __rustc::rust_begin_unwind
             at /rustc/6b00bc3880198600130e1cf62b8f8a93494488cc/library/std/src/panicking.rs:697:5
   1: core::panicking::panic_fmt
             at /rustc/6b00bc3880198600130e1cf62b8f8a93494488cc/library/core/src/panicking.rs:75:14
   2: core::result::unwrap_failed
             at /rustc/6b00bc3880198600130e1cf62b8f8a93494488cc/library/core/src/result.rs:1732:5
   3: core::result::Result<T,E>::unwrap
             at /rustc/6b00bc3880198600130e1cf62b8f8a93494488cc/library/core/src/result.rs:1137:23
   4: test_datetime::test_datetime_check::{{closure}}
             at ./tests/test_datetime.rs:103:43
   5: pyo3::marker::Python::attach
             at ./src/marker.rs:419:9
   6: test_datetime::test_datetime_check
             at ./tests/test_datetime.rs:102:5
   7: test_datetime::test_datetime_check::{{closure}}
             at ./tests/test_datetime.rs:101:25
   8: core::ops::function::FnOnce::call_once
             at /rustc/6b00bc3880198600130e1cf62b8f8a93494488cc/library/core/src/ops/function.rs:250:5
   9: core::ops::function::FnOnce::call_once
             at /rustc/6b00bc3880198600130e1cf62b8f8a93494488cc/library/core/src/ops/function.rs:250:5
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.

---- test_delta_check stdout ----

thread 'test_delta_check' panicked at tests/test_datetime.rs:121:85:
called `Result::unwrap()` on an `Err` value: PyErr { type: <class 'ImportError'>, value: ImportError('/home/codespace/.python/current/lib/python3.12/lib-dynload/math.cpython-312-x86_64-linux-gnu.so: undefined symbol: PyFloat_Type'), traceback: Some("Traceback (most recent call last):\n  File \"/home/codespace/.python/current/lib/python3.12/datetime.py\", line 5, in <module>\n    from _pydatetime import *\n  File \"/home/codespace/.python/current/lib/python3.12/_pydatetime.py\", line 12, in <module>\n    import math as _math\n") }
stack backtrace:
   0: __rustc::rust_begin_unwind
             at /rustc/6b00bc3880198600130e1cf62b8f8a93494488cc/library/std/src/panicking.rs:697:5
   1: core::panicking::panic_fmt
             at /rustc/6b00bc3880198600130e1cf62b8f8a93494488cc/library/core/src/panicking.rs:75:14
   2: core::result::unwrap_failed
             at /rustc/6b00bc3880198600130e1cf62b8f8a93494488cc/library/core/src/result.rs:1732:5
   3: core::result::Result<T,E>::unwrap
             at /rustc/6b00bc3880198600130e1cf62b8f8a93494488cc/library/core/src/result.rs:1137:23
   4: test_datetime::test_delta_check::{{closure}}
             at ./tests/test_datetime.rs:121:43
   5: pyo3::marker::Python::attach
             at ./src/marker.rs:419:9
   6: test_datetime::test_delta_check
             at ./tests/test_datetime.rs:120:5
   7: test_datetime::test_delta_check::{{closure}}
             at ./tests/test_datetime.rs:119:22
   8: core::ops::function::FnOnce::call_once
             at /rustc/6b00bc3880198600130e1cf62b8f8a93494488cc/library/core/src/ops/function.rs:250:5
   9: core::ops::function::FnOnce::call_once
             at /rustc/6b00bc3880198600130e1cf62b8f8a93494488cc/library/core/src/ops/function.rs:250:5
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.

---- test_time_check stdout ----

thread 'test_time_check' panicked at tests/test_datetime.rs:88:85:
called `Result::unwrap()` on an `Err` value: PyErr { type: <class 'KeyError'>, value: KeyError('datetime'), traceback: None }
stack backtrace:
   0: __rustc::rust_begin_unwind
             at /rustc/6b00bc3880198600130e1cf62b8f8a93494488cc/library/std/src/panicking.rs:697:5
   1: core::panicking::panic_fmt
             at /rustc/6b00bc3880198600130e1cf62b8f8a93494488cc/library/core/src/panicking.rs:75:14
   2: core::result::unwrap_failed
             at /rustc/6b00bc3880198600130e1cf62b8f8a93494488cc/library/core/src/result.rs:1732:5
   3: core::result::Result<T,E>::unwrap
             at /rustc/6b00bc3880198600130e1cf62b8f8a93494488cc/library/core/src/result.rs:1137:23
   4: test_datetime::test_time_check::{{closure}}
             at ./tests/test_datetime.rs:88:43
   5: pyo3::marker::Python::attach
             at ./src/marker.rs:419:9
   6: test_datetime::test_time_check
             at ./tests/test_datetime.rs:87:5
   7: test_datetime::test_time_check::{{closure}}
             at ./tests/test_datetime.rs:86:21
   8: core::ops::function::FnOnce::call_once
             at /rustc/6b00bc3880198600130e1cf62b8f8a93494488cc/library/core/src/ops/function.rs:250:5
   9: core::ops::function::FnOnce::call_once
             at /rustc/6b00bc3880198600130e1cf62b8f8a93494488cc/library/core/src/ops/function.rs:250:5
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.


failures:
    test_date_check
    test_datetime_check
    test_datetime_utc
    test_delta_check
    test_time_check

test result: FAILED. 3 passed; 5 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.13s

error: test failed, to rerun pass `--test test_datetime`

_____________________________________________________________________________

_____________________________________________________________________________

     Running tests/test_pyerr_debug_unformattable.rs (target/debug/deps/test_pyerr_debug_unformattable-818186b4c8017c04)

running 1 test
test err_debug_unformattable ... FAILED

failures:

---- err_debug_unformattable stdout ----

thread 'err_debug_unformattable' panicked at tests/test_pyerr_debug_unformattable.rs:43:9:
assertion `left == right` failed
  left: "type: <class 'ImportError'>"
 right: "type: <class 'Exception'>"
stack backtrace:
   0: __rustc::rust_begin_unwind
             at /rustc/6b00bc3880198600130e1cf62b8f8a93494488cc/library/std/src/panicking.rs:697:5
   1: core::panicking::panic_fmt
             at /rustc/6b00bc3880198600130e1cf62b8f8a93494488cc/library/core/src/panicking.rs:75:14
   2: core::panicking::assert_failed_inner
             at /rustc/6b00bc3880198600130e1cf62b8f8a93494488cc/library/core/src/panicking.rs:433:17
   3: core::panicking::assert_failed
             at /rustc/6b00bc3880198600130e1cf62b8f8a93494488cc/library/core/src/panicking.rs:388:5
   4: test_pyerr_debug_unformattable::err_debug_unformattable::{{closure}}
             at ./tests/test_pyerr_debug_unformattable.rs:43:9
   5: pyo3::marker::Python::attach
             at ./src/marker.rs:419:9
   6: test_pyerr_debug_unformattable::err_debug_unformattable
             at ./tests/test_pyerr_debug_unformattable.rs:17:5
   7: test_pyerr_debug_unformattable::err_debug_unformattable::{{closure}}
             at ./tests/test_pyerr_debug_unformattable.rs:9:29
   8: core::ops::function::FnOnce::call_once
             at /rustc/6b00bc3880198600130e1cf62b8f8a93494488cc/library/core/src/ops/function.rs:250:5
   9: core::ops::function::FnOnce::call_once
             at /rustc/6b00bc3880198600130e1cf62b8f8a93494488cc/library/core/src/ops/function.rs:250:5
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.


failures:
    err_debug_unformattable

test result: FAILED. 0 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.16s

error: test failed, to rerun pass `--test test_pyerr_debug_unformattable`

Your operating system and version

Linux codespaces-e89ac6 6.8.0-1027-azure #32~22.04.1-Ubuntu SMP Thu Apr 3 20:26:27 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux

Your Python version (python --version)

Python 3.12.1

Your Rust version (rustc --version)

rustc 1.88.0 (6b00bc388 2025-06-23)

Your PyO3 version

How did you install python? Did you use a virtualenv?

OS default

Additional Info

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions