gnu: python-distributed: Update to 2022.05.2.

* gnu/packages/python-science.scm (python-distributed): Update to 2022.05.2.
[arguments]: Remove 'sanity-check phase; adjust 'check phase.
[propagated-inputs]: Add python-urllib3.
[native-inputs]: Add python-pytest-timeout and python-flaky.
This commit is contained in:
Ricardo Wurmus 2022-05-31 15:17:00 +02:00
parent 3d5144db5a
commit 07909eb092
No known key found for this signature in database
GPG key ID: 197A5888235FACAC

View file

@ -1016,7 +1016,7 @@ (define-public python-pingouin
(define-public python-distributed
(package
(name "python-distributed")
(version "2021.11.2")
(version "2022.05.2")
(source
(origin
;; The test files are not included in the archive on pypi
@ -1027,7 +1027,7 @@ (define-public python-distributed
(file-name (git-file-name name version))
(sha256
(base32
"1p20cbyabzl7rs8y3ydzszsskh4kw088m252ghgairhs0p2f95hl"))
"009jrlk7kmazrd3nkl217cl3x5ddg7kw9mqdgq1z9knv5h1rm8qv"))
;; Delete bundled copy of python-versioneer.
(snippet '(delete-file "versioneer.py"))))
(build-system python-build-system)
@ -1053,23 +1053,139 @@ (define-public python-distributed
(("\"dask-worker\"")
(format #false "\"~a/bin/dask-worker\""
(assoc-ref outputs "out"))))))
;; ERROR: distributed==2022.5.2
;; ContextualVersionConflict (locket 0.2.0
;; (/gnu/store/...-python-locket-0.2.0/lib/python3.9/site-packages),
;; Requirement.parse('locket>=1.0.0'), {'distributed'})
(delete 'sanity-check)
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(setenv "DISABLE_IPV6" "1")
(invoke "pytest" "-vv" "distributed"
"-m" "not slow and not gpu and not ipython and not avoid_ci"
;; The integration tests are all problematic to some
;; degree. They either require network access or some
;; other setup. We only run the tests in
;; distributed/tests.
(for-each (lambda (dir)
(delete-file-recursively
(string-append "distributed/" dir "/tests")))
(list "cli" "comm" "dashboard" "deploy" "diagnostics"
"http" "http/scheduler" "http/worker"
"protocol" "shuffle"))
(invoke "python" "-m" "pytest" "-vv" "distributed"
"-m"
(string-append "not slow"
" and not flaky"
" and not gpu"
" and not ipython"
" and not avoid_ci")
"-k"
;; TODO: These tests fail for unknown reasons:
(string-append
;; TimeoutExpired
"not test_text"
;; AssertionError
" and not test_version_option"
;; "The 'distributed' distribution was not found"
" and not test_register_backend_entrypoint"
;; "AttributeError: module 'distributed.dashboard' has no attribute 'scheduler'"
" and not test_get_client_functions_spawn_clusters"))))))))
;; These fail because they require network access,
;; specifically access to 8.8.8.8.
"not "
(string-join
(list
"TestClientSecurityLoader.test_security_loader"
"test_BatchedSend"
"test_allowed_failures_config"
"test_async_context_manager"
"test_async_with"
"test_client_repr_closed_sync"
"test_close_closed"
"test_close_fast_without_active_handlers"
"test_close_grace_period_for_handlers"
"test_close_loop_sync"
"test_close_properly"
"test_close_twice"
"test_compression"
"test_connection_pool"
"test_connection_pool_close_while_connecting"
"test_connection_pool_detects_remote_close"
"test_connection_pool_outside_cancellation"
"test_connection_pool_remove"
"test_connection_pool_respects_limit"
"test_connection_pool_tls"
"test_counters"
"test_dashboard_host"
"test_dashboard_link_cluster"
"test_dashboard_link_inproc"
"test_deserialize_error"
"test_dont_override_default_get"
"test_errors"
"test_fail_to_pickle_target_2"
"test_file_descriptors_dont_leak"
"test_finished"
"test_get_client_functions_spawn_clusters"
"test_host_uses_scheduler_protocol"
"test_identity_inproc"
"test_identity_tcp"
"test_large_packets_inproc"
"test_locked_comm_drop_in_replacement"
"test_locked_comm_intercept_read"
"test_locked_comm_intercept_write"
"test_multiple_listeners"
"test_no_dangling_asyncio_tasks"
"test_plugin_exception"
"test_plugin_internal_exception"
"test_plugin_multiple_exceptions"
"test_ports"
"test_preload_import_time"
"test_queue_in_task"
"test_quiet_client_close"
"test_rebalance_sync"
"test_repr_localcluster"
"test_require_encryption"
"test_rpc_default"
"test_rpc_inproc"
"test_rpc_message_lifetime_default"
"test_rpc_message_lifetime_inproc"
"test_rpc_message_lifetime_tcp"
"test_rpc_serialization"
"test_rpc_tcp"
"test_rpc_tls"
"test_rpc_with_many_connections_inproc"
"test_rpc_with_many_connections_tcp"
"test_scheduler_file"
"test_security_dict_input_no_security"
"test_security_loader"
"test_security_loader_ignored_if_explicit_security_provided"
"test_security_loader_ignored_if_returns_none"
"test_send_after_stream_start"
"test_send_before_close"
"test_send_before_start"
"test_send_recv_args"
"test_send_recv_cancelled"
"test_sending_traffic_jam"
"test_serializers"
"test_server"
"test_server_comms_mark_active_handlers"
"test_shutdown"
"test_shutdown_localcluster"
"test_teardown_failure_doesnt_crash_scheduler"
"test_threadpoolworkers_pick_correct_ioloop"
"test_tls_listen_connect"
"test_tls_temporary_credentials_functional"
"test_variable_in_task"
"test_worker_preload_text"
"test_worker_uses_same_host_as_nanny")
" and not ")
;; These fail because it doesn't find dask[distributed]
" and not test_quiet_close_process"
;; This one fails because of a silly assert failure:
;; '2022.05.2' == '2022.5.2'
" and not test_version"
" and not test_git_revision"
;; Recursion stack failure. No idea what they
;; expected to happen.
" and not test_stack_overflow"
;; These tests are rather flaky
" and not test_quiet_quit_when_cluster_leaves"
" and not multiple_clients_restart"))))))))
(propagated-inputs
(list python-click
python-cloudpickle
@ -1083,9 +1199,13 @@ (define-public python-distributed
python-tblib
python-toolz
python-tornado-6
python-urllib3
python-zict))
(native-inputs
(list python-pytest python-versioneer))
(list python-pytest
python-pytest-timeout
python-flaky
python-versioneer))
(home-page "https://distributed.dask.org")
(synopsis "Distributed scheduler for Dask")
(description "Dask.distributed is a lightweight library for distributed