diff options
author | Sharlatan Hellseher <sharlatanus@gmail.com> | 2025-06-30 13:03:01 +0100 |
---|---|---|
committer | Sharlatan Hellseher <sharlatanus@gmail.com> | 2025-06-30 13:35:10 +0100 |
commit | a03d6d1bd65e52461170abcddac1c1409e162d37 (patch) | |
tree | c810207ced8d20a353641ad2003d463f3c6d890c /gnu/packages/python-science.scm | |
parent | 347fd432cd1846b97634251b573e44ecd9a8f6d6 (diff) |
gnu: python-distributed: Move up.
* gnu/packages/python-science.scm (python-distributed): Sort variable
alphabetically.
Change-Id: I6b0b6ab2932b7cc1edf6097a6387ee633e537d88
Diffstat (limited to 'gnu/packages/python-science.scm')
-rw-r--r-- | gnu/packages/python-science.scm | 494 |
1 files changed, 247 insertions, 247 deletions
diff --git a/gnu/packages/python-science.scm b/gnu/packages/python-science.scm index f3116e164b..e45d3e3fff 100644 --- a/gnu/packages/python-science.scm +++ b/gnu/packages/python-science.scm @@ -767,6 +767,253 @@ of use as pickling or @code{numpy.save}, but with the language interoperability offered by HDF5.") (license license:bsd-3)))) +(define-public python-distributed + (package + (name "python-distributed") + (version "2024.4.2") + (source + (origin + ;; The test files are not included in the archive on pypi + (method git-fetch) + (uri (git-reference + (url "https://github.com/dask/distributed") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0sy9mqa8qlxsagbz8xn304csrlxhxj4b6k84yrjxdcmkp9pkx166")))) + (build-system pyproject-build-system) + (arguments + (list + #:test-flags + '(list "-m" + (string-append "not slow" + " and not flaky" + " and not gpu" + " and not ipython" + " and not avoid_ci") + "-k" + (string-append + ;; 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_client_is_quiet_cluster_close" + "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_ensure_no_new_clients" + "test_errors" + "test_fail_to_pickle_target_2" + "test_failure_doesnt_crash" + "test_file_descriptors_dont_leak" + "test_finished" + "test_freeze_batched_send" + "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_messages_are_ordered_bsend" + "test_messages_are_ordered_raw" + "test_mixing_clients_different_scheduler" + "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_preload_manager_sequence" + "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_tell_workers_when_peers_have_left" + "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" + "test_nanny_timeout") ; access to 127.0.0.1 + " and not ") + + ;; This seems to want to use 64GB of memory. + " and not test_computation_object_code_dask_compute" + + ;; These fail because it doesn't find dask[distributed] + " and not test_quiet_close_process" + + ;; There is no distributed.__git_revision__ property. + " and not test_git_revision" + + ;; The system monitor did not return a dictionary containing + ;; "host_disk_io.read_bps". + " and not test_disk_config" + + ;; These fail because the exception text format + ;; appears to have changed. + " and not test_exception_text" + " and not test_worker_bad_args" + + ;; These time out + " and not test_nanny_timeout" + + ;; These tests are rather flaky + " and not test_quiet_quit_when_cluster_leaves" + " and not multiple_clients_restart" + " and not test_steal_twice" + " and not test_task_groups_update_start_stop" + " and not test_web_preload" + " and not test_web_preload_worker")) + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'versioneer + (lambda _ + ;; Our version of versioneer needs setup.cfg. This is adapted + ;; from pyproject.toml. + (with-output-to-file "setup.cfg" + (lambda () + (display "\ +[versioneer] +VCS = git +style = pep440 +versionfile_source = distributed/_version.py +versionfile_build = distributed/_version.py +tag_prefix = +parentdir_prefix = distributed- +"))) + (invoke "versioneer" "install") + (substitute* "setup.py" + (("versioneer.get_version\\(\\)") + (string-append "\"" #$version "\""))))) + (add-after 'unpack 'fix-pytest-config + (lambda _ + ;; This option is not supported by our version of pytest. + (substitute* "pyproject.toml" + (("--cov-config=pyproject.toml.*") "")))) + (add-after 'unpack 'fix-references + (lambda* (#:key outputs #:allow-other-keys) + (substitute* '("distributed/comm/tests/test_ucx_config.py" + "distributed/tests/test_client.py" + "distributed/tests/test_queues.py" + "distributed/tests/test_variable.py" + "distributed/cli/tests/test_tls_cli.py" + "distributed/cli/tests/test_dask_spec.py" + "distributed/cli/tests/test_dask_worker.py" + "distributed/cli/tests/test_dask_scheduler.py") + (("\"dask-scheduler\"") + (format #false "\"~a/bin/dask-scheduler\"" #$output)) + (("\"dask-worker\"") + (format #false "\"~a/bin/dask-worker\"" #$output))))) + (add-before 'check 'pre-check + (lambda _ + (setenv "DISABLE_IPV6" "1") + ;; Disable job queueing + (setenv "DASK_DISTRIBUTED__SCHEDULER__WORKER_SATURATION" "inf") + ;; Do not use dask-expr + (setenv "DASK_DATAFRAME__QUERY_PLANNING" "False") + ;; 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")))) + ;; We need to use "." here. + (replace 'check + (lambda* (#:key tests? test-flags #:allow-other-keys) + (when tests? + (apply invoke "python" "-m" "pytest" "." "-vv" test-flags))))))) + (propagated-inputs + (list python-click + python-cloudpickle + python-cryptography + python-dask + python-dask-expr + python-msgpack + python-psutil + python-pyyaml + python-setuptools + python-sortedcontainers + python-tblib + python-toolz + python-tornado-6 + python-urllib3 + python-zict)) + (native-inputs + (list python-flaky + python-importlib-metadata + python-pytest + python-pytest-timeout + python-versioneer + python-wheel)) + (home-page "https://distributed.dask.org") + (synopsis "Distributed scheduler for Dask") + (description "Dask.distributed is a lightweight library for distributed +computing in Python. It extends both the @code{concurrent.futures} and +@code{dask} APIs to moderate sized clusters.") + (license license:bsd-3))) + (define-public python-ecos (package (name "python-ecos") @@ -4083,253 +4330,6 @@ and more @end itemize") (license license:gpl3))) -(define-public python-distributed - (package - (name "python-distributed") - (version "2024.4.2") - (source - (origin - ;; The test files are not included in the archive on pypi - (method git-fetch) - (uri (git-reference - (url "https://github.com/dask/distributed") - (commit version))) - (file-name (git-file-name name version)) - (sha256 - (base32 - "0sy9mqa8qlxsagbz8xn304csrlxhxj4b6k84yrjxdcmkp9pkx166")))) - (build-system pyproject-build-system) - (arguments - (list - #:test-flags - '(list "-m" - (string-append "not slow" - " and not flaky" - " and not gpu" - " and not ipython" - " and not avoid_ci") - "-k" - (string-append - ;; 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_client_is_quiet_cluster_close" - "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_ensure_no_new_clients" - "test_errors" - "test_fail_to_pickle_target_2" - "test_failure_doesnt_crash" - "test_file_descriptors_dont_leak" - "test_finished" - "test_freeze_batched_send" - "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_messages_are_ordered_bsend" - "test_messages_are_ordered_raw" - "test_mixing_clients_different_scheduler" - "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_preload_manager_sequence" - "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_tell_workers_when_peers_have_left" - "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" - "test_nanny_timeout") ; access to 127.0.0.1 - " and not ") - - ;; This seems to want to use 64GB of memory. - " and not test_computation_object_code_dask_compute" - - ;; These fail because it doesn't find dask[distributed] - " and not test_quiet_close_process" - - ;; There is no distributed.__git_revision__ property. - " and not test_git_revision" - - ;; The system monitor did not return a dictionary containing - ;; "host_disk_io.read_bps". - " and not test_disk_config" - - ;; These fail because the exception text format - ;; appears to have changed. - " and not test_exception_text" - " and not test_worker_bad_args" - - ;; These time out - " and not test_nanny_timeout" - - ;; These tests are rather flaky - " and not test_quiet_quit_when_cluster_leaves" - " and not multiple_clients_restart" - " and not test_steal_twice" - " and not test_task_groups_update_start_stop" - " and not test_web_preload" - " and not test_web_preload_worker")) - #:phases - #~(modify-phases %standard-phases - (add-after 'unpack 'versioneer - (lambda _ - ;; Our version of versioneer needs setup.cfg. This is adapted - ;; from pyproject.toml. - (with-output-to-file "setup.cfg" - (lambda () - (display "\ -[versioneer] -VCS = git -style = pep440 -versionfile_source = distributed/_version.py -versionfile_build = distributed/_version.py -tag_prefix = -parentdir_prefix = distributed- -"))) - (invoke "versioneer" "install") - (substitute* "setup.py" - (("versioneer.get_version\\(\\)") - (string-append "\"" #$version "\""))))) - (add-after 'unpack 'fix-pytest-config - (lambda _ - ;; This option is not supported by our version of pytest. - (substitute* "pyproject.toml" - (("--cov-config=pyproject.toml.*") "")))) - (add-after 'unpack 'fix-references - (lambda* (#:key outputs #:allow-other-keys) - (substitute* '("distributed/comm/tests/test_ucx_config.py" - "distributed/tests/test_client.py" - "distributed/tests/test_queues.py" - "distributed/tests/test_variable.py" - "distributed/cli/tests/test_tls_cli.py" - "distributed/cli/tests/test_dask_spec.py" - "distributed/cli/tests/test_dask_worker.py" - "distributed/cli/tests/test_dask_scheduler.py") - (("\"dask-scheduler\"") - (format #false "\"~a/bin/dask-scheduler\"" #$output)) - (("\"dask-worker\"") - (format #false "\"~a/bin/dask-worker\"" #$output))))) - (add-before 'check 'pre-check - (lambda _ - (setenv "DISABLE_IPV6" "1") - ;; Disable job queueing - (setenv "DASK_DISTRIBUTED__SCHEDULER__WORKER_SATURATION" "inf") - ;; Do not use dask-expr - (setenv "DASK_DATAFRAME__QUERY_PLANNING" "False") - ;; 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")))) - ;; We need to use "." here. - (replace 'check - (lambda* (#:key tests? test-flags #:allow-other-keys) - (when tests? - (apply invoke "python" "-m" "pytest" "." "-vv" test-flags))))))) - (propagated-inputs - (list python-click - python-cloudpickle - python-cryptography - python-dask - python-dask-expr - python-msgpack - python-psutil - python-pyyaml - python-setuptools - python-sortedcontainers - python-tblib - python-toolz - python-tornado-6 - python-urllib3 - python-zict)) - (native-inputs - (list python-flaky - python-importlib-metadata - python-pytest - python-pytest-timeout - python-versioneer - python-wheel)) - (home-page "https://distributed.dask.org") - (synopsis "Distributed scheduler for Dask") - (description "Dask.distributed is a lightweight library for distributed -computing in Python. It extends both the @code{concurrent.futures} and -@code{dask} APIs to moderate sized clusters.") - (license license:bsd-3))) - (define-public python-plotnine (package (name "python-plotnine") |