-
Couldn't load subscription status.
- Fork 135
Description
I tried updating the Fedora Linux packages for rust-cpython from version 0.5.2 to 0.6.0, but there are a lot of new issues with test failures on s390x architecture (the only big-endian architecture we have access to).
With python 3.9, there are these new test failures compared to 0.5.2:
failures:
---- objectprotocol::test::test_debug_string stdout ----
thread 'objectprotocol::test::test_debug_string' panicked at 'Unknown PyUnicode_KIND', src/objects/string.rs:308:22
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
---- objectprotocol::test::test_display_string stdout ----
thread 'objectprotocol::test::test_display_string' panicked at 'Unknown PyUnicode_KIND', src/objects/string.rs:308:22
---- objects::string::test::test_extract_lone_surrogate stdout ----
thread 'objects::string::test::test_extract_lone_surrogate' panicked at 'Unknown PyUnicode_KIND', src/objects/string.rs:308:22
---- objects::string::test::test_extract_lone_surrogate_lossy stdout ----
thread 'objects::string::test::test_extract_lone_surrogate_lossy' panicked at 'Unknown PyUnicode_KIND', src/objects/string.rs:308:22
---- objects::string::test::test_extract_umlaut stdout ----
thread 'objects::string::test::test_extract_umlaut' panicked at 'Unknown PyUnicode_KIND', src/objects/string.rs:308:22
failures:
objectprotocol::test::test_debug_string
objectprotocol::test::test_display_string
objects::num::test::test_u64_max
objects::string::test::test_extract_lone_surrogate
objects::string::test::test_extract_lone_surrogate_lossy
objects::string::test::test_extract_umlaut
test result: FAILED. 81 passed; 6 failed; 0 ignored; 0 measured; 4 filtered out; finished in 0.01s
With Python 3.10, there are additional failures, these two I have already investigated and traced back to changes in Python 3.10 itself:
objects::num::test::float_to_*unit tests fail since floats are no longer valid initializers for integers in Python 3.10:
https://bugs.python.org/issue37999
https://docs.python.org/3.10/whatsnew/3.10.html#other-language-changessrc/objects/capsule.rsdoctests fail since the "private"unicodedata.ucnhash_CAPIsymbol was removed from Python 3.10:
https://bugs.python.org/issue44418
These two tests fail too, but I do not get output from cargo:
test objectprotocol::test::test_debug_string ... FAILED
test objectprotocol::test::test_display_string ... FAILED
Because it looks like the test threads / processes crash with segmentation faults:
error: test failed.
Caused by:
process didn't exit successfully: `./target/release/deps/cpython-abe96c0dffd595a2 --skip 'objects::num::test::float_to_' --skip src/objects/capsule.rs` (signal: 11, SIGSEGV: invalid memory reference)
process didn't exit successfully: `./target/release/deps/test_class-d070ffed372516e4 --skip 'objects::num::test::float_to_' --skip src/objects/capsule.rs` (signal: 11, SIGSEGV: invalid memory reference)
process didn't exit successfully: `./target/release/deps/test_sharedref-2ff6a3943eb85a79 --skip 'objects::num::test::float_to_' --skip src/objects/capsule.rs` (signal: 11, SIGSEGV: invalid memory reference)
For now, I think I'll have to skip running the test suite on s390x entirely.