python3Packages.uvloop: unbreak on aarch64-darwin

This commit is contained in:
Konstantin Alekseev 2022-06-04 00:04:22 +03:00
parent 4742aa3457
commit cdaaedd807

View File

@ -6,7 +6,7 @@
, libuv
, CoreServices
, ApplicationServices
# Check Inputs
# Check Inputs
, aiohttp
, psutil
, pyopenssl
@ -34,7 +34,6 @@ buildPythonPackage rec {
checkInputs = [
aiohttp
pytestCheckHook
pyopenssl
psutil
];
@ -46,15 +45,18 @@ buildPythonPackage rec {
"--assert=plain"
"--strict"
"--tb=native"
# Depend on pyopenssl
"--deselect tests/test_tcp.py::Test_UV_TCPSSL::test_flush_before_shutdown"
"--deselect tests/test_tcp.py::Test_UV_TCPSSL::test_renegotiation"
] ++ lib.optionals (stdenv.isAarch32 || stdenv.isAarch64) [
# test gets stuck in epoll_pwait on hydras aarch64 builders
# https://github.com/MagicStack/uvloop/issues/412
"--deselect" "tests/test_tcp.py::Test_AIO_TCPSSL::test_remote_shutdown_receives_trailing_data"
"--deselect tests/test_tcp.py::Test_AIO_TCPSSL::test_remote_shutdown_receives_trailing_data"
] ++ lib.optionals (stdenv.isDarwin && stdenv.isAarch64) [
# Flaky test: https://github.com/MagicStack/uvloop/issues/412
"--deselect" "tests/test_tcp.py::Test_UV_TCPSSL::test_shutdown_timeout_handler_not_set"
"--deselect tests/test_tcp.py::Test_UV_TCPSSL::test_shutdown_timeout_handler_not_set"
# Broken: https://github.com/NixOS/nixpkgs/issues/160904
"--deselect" "tests/test_context.py::Test_UV_Context::test_create_ssl_server_manual_connection_lost"
"--deselect tests/test_context.py::Test_UV_Context::test_create_ssl_server_manual_connection_lost"
];
disabledTestPaths = [
@ -66,7 +68,11 @@ buildPythonPackage rec {
# Work around "OSError: AF_UNIX path too long"
# https://github.com/MagicStack/uvloop/issues/463
export TMPDIR="/tmp"
'' + ''
# pyopenssl is not well supported by upstream
# https://github.com/NixOS/nixpkgs/issues/175875
substituteInPlace tests/test_tcp.py \
--replace "from OpenSSL import SSL as openssl_ssl" ""
'' + ''
# force using installed/compiled uvloop vs source by moving tests to temp dir
export TEST_DIR=$(mktemp -d)
cp -r tests $TEST_DIR