NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
PyPI · #1690 most downloaded on PyPI
Distributed scheduler for Dask
Last release 1 months ago
24 Aug 2026
Ships fairly regularly
a new release about every 5 weeks
Nearly every release is documented
notes for 59 of the last 60 stable releases
1 version withdrawn
withdrawn after publishing
11 years old
269 releases · first in 2015
This is a hotfix release that fixes a P2P shuffling bug introduced in the 2023.9.0 release (see dask#10493 ).
Released on September 6, 2023
Note
This is a hotfix release that fixes a P2P shuffling bug introduced in the 2023.9.0 release (see dask#10493 ).
Stricter data type for dask keys ( dask#10485 ) crusaderky
Special handling for None in DASK_ environment variables ( dask#10487 ) crusaderky
Fix _partitions dtype in meta for DataFrame.set_index and DataFrame.sort_values ( dask#10493 ) Hendrik Makait
Handle cached_property decorators in derived_from ( dask#10490 ) Lawrence Mitchell
Bump actions/checkout from 3.6.0 to 4.0.0 ( dask#10492 )
Simplify some tests that import distributed ( dask#10484 ) crusaderky
Released on September 6, 2023
Raise in P2P if column dtype is wrong (8167) `Hendrik Makait`_
Auto-fail tasks with deps larger than the worker memory (8135) `crusaderky`_
Make workers table sortable (8153) `Jacob Tomlinson`_
Support for unsetting environment variables (8144) `crusaderky`_
Deprecate asynchronous Listener.stop() (8151) `Hendrik Makait`_
Initial tweaks after Dask key type changes (8162) `crusaderky`_
Bump actions/checkout from 3.6.0 to 4.0.0 (8159)
Fix flaky test_worker_metrics (8154) `crusaderky`_
One column per quarter.
- Remove support for np.int64 in keys ( dask#10483 ) crusaderky
Released on September 1, 2023
Remove support for np.int64 in keys ( dask#10483 ) crusaderky
Fix _partitions dtype in meta for shuffling ( dask#10462 ) Hendrik Makait
Don’t use exception hooks to shorten tracebacks ( dask#10456 ) crusaderky
Add p2p shuffle option to DataFrame docs ( dask#10477 ) Patrick Hoefler
Skip failing tests for pandas=2.1.0 ( dask#10488 ) Patrick Hoefler
Update tests for pandas=2.1.0 ( dask#10439 ) Patrick Hoefler
Enable pytest-timeout ( dask#10482 ) crusaderky
Bump actions/checkout from 3.5.3 to 3.6.0 ( dask#10470 )
Released on September 1, 2023
Don't capture functools frames in code (8146) `crusaderky`_
Ignore asyncio when scraping code (8122) `Matthew Rocklin`_
Remove stringification (8083) `Florian Jetter`_
Ensure NannyPlugin are always installed (8107) `Florian Jetter`_
Don't use exception hooks to shorten tracebacks (8127) `crusaderky`_
Fix P2P shuffle with LocalCluster(..., processes=False) (8125) `Hendrik Makait`_
Merge with P2P shuffle fails if left_index or right_index is True (8121) `Patrick Hoefler`_
Do not advertise @span decorator (8120) `crusaderky`_
Assert DF equality in P2P tests (8117) `Hendrik Makait`_
Fix warnings from pandas=2.1.0 (8145) `Patrick Hoefler`_
Enforce dtypes early in P2P shuffling (8131) `Hendrik Makait`_
Bump actions/checkout from 3.5.3 to 3.6.0 (8139)
Fix flakiness in test_spans (8132) `crusaderky`_
Remove duplicated teardown logic in Server.close, Nanny.close, and Server.stop (8129) `David Gold`_
Fix flaky test_task_counter (8134) `crusaderky`_
Use asyncio.timeout() in ConnectionPool where available (8109) `Thomas Grainger`_
- Adding support for cgroup v2 to cpu_count ( dask#10419 ) Johan Olsson
Released on August 18, 2023
Adding support for cgroup v2 to cpu_count ( dask#10419 ) Johan Olsson
Support multi-column groupby with sort=True and split_out>1 ( dask#10425 ) Richard (Rick) Zamora
Add DataFrame.enforce_runtime_divisions method ( dask#10404 ) Richard (Rick) Zamora
Enable file mode="x" with a single_file=True for Dask DataFrame to_csv ( dask#10443 ) Genevieve Buckley
Fix ValueError when running to_csv in append mode with single_file as True ( dask#10441 ) Ben
Add default types_mapper to from_pyarrow_table_dispatch for pandas ( dask#10446 ) Richard (Rick) Zamora
Released on August 18, 2023
Add memray integration (8044) `Florian Jetter`_
Await async listener.stop in Worker.close (8118) `Hendrik Makait`_
Minor fixes in memray (8113) `Florian Jetter`_
Enable basic p2p shuffle for dask-cudf (7743) `Richard (Rick) Zamora`_
Don't shut down unresponsive workers on gather() (8101) `crusaderky`_
Propagate CancelledError in gather_from_workers (8089) `crusaderky`_
Better logging for anomalous task termination (8082) `crusaderky`_
Handle null partitions in P2P shuffling (8116) `Hendrik Makait`_
Handle CancelledError properly in ConnectionPool (8110) `Florian Jetter`_
Fix additional race condition that can cause P2P restart to deadlock (8094) `Hendrik Makait`_
Ensure x-axis is uniform when plotting (8093) `Florian Jetter`_
Fix deadlock in P2P restarts (8091) `Hendrik Makait`_
Add memray integration to API docs (8115) `James Bourbeau`_
Fix default in description of LocalCluster s scheduler_port (8073) `Danferno`_
Remove types_mapper arg now that it is captured in from_pyarrow_table_dispatch (8114) `Richard (Rick) Zamora`_
Make P2P shuffle extensible (8096) `Hendrik Makait`_
Make PreloadManager a Sequence (8112) `Hendrik Makait`_
Introduce PreloadManager to handle failures in preload setup/teardown (8078) `Hendrik Makait`_
Restructure P2P code (8098) `Hendrik Makait`_
Make ToPickle a Generic (8097) `Hendrik Makait`_
Dedicated job for memray tests (8104) `Florian Jetter`_
Fix test_task_groups_update_start_stop, again (8102) `crusaderky`_
Remove dumps_task (8067) `Florian Jetter`_
Simplify usage of queues in nanny (6655) `Florian Jetter`_
Fix flakiness in tests caused by WindowsTime (8087) `crusaderky`_
Overhaul gather() (7997) `crusaderky`_
Fix flaky test_asyncprocess.py::test_simple (8085) `crusaderky`_
Skip test_client.py::test_file_descriptors_dont_leak on Mac OS (8080) `Hendrik Makait`_
Reorder operations in Worker.close (8076) `Hendrik Makait`_
- Fix for make_timeseries performance regression ( dask#10428 ) Irina Truong
Released on August 4, 2023
Fix for make_timeseries performance regression ( dask#10428 ) Irina Truong
Add distributed.print to debugging docs ( dask#10435 ) James Bourbeau
Documenting compatibility of NumPy functions with Dask functions ( dask#9941 ) Chiara Marmo
Use SPDX in license metadata ( dask#10437 ) John A Kirkham
Require dask[array] in dask[dataframe] ( dask#10357 ) John A Kirkham
Update gpuCI RAPIDS_VER to 23.10 ( dask#10427 )
Simplify compatibility code ( dask#10426 ) Hendrik Makait
Fix compatibility variable naming ( dask#10424 ) Hendrik Makait
Fix a few errors with upstream pandas and pyarrow ( dask#10412 ) Irina Truong
Released on August 4, 2023
Offload CPU intensive sections of update graph to unblock event loop (8049) `Florian Jetter`_
Log worker close reason in events (8042) `Florian Jetter`_
Exclude comm handshake from connect timeout (7698) `Florian Jetter`_
Automatically restart P2P shuffles when output worker leaves (7970) `Hendrik Makait`_
Add Client.unregister_scheduler_plugin method (7968) `Brian Phillips`_
Fix log message (8029) `Hendrik Makait`_
Send shards grouped by input chunk in P2P rechunking (8010) `Hendrik Makait`_
Close state machine and add-ins first in Worker.close (8066) `Hendrik Makait`_
Fix decide_worker picking a closing worker (8032) `crusaderky`_
Raise CommClosedError in get_stream_address (8020) `jochenott`_
Respect average nthreads in adaptive (8041) `Matthew Rocklin`_
Use queued tasks in adaptive target (8037) `Matthew Rocklin`_
Restore support for yield unsafe Client context managers and deprecate that support (7987) `Thomas Grainger`_
Change worker_saturation default value to 1.1 in the documention (8040) `minhnguyenxuan60`_
Clarified concurrent.futures section in client.rst (8048) `mercyo12`_
Fix flaky test_worker_metrics (8069) `crusaderky`_
Use SPDX in license metadata (8065) `jakirkham`_
Rebalance ci1 markers (8061) `Florian Jetter`_
Ensure stream messages are always ordered (8059) `Florian Jetter`_
Simplify update graph (8047) `Florian Jetter`_
Provide close reason when signal is caught (8045) `Florian Jetter`_
Allow unclosed comms in tests (8057) `Florian Jetter`_
Cosmetic tweak to adaptive_target (8052) `crusaderky`_
Fix linting (8046) `Florian Jetter`_
Update gpuCI RAPIDS_VER to 23.10 (8033)
Test against more recent pyarrow versions (8021) `James Bourbeau`_
Add a test for GraphLayout with scatter (8025) `Irina Truong`_
Fix compatibility variable naming (8030) `Hendrik Makait`_
This release updates Dask DataFrame to automatically convert text data using object data types to string[pyarrow] if pandas>=2 and pyarrow>=12 are ins
Released on July 20, 2023
Note
This release updates Dask DataFrame to automatically convert text data using object data types to string[pyarrow] if pandas>=2 and pyarrow>=12 are installed.
This should result in significantly reduced memory consumption and increased computation performance in many workflows that deal with text data.
You can disable this change by setting the dataframe.convert-string configuration value to False with
dask . config . set ({ "dataframe.convert-string" : False })
Convert to pyarrow strings if proper dependencies are installed ( dask#10400 ) James Bourbeau
Avoid repartition before shuffle for p2p ( dask#10421 ) Patrick Hoefler
API to generate random Dask DataFrames ( dask#10392 ) Irina Truong
Speed up dask.bag.Bag.random_sample ( dask#10356 ) crusaderky
Raise helpful ValueError for invalid time units ( dask#10408 ) Nat Tabris
Make repartition a no-op when divisions match (divisions provided as a list) ( dask#10395 ) Nicolas Grandemange
Use dataframe.convert-string in read_parquet token ( dask#10411 ) James Bourbeau
Category dtype is lost when concatenating MultiIndex ( dask#10407 ) Irina Truong
Fix FutureWarning: The provided callable... ( dask#10405 ) Irina Truong
Enable non-categorical hive-partition columns in read_parquet ( dask#10353 ) Richard (Rick) Zamora
concat ignoring DataFrame withouth columns ( dask#10359 ) Patrick Hoefler
Released on July 20, 2023
gather_dep should handle CancelledError (8013) `crusaderky`_
Pass stimulus_id to SchedulerPlugin.remove_worker and SchedulerPlugin.transition (7974) `Hendrik Makait`_
Log stimulus_id in retire_worker (8003) `crusaderky`_
Use BufferOutputStream in P2P (7991) `Florian Jetter`_
Add Coiled to ignored modules for code sniffing (7986) `Matthew Rocklin`_
Progress bar can group tasks by span (7952) `Irina Truong`_
Improved error messages for P2P shuffling (7979) `Hendrik Makait`_
Reduce removing comms log to debug level (7972) `Florian Jetter`_
Fix for TypeError: '<' not supported in graph dashboard (8017) `Irina Truong`_
Fix shuffle code to work with pyarrow 13 (8009) `Joris Van den Bossche`_
Add some top-level exposition to the p2p rechunking code (7978) `Lawrence Mitchell`_
Add test when not repartitioning for p2p in set_index (8016) `Patrick Hoefler`_
Bump JamesIves/github-pages-deploy-action from 4.4.2 to 4.4.3 (8008)
Configure asyncio loop using loop_factory kwarg rather than using the set_event_loop_policy (7969) `Thomas Grainger`_
Fix P2P worker cleanup (7981) `Hendrik Makait`_
Skip click v8.1.4 in mypy pre-commit hook (7989) `Thomas Grainger`_
Remove accidental duplicated conversion of pyarrow Table to pandas (7983) `Joris Van den Bossche`_
- Fix test_first_and_last to accommodate deprecated last ( dask#10373 ) James Bourbeau
Released on July 7, 2023
Catch exceptions when attempting to load CLI entry points ( dask#10380 ) Jacob Tomlinson
Fix typo in _clean_ipython_traceback ( dask#10385 ) Alexander Clausen
Ensure that df is immutable after from_pandas ( dask#10383 ) Patrick Hoefler
Warn consistently for inplace in Series.rename ( dask#10313 ) Patrick Hoefler
Add clarification about output shape and reshaping in rechunk documentation ( dask#10377 ) Swayam Patil
Simplify astype implementation ( dask#10393 ) Patrick Hoefler
Fix test_first_and_last to accommodate deprecated last ( dask#10373 ) James Bourbeau
Add level to create_merge_tree ( dask#10391 ) Patrick Hoefler
Do not derive from scipy.stats.chisquare docstring ( dask#10382 ) Doug Davis
Released on July 7, 2023
Propagate spans to tasks (7898) `crusaderky`_
Make Fine Performance Metrics bar graph horizontal (7966) `crusaderky`_
Don't pile up context_meter callbacks (7961) `crusaderky`_
Polish Fine Performance Metrics plot (7963) `crusaderky`_
Sign task-erred with run_id and reject outdated responses (7933) `Hendrik Makait`_
Set Client.as_current when entering ctx (6527) `Florian Jetter`_
Re-run erred task on ComputeTaskEvent (7967) `Hendrik Makait`_
Fix crash in spans when time() is not monotonic (7960) `crusaderky`_
Documentation for Fine Performance Metrics and Spans (7945) `crusaderky`_
Update client.py to be consistent with the docstring (7705) `Sultan Orazbayev`_
Use distributed.wait_for in test_close_async_task_handles_cancellation (7955) `Thomas Grainger`_
Fix flaky UCX tests (7950) `Peter Andreas Entschev`_
- Deprecate DataFrame.fillna / Series.fillna with method ( dask#10349 ) Irina Truong
Released on June 26, 2023
Remove no longer supported clip_lower and clip_upper ( dask#10371 ) Patrick Hoefler
Support DataFrame.set_index(..., sort=False) ( dask#10342 ) Miles
Cleanup remote tracebacks ( dask#10354 ) Irina Truong
Add dispatching mechanisms for pyarrow.Table conversion ( dask#10312 ) Richard (Rick) Zamora
Choose P2P even if fusion is enabled ( dask#10344 ) Hendrik Makait
Validate that rechunking is possible earlier in graph generation ( dask#10336 ) Hendrik Makait
Fix issue with header passed to read_csv ( dask#10355 ) GALI PREM SAGAR
Respect dropna and observed in GroupBy.var and GroupBy.std ( dask#10350 ) Patrick Hoefler
Fix H5FD_lock error when writing to hdf with distributed client ( dask#10309 ) Irina Truong
Fix for total_mem_usage of bag.map() ( dask#10341 ) Irina Truong
Deprecate DataFrame.fillna / Series.fillna with method ( dask#10349 ) Irina Truong
Deprecate DataFrame.first and Series.first ( dask#10352 ) Irina Truong
Deprecate numpy.compat ( dask#10370 ) Irina Truong
Fix annotations and spans leaking between threads ( dask#10367 ) Irina Truong
Use general kwargs in pyarrow_table_dispatch functions ( dask#10364 ) Richard (Rick) Zamora
Remove unnecessary try / except in isna ( dask#10363 ) Patrick Hoefler
mypy support for numpy 1.25 ( dask#10362 ) crusaderky
Bump actions/checkout from 3.5.2 to 3.5.3 ( dask#10348 )
Restore numba in upstream build ( dask#10330 ) James Bourbeau
Update nightly wheel index for pandas / numpy / scipy ( dask#10346 ) Matthew Roeschke
Add rechunk config values to yaml ( dask#10343 ) Hendrik Makait
Released on June 26, 2023
Add idle time to fine performance metrics (7938) `crusaderky`_
Spans: capture code snippets (7930) `crusaderky`_
Improve memory footprint of P2P rechunking (7897) `Hendrik Makait`_
Improve error message on invalid state in _handle_remove_replicas (7920) `Hendrik Makait`_
Make ShuffleSchedulerExtension.remove_worker more robust (7921) `Hendrik Makait`_
Provide more information if occupancy drops below zero (7924) `Hendrik Makait`_
Improved conversion between pyarrow and pandas in P2P shuffling (7896) `Hendrik Makait`_
Add Cluster.called_from_running_loop and fix Cluster.asynchronous (7941) `Jacob Tomlinson`_
Fix annotations and spans leaking between threads (7935) `Irina Truong`_
Handle null partitions in P2P shuffling (7922) `Jonathan De Troye`_
Fix race condition in Fine Performance Metrics sync (7927) `crusaderky`_
Avoid (7923) by starting run_id at 1 (7925) `Hendrik Makait`_
Fix glitches in Fine Performance Metrics stacked graph (7919) `crusaderky`_
Wipe the cache after (7935) (7946) `crusaderky`_
Remove grace period for unclosed comms in gen_cluster (7937) `Thomas Grainger`_
raise pytest.skip is redundant (7939) `crusaderky`_
Fix test_rechunk_with_{fully|partially}_unknown_dimension on CI (7934) `Hendrik Makait`_
Fix compatibility with numpy 1.25 (7932) `crusaderky`_
Spans: refactor sums of mappings (7918) `crusaderky`_
Fix flaky test_send_metrics_to_scheduler (7931) `crusaderky`_
Avoid calls to make_current() and make_clear() by using asyncio.run in LoopRunner (7467) `Thomas Grainger`_
Add needs triage label to re/opened PRs and issues (7916) `Miles`_
Remove span_id from global metrics on scheduler (7917) `crusaderky`_
Add spans to Fine Performance Metrics bokeh dashboard (7911) `crusaderky`_
FinePerformanceMetrics dashboard overhaul (7910) `crusaderky`_
Check for skip-caching label (7907) `Miles`_
Fix CI changes from (7902) (7905) `Hendrik Makait`_
Rename get_default_shuffle_algorithm to get_default_shuffle_method (7902) `Hendrik Makait`_
Bump actions/checkout from 3.5.2 to 3.5.3 (7904)
Refactor P2P rechunk validation (7890) `Hendrik Makait`_
- Add missing not in predicate support to read_parquet ( dask#10320 ) Richard (Rick) Zamora
Released on June 9, 2023
Add missing not in predicate support to read_parquet ( dask#10320 ) Richard (Rick) Zamora
Fix for incorrect value_counts ( dask#10323 ) Irina Truong
Update empty describe top and freq values ( dask#10319 ) James Bourbeau
Fix hetzner typo ( dask#10332 ) Sarah Charlotte Johnson
Test with numba and sparse on Python 3.11 ( dask#10329 ) Thomas Grainger
Remove numpy.find_common_type warning ignore ( dask#10311 ) James Bourbeau
Update gpuCI RAPIDS_VER to 23.08 ( dask#10310 )
Released on June 9, 2023
Post fine performance metrics to spans (7885) `crusaderky`_
Unique Spans (7882) `crusaderky`_
Add a timeout to client.as_completed that mirrors concurrent.futures.as_completed timeout (7811) `Thomas Grainger`_
Enforce dtypes in P2P shuffle (7879) `Hendrik Makait`_
Support load= keyword for Client.upload_file (7873) `James Bourbeau`_
Support get_worker() and worker_client() in async tasks (7844) `Thomas Grainger`_
Capture line number for code frames (7786) `Miles`_
Avoid meta roundtrip in P2P shuffle (7895) `Hendrik Makait`_
Fix Fine Performance Metrics mis-aligned ColumnData lengths (7893) `Miles`_
Fix Fine Performance Metrics spilling crash (7878) `Miles`_
Fix spans bug when scatter or client_desires_new_key creates a task (7886) `crusaderky`_
Fix Fine Performance Metrics w/ Bokeh 3 (7874) `Miles`_
TaskGroup.start can move backwards (7867) `crusaderky`_
Use properly imported MatDescriptor for cupy dispatch registration (7868) `Charles Blackmon-Luca`_
Ensure retire_workers works if AMM extension hasn't been loaded (7863) `crusaderky`_
Review user-defined fine performance metrics (7894) `crusaderky`_
Fix tests that disable the shuffle extension (7883) `crusaderky`_
Refactor Scheduler.is_idle (7881) `crusaderky`_
Link TaskGroups to Spans (7869) `crusaderky`_
Spans skeleton (7862) `crusaderky`_
Update gpuCI RAPIDS_VER to 23.08 (7855)
Bump JamesIves/github-pages-deploy-action from 4.4.1 to 4.4.2 (7865)
- Avoid pandas Series.__getitem__ deprecation in tests ( dask#10308 ) James Bourbeau
Released on May 26, 2023
Note
This release drops support for Python 3.8. As of this release Dask supports Python 3.9, 3.10, and 3.11. See this community issue for more details.
Drop Python 3.8 support ( dask#10295 ) Thomas Grainger
Change Dask Bag partitioning scheme to improve cluster saturation ( dask#10294 ) Jacob Tomlinson
Generalize dd.to_datetime for GPU-backed collections, introduce get_meta_library utility ( dask#9881 ) Charles Blackmon-Luca
Add na_action to DataFrame.map ( dask#10305 ) Patrick Hoefler
Raise TypeError in DataFrame.nsmallest and DataFrame.nlargest when columns is not given ( dask#10301 ) Patrick Hoefler
Improve sizeof for pd.MultiIndex ( dask#10230 ) Patrick Hoefler
Support duplicated columns in a bunch of DataFrame methods ( dask#10261 ) Patrick Hoefler
Add numeric_only support to DataFrame.idxmin and DataFrame.idxmax ( dask#10253 ) Patrick Hoefler
Implement numeric_only support for DataFrame.quantile ( dask#10259 ) Patrick Hoefler
Add support for numeric_only=False in DataFrame.std ( dask#10251 ) Patrick Hoefler
Implement numeric_only=False for GroupBy.cumprod and GroupBy.cumsum ( dask#10262 ) Patrick Hoefler
Implement numeric_only for skew and kurtosis ( dask#10258 ) Patrick Hoefler
mask and where should accept a callable ( dask#10289 ) Irina Truong
Fix conversion from Categorical to pa.dictionary in read_parquet ( dask#10285 ) Patrick Hoefler
Spurious config on nested annotations ( dask#10318 ) crusaderky
Fix rechunking behavior for dimensions with known and unknown chunk sizes ( dask#10157 ) Hendrik Makait
Enable drop to support mismatched partitions ( dask#10300 ) James Bourbeau
Fix divisions construction for to_timestamp ( dask#10304 ) Patrick Hoefler
pandas ExtensionDtype raising in Series reduction operations ( dask#10149 ) Patrick Hoefler
Fix regression in da.random interface ( dask#10247 ) Eray Aslan
da.coarsen doesn’t trim an empty chunk in meta ( dask#10281 ) Irina Truong
Fix dtype inference for engine="pyarrow" in read_csv ( dask#10280 ) Patrick Hoefler
Add meta_from_array to API docs ( dask#10306 ) Ruth Comer
Update Coiled links ( dask#10296 ) Sarah Charlotte Johnson
Add docs for demo day ( dask#10288 ) Matthew Rocklin
Explicitly install anaconda-client from conda-forge when uploading conda nightlies ( dask#10316 ) Charles Blackmon-Luca
Configure isort to add from future import annotations ( dask#10314 ) Thomas Grainger
Avoid pandas Series.getitem deprecation in tests ( dask#10308 ) James Bourbeau
Ignore numpy.find_common_type warning from pandas ( dask#10307 ) James Bourbeau
Add test to check that DataFrame.setitem does not modify df inplace ( dask#10223 ) Patrick Hoefler
Clean up default value of dropna in value_counts ( dask#10299 ) Patrick Hoefler
Add pytest-cov to test extra ( dask#10271 ) James Bourbeau
Released on May 26, 2023
Note
This release drops support for Python 3.8. As of this release Dask supports Python 3.9, 3.10, and 3.11. See this community issue for more details.
Exclude IPython code from computations (7788) `Miles`_
Drop Python 3.8 support (7840) `Thomas Grainger`_
Add storage_options to performance_report (7636) `ypogorelova`_
Don't warn about mismatched msgpack (7839) `Irina Truong`_
Clean up sys.path on Server shutdown (7838) `James Bourbeau`_
Dashboard: Fine Performance Metrics (7725) `Miles`_
Properly handle unknown chunk sizes in P2P rechunking (7856) `Hendrik Makait`_
Minimal change to work around (7726) / support for UCX (7851) `Benjamin Zaitlen`_
Don't end computations until cluster is truly idle (7790) `crusaderky`_
Explicitly install anaconda-client from conda-forge when uploading conda nightlies (7861) `Charles Blackmon-Luca`_
Fix is_idle docs build (7854) `James Bourbeau`_
Add tests for P2P barrier fusion (7845) `Hendrik Makait`_
Avoid DeprecationWarning in cupy dispatch registration (7836) `Lawrence Mitchell`_
- Adjust for DataFrame.applymap deprecation and all NA concat behaviour change ( dask#10245 ) Patrick Hoefler
Released on May 12, 2023
Implement numeric_only=False for GroupBy.corr and GroupBy.cov ( dask#10264 ) Patrick Hoefler
Add support for numeric_only=False in DataFrame.var ( dask#10250 ) Patrick Hoefler
Add numeric_only support to DataFrame.mode ( dask#10257 ) Patrick Hoefler
Add DataFrame.map to dask.DataFrame API ( dask#10246 ) Patrick Hoefler
Adjust for DataFrame.applymap deprecation and all NA concat behaviour change ( dask#10245 ) Patrick Hoefler
Enable numeric_only=False for DataFrame.count ( dask#10234 ) Patrick Hoefler
Disallow array input in mask/where ( dask#10163 ) Irina Truong
Support numeric_only=True in GroupBy.corr and GroupBy.cov ( dask#10227 ) Patrick Hoefler
Add numeric_only support to GroupBy.median ( dask#10236 ) Patrick Hoefler
Support mimesis=9 in dask.datasets ( dask#10241 ) James Bourbeau
Add numeric_only support to min , max and prod ( dask#10219 ) Patrick Hoefler
Add numeric_only=True support for GroupBy.cumsum and GroupBy.cumprod ( dask#10224 ) Patrick Hoefler
Add helper to unpack numeric_only keyword ( dask#10228 ) Patrick Hoefler
Fix clone + from_array failure ( dask#10211 ) crusaderky
Fix dataframe reductions for ea dtypes ( dask#10150 ) Patrick Hoefler
Avoid scalar conversion deprecation warning in numpy=1.25 ( dask#10248 ) James Bourbeau
Make sure transform output has the same index as input ( dask#10184 ) Irina Truong
Fix corr and cov on a single-row partition ( dask#9756 ) Irina Truong
Fix test_groupby_numeric_only_supported and test_groupby_aggregate_categorical_observed upstream errors ( dask#10243 ) Irina Truong
Clean up futures docs ( dask#10266 ) Matthew Rocklin
Add Index API reference ( dask#10263 ) hotpotato
Warn when meta is passed to apply ( dask#10256 ) Patrick Hoefler
Remove imageio version restriction in CI ( dask#10260 ) Patrick Hoefler
Remove unused DataFrame variance methods ( dask#10252 ) Patrick Hoefler
Un- xfail test_categories with pyarrow strings and pyarrow>=12 ( dask#10244 ) Irina Truong
Bump gpuCI PYTHON_VER 3.8->3.9 ( dask#10233 ) Charles Blackmon-Luca
Released on May 12, 2023
Client.upload_file send to both Workers and Scheduler and rename scratch directory (7802) `Miles`_
Allow dashboard to be used with bokeh prereleases (7814) `James Bourbeau`_
Ensure log_event of non-msgpack serializable object do not kill servers (7472) `Florian Jetter`_
Fix test_nanny.py duplicated pytestmark definitions (7819) `Thomas Grainger`_
Fix flaky test_dask_worker.py::test_single_executable_deprecated (7817) `Thomas Grainger`_
Annotation-less P2P shuffling (7801) `Hendrik Makait`_
Fix docstring for batch_size in client.map (7833) `David Chudzicki`_
Refactor test_protocol.py (7829) `crusaderky`_
Lint #6496 (7828) `crusaderky`_
Remove hardcoded 60s timeout (6496) `Florian Jetter`_
Add __init__.py files to template and static directories (7809) `Thomas Grainger`_
Disable compression for fast comms (7768) `crusaderky`_
Avoid deprecated pd.api.types.is_sparse (7813) `James Bourbeau`_
Bump gpuCI PYTHON_VER from 3.8 to 3.9 (7812) `Charles Blackmon-Luca`_
- Avoid deprecated is_categorical_dtype from pandas ( dask#10180 ) Patrick Hoefler
Released on April 28, 2023
Implement numeric_only support for DataFrame.sum ( dask#10194 ) Patrick Hoefler
Add support for numeric_only=True in GroupBy operations ( dask#10222 ) Patrick Hoefler
Avoid deep copy in DataFrame.setitem for pandas 1.4 and up ( dask#10221 ) Patrick Hoefler
Avoid calling Series.apply with _meta_nonempty ( dask#10212 ) Patrick Hoefler
Unpin sqlalchemy and fix compatibility issues ( dask#10140 ) Patrick Hoefler
Partially revert default client discovery ( dask#10225 ) Florian Jetter
Support arrow dtypes in Index meta creation ( dask#10170 ) Patrick Hoefler
Repartitioning raises with extension dtype when truncating floats ( dask#10169 ) Patrick Hoefler
Adjust empty Index from fastparquet to object dtype ( dask#10179 ) Patrick Hoefler
Update Kubernetes docs ( dask#10232 ) Jacob Tomlinson
Add DataFrame.reduction to API docs ( dask#10229 ) James Bourbeau
Add DataFrame.persist to docs and fix links ( dask#10231 ) Patrick Hoefler
Add documentation for GroupBy.transform ( dask#10185 ) Irina Truong
Fix formatting in random number generation docs ( dask#10189 ) Eray Aslan
Pin imageio to <2.28 ( dask#10216 ) Patrick Hoefler
Add note about importlib_metadata backport ( dask#10207 ) James Bourbeau
Add xarray back to Python 3.11 CI builds ( dask#10200 ) James Bourbeau
Add mindeps build with all optional dependencies ( dask#10161 ) Charles Blackmon-Luca
Provide proper like value for array_safe in percentiles_summary ( dask#10156 ) Charles Blackmon-Luca
Avoid re-opening hdf file multiple times in read_hdf ( dask#10205 ) Thomas Grainger
Add merge tests on nullable columns ( dask#10071 ) Charles Blackmon-Luca
Fix coverage configuration ( dask#10203 ) Thomas Grainger
Remove is_period_dtype and is_sparse_dtype ( dask#10197 ) Patrick Hoefler
Bump actions/checkout from 3.5.0 to 3.5.2 ( dask#10201 )
Avoid deprecated is_categorical_dtype from pandas ( dask#10180 ) Patrick Hoefler
Adjust for deprecated is_interval_dtype and is_datetime64tz_dtype ( dask#10188 ) Patrick Hoefler
Released on April 28, 2023
Enable GIL monitoring when gilknocker installed (7730) `Miles`_
By default only set logging handler if no other handler has been set to avoid double logging (7750) `Thomas Grainger`_
Cluster wait (6700) `Iain Dorrington`_
Add Prometheus counter for SystemMonitor.last_time (7785) `Miles`_
Partial revert defaultclient config setting (7803) `Florian Jetter`_
Delay awaiting async SchedulerPlugin.{add|remove}_worker hooks in order to immediately execute all sync ones (7799) `Hendrik Makait`_
Fix check_idle not returning the correct value if no change to idleness (7781) `Jacob Tomlinson`_
Avoid warning when gilknocker not installed (7808) `James Bourbeau`_
Only set worker/nanny to Status.running if it is in Status.init (7773) `Thomas Grainger`_
Add --cov-config=pyproject.toml so config is always correctly loaded by pytest-cov (7793) `Thomas Grainger`_
gilknocker from conda-forge (7791) `James Bourbeau`_
Minor zict cleanup (7783) `crusaderky`_
Bump actions/checkout from 3.5.0 to 3.5.2 (7784)
Fix typing now that code is tuple of frame(s) (7778) `Nat Tabris`_
- Avoid deprecated GroupBy.dtypes ( dask#10111 ) Irina Truong
Released on April 14, 2023
Override old default values in update_defaults ( dask#10159 ) Gabe Joseph
Add a CLI command to list and get a value from dask config ( dask#9936 ) Irina Truong
Handle string-based engine argument to read_json ( dask#9947 ) Richard (Rick) Zamora
Avoid deprecated GroupBy.dtypes ( dask#10111 ) Irina Truong
Revert grouper -related changes ( dask#10182 ) Irina Truong
GroupBy.cov raising for non-numeric grouping column ( dask#10171 ) Patrick Hoefler
Updates for Index supporting numpy numeric dtypes ( dask#10154 ) Irina Truong
Preserve dtype for partitioning columns when read with pyarrow ( dask#10115 ) Patrick Hoefler
Fix annotations for to_hdf ( dask#10123 ) Hendrik Makait
Handle None column name when checking if columns are all numeric ( dask#10128 ) Lawrence Mitchell
Fix valid_divisions when passed a tuple ( dask#10126 ) Brian Phillips
Maintain annotations in DataFrame.categorize ( dask#10120 ) Hendrik Makait
Fix handling of missing min/max parquet statistics during filtering ( dask#10042 ) Richard (Rick) Zamora
Deprecate use_nullable_dtypes= and add dtype_backend= ( dask#10076 ) Irina Truong
Deprecate convert_dtype in Series.apply ( dask#10133 ) Irina Truong
Document Generator based random number generation ( dask#10134 ) Eray Aslan
Update dataframe.convert_string to dataframe.convert-string ( dask#10191 ) Irina Truong
Add python-cityhash to CI environments ( dask#10190 ) Charles Blackmon-Luca
Temporarily pin scikit-image to fix Windows CI ( dask#10186 ) Patrick Hoefler
Handle pandas deprecation warnings for to_pydatetime and apply ( dask#10168 ) Patrick Hoefler
Drop bokeh<3 restriction ( dask#10177 ) James Bourbeau
Fix failing tests under copy-on-write ( dask#10173 ) Patrick Hoefler
Allow pyarrow CI to fail ( dask#10176 ) James Bourbeau
Switch to Generator for random number generation in dask.array ( dask#10003 ) Eray Aslan
Bump peter-evans/create-pull-request from 4 to 5 ( dask#10166 )
Fix flaky modf operation in test_arithmetic ( dask#10162 ) Irina Truong
Temporarily remove xarray from CI with pandas 2.0 ( dask#10153 ) James Bourbeau
Fix update_graph counting logic in test_default_scheduler_on_worker ( dask#10145 ) James Bourbeau
Fix documentation build with pandas 2.0 ( dask#10138 ) James Bourbeau
Remove dask/gpu from gpuCI update reviewers ( dask#10135 ) Charles Blackmon-Luca
Update gpuCI RAPIDS_VER to 23.06 ( dask#10129 )
Bump actions/stale from 6 to 8 ( dask#10121 )
Use declarative setuptools ( dask#10102 ) Thomas Grainger
Relax assert_eq checks on Scalar -like objects ( dask#10125 ) Matthew Rocklin
Upgrade readthedocs config to ubuntu 22.04 and Python 3.11 ( dask#10124 ) Thomas Grainger
Bump actions/checkout from 3.4.0 to 3.5.0 ( dask#10122 )
Fix test_null_partition_pyarrow in pyarrow CI build ( dask#10116 ) Irina Truong
Drop distributed pack ( dask#9988 ) Florian Jetter
Make dask.compatibility private ( dask#10114 ) Jacob Tomlinson
Released on April 14, 2023
Note
With this release we are making a change which will require the Dask scheduler to have consistent software and hardware capabilities as the client and workers.
It's always been recommended that your client and workers have a consistent software and hardware environment so that data structures and dependencies can be pickled and passed between them. However recent changes to the Dask scheduler mean that we now also require your scheduler to have the same consistent environment as everything else.
Meter queue time to the offload executor (7758) `crusaderky`_
Add GIL contention metric to Prometheus (7651) `Miles`_
Add methods Client.forward_logging() and Client.unforward_logging(). (7276) `Max Bane`_
Optionally capture more frames in computations (7656) `Gabe Joseph`_
Consider Jupyter activity in idle timeout (7687) `Gabe Joseph`_
Add a dashboard component that displays RMM memory (7718) `Peter Andreas Entschev`_
Improve error message if shuffle/rechunk lost annotations (7707) `Hendrik Makait`_
Exception chaining in P2P shuffling (7706) `Hendrik Makait`_
Use pickle for graph submissions from client to scheduler (7564) `Florian Jetter`_
Fix crash on missing env var in dashboard link formatting (7729) `Miles`_
Fix randbytes() on Python 3.8 (7771) `crusaderky`_
Run scheduler of SubprocessCluster in subprocess (7727) `Hendrik Makait`_
Drop id from RMM dashboard component (7739) `James Bourbeau`_
Bump peter-evans/create-pull-request from 4 to 5 (7766)
Fix flaky test_malloc_trim_threshold in CI (7764) `crusaderky`_
Minor polish in spill and worker_memory_manager (7752) `crusaderky`_
Merge identical tool.mypy.overrides sections (7749) `Thomas Grainger`_
Add changelog section for 2023.3.2.1 (7755) `Charles Blackmon-Luca`_
Specify ts resolution explicitly in test_processing_chain (7744) `Patrick Hoefler`_
Unignore Sphinx ref.python (7713) `Thomas Grainger`_
Temporary fix for test_merge_by_multiple_columns with pandas 2.0 (7747) `James Bourbeau`_
Remove dask/gpu from gpuCI update reviewers (7741) `Charles Blackmon-Luca`_
Update gpuCI RAPIDS_VER to 23.06 (7728)
Remove test for DataFrame.to_hdf (7735) `Hendrik Makait`_
Test P2P shuffling with DataFrame.to_hdf (7720) `Hendrik Makait`_
scheduler.py typing - remove allow_incomplete_defs (7721) `Florian Jetter`_
Remove bokeh upper bound (7413) `James Bourbeau`_
Use declarative setuptools (7629) `Thomas Grainger`_
Store performance metrics on scheduler (7701) `Miles`_
Upgrade readthedocs config to ubuntu 22.04 and Python 3.11 (7722) `Thomas Grainger`_
Clean up legacy cruft from worker reconnection (7712) `crusaderky`_
Bump actions/checkout from 3.4.0 to 3.5.0 (7711)
Drop support for zict 2.1.0 (7709) `crusaderky`_
Fix mypy warning in test_client.py (7710) `crusaderky`_
Test P2P shuffling with DataFrame.categorize (7708) `Hendrik Makait`_
Register atexit handler before Distributed handlers to unblock hanging UCX clusters Lawrence Mitchell_ Ben Zaitlen_
Released on April 5, 2023
Register atexit handler before Distributed handlers to unblock hanging UCX clusters `Lawrence Mitchell`_ `Ben Zaitlen`_
- Deprecate observed=False for groupby with categoricals ( dask#10095 ) Irina Truong
Released on March 24, 2023
Deprecate observed=False for groupby with categoricals ( dask#10095 ) Irina Truong
Deprecate axis= for some groupby operations ( dask#10094 ) James Bourbeau
The axis keyword in DataFrame.rolling/Series.rolling is deprecated ( dask#10110 ) Irina Truong
DataFrame._data deprecation in pandas ( dask#10081 ) Irina Truong
Use importlib_metadata backport to avoid CLI UserWarning ( dask#10070 ) Thomas Grainger
Port option parsing logic from dask.dataframe.read_parquet to to_parquet ( dask#9981 ) Anton Loukianov
Avoid using dd.shuffle in groupby-apply ( dask#10043 ) Richard (Rick) Zamora
Enable null hive partitions with pyarrow parquet engine ( dask#10007 ) Richard (Rick) Zamora
Support unknown shapes in *_like functions ( dask#10064 ) Doug Davis
Add to_backend methods to API docs ( dask#10093 ) Lawrence Mitchell
Remove broken gpuCI link in developer docs ( dask#10065 ) Charles Blackmon-Luca
Configure readthedocs sphinx warnings as errors ( dask#10104 ) Thomas Grainger
Un- xfail test_division_or_partition with pyarrow strings active ( dask#10108 ) Irina Truong
Un- xfail test_different_columns_are_allowed with pyarrow strings active ( dask#10109 ) Irina Truong
Restore Entrypoints compatibility ( dask#10113 ) Jacob Tomlinson
Un- xfail test_to_dataframe_optimize_graph with pyarrow strings active ( dask#10087 ) Irina Truong
Only run test_development_guidelines_matches_ci on editable install ( dask#10106 ) Charles Blackmon-Luca
Un- xfail test_dataframe_cull_key_dependencies_materialized with pyarrow strings active ( dask#10088 ) Irina Truong
Install mimesis in CI environments ( dask#10105 ) Charles Blackmon-Luca
Fix for no module named ipykernel ( dask#10101 ) Irina Truong
Fix docs builds by installing ipykernel ( dask#10103 ) Thomas Grainger
Allow pyarrow build to continue on failures ( dask#10097 ) James Bourbeau
Bump actions/checkout from 3.3.0 to 3.4.0 ( dask#10096 )
Fix test_set_index_on_empty with pyarrow strings active ( dask#10054 ) Irina Truong
Un- xfail pyarrow pickling tests ( dask#10082 ) James Bourbeau
CI environment file cleanup ( dask#10078 ) James Bourbeau
Un- xfail more pyarrow tests ( dask#10066 ) Irina Truong
Temporarily skip pyarrow_compat tests with p`andas 2.0 ( dask#10063 ) James Bourbeau
Fix test_melt with pyarrow strings active ( dask#10052 ) Irina Truong
Fix test_str_accessor with pyarrow strings active ( dask#10048 ) James Bourbeau
Fix test_better_errors_object_reductions with pyarrow strings active ( dask#10051 ) James Bourbeau
Fix test_loc_with_non_boolean_series with pyarrow strings active ( dask#10046 ) James Bourbeau
Fix test_values with pyarrow strings active ( dask#10050 ) James Bourbeau
Temporarily xfail test_upstream_packages_installed ( dask#10047 ) James Bourbeau
Released on March 24, 2023
Enhanced thread-safety in zict.File (7691) `crusaderky`_
Future deserialization without available client (7580) `Florian Jetter`_
Support adjusting GIL monitoring interval (7650) `Miles`_
Gracefully stop GIL monitoring if running (7652) `Miles`_
Fine performance metrics for execute, gather_dep, etc. (7586) `crusaderky`_
Add GIL metric to dashboard (7646) `Miles`_
Expose scheduler idle via RPC and HTTP API (7642) `Jacob Tomlinson`_
Add full dashboard link in scheduler logs (7631) `Miles`_
Tell workers when their peers have left (so they don't hang fetching data from them) (7574) `Thomas Grainger`_
Fix regression in dashboard after (7586) (7683) `crusaderky`_
Fix OverflowError in Cluster._sync_cluster_info() (7648) `Hendrik Makait`_
Ensure that serialized data is measured correctly (7593) `Florian Jetter`_
Fix unexpected indentation in Client.cancel docstring (7694) `Thomas Grainger`_
Improve plugin API documentation (7653) `Florian Jetter`_
Configure sphinx warnings as errors (7697) `Thomas Grainger`_
Fix naming comparison in test-report workflow script (7695) `Miles`_
Temporarily restrict ipywidgets<8.0.5 (7693) `crusaderky`_
Bump actions/checkout from 3.3.0 to 3.4.0 (7685)
Temporarily restrict ipykernel<6.22.0 (7689) `James Bourbeau`_
Fix typo in CODEOWNERS (7670) `Hendrik Makait`_
Avoid bool object has no attribute close in @gen_cluster (7657) `Thomas Grainger`_
Fix failing test_server_close_stops_gil_monitoring (7659) `James Bourbeau`_
Add CODEOWNERS file (7645) `Jacob Tomlinson`_
Remove weakref finalizer for Offload Executor (7644) `Florian Jetter`_
- Support pyarrow strings in MultiIndex ( dask#10040 ) Irina Truong
Released on March 10, 2023
Support pyarrow strings in MultiIndex ( dask#10040 ) Irina Truong
Improved support for pyarrow strings ( dask#10000 ) Irina Truong
Fix flaky RuntimeWarning during array reductions ( dask#10030 ) James Bourbeau
Extend complete extras ( dask#10023 ) James Bourbeau
Raise an error with dataframe.convert-string=True and pandas<2.0 ( dask#10033 ) Irina Truong
Rename shuffle/rechunk config option/kwarg to method ( dask#10013 ) James Bourbeau
Add initial support for converting pandas extension dtypes to arrays ( dask#10018 ) James Bourbeau
Remove randomgen support ( dask#9987 ) Eray Aslan
Skip rechunk when rechunking to the same chunks with unknown sizes ( dask#10027 ) Hendrik Makait
Custom utility to convert parquet filters to pyarrow expression ( dask#9885 ) Richard (Rick) Zamora
Consider numpy scalars and 0d arrays as scalars when padding ( dask#9653 ) Justus Magin
Fix parquet overwrite behavior after an adaptive read_parquet operation ( dask#10002 ) Richard (Rick) Zamora
Add and update docs for Data Transfer section ( dask#10022 ) Miles
Remove stale hive-partitioning code from pyarrow parquet engine ( dask#10039 ) Richard (Rick) Zamora
Increase minimum supported pyarrow to 7.0 ( dask#10024 ) James Bourbeau
Revert “Prepare drop packunpack ( dask#9994 ) ( dask#10037 ) Florian Jetter
Have codecov wait for more builds before reporting ( dask#10031 ) James Bourbeau
Prepare drop packunpack ( dask#9994 ) Florian Jetter
Add CI job with pyarrow strings turned on ( dask#10017 ) James Bourbeau
Fix test_groupby_dropna_with_agg for pandas 2.0 ( dask#10001 ) Irina Truong
Fix test_pickle_roundtrip for pandas 2.0 ( dask#10011 ) James Bourbeau
Released on March 10, 2023
Add Jupyter link to dashboard menu if --jupyter flag is set (7638) `Jacob Tomlinson`_
Bump minimum click version from 7.0 to 8.0 (7637) `Miles`_
Extend dask metapackage dependencies (7630) `James Bourbeau`_
Further improvements to Client.restart_workers (7620) `Miles`_
P2P offload get_output_partition (7587) `Florian Jetter`_
Initial integration of GIL contention metric (7624) `Miles`_
Add dashboard documentation links (7610) `Miles`_
Rename shuffle/rechunk config option/kwarg to method (7623) `Hendrik Makait`_
Return results in restart_workers (7606) `Miles`_
Ensure client key cancellation uses ordered messages (7583) `Florian Jetter`_
Fix undefined async_wait_for -> async_poll_for (7627) `Miles`_
Don't send client heartbeat without a scheduler_comm (7612) `James Bourbeau`_
Do not unspill on free-keys (7607) `crusaderky`_
Add notes to Client.submit, Client.map, and Client.scatter with the description of the current task graph resolution algorithm limitations (7588) `Eugene Druzhynin`_
Use range with pickle protocol versions (7635) `jakirkham`_
Share thread pool among P2P shuffle runs (7621) `Hendrik Makait`_
Replace psutil suspend with BlockedGatherDep in test_failing_worker_with_additional_replicas_on_cluster (7633) `Thomas Grainger`_
Ignore pkg_resources DeprecationWarning for mindeps (7626) `Miles`_
Implement wait_for using asyncio.timeout() on 3.11 (7571) `Thomas Grainger`_
Use tmp_path fixture instead of outdated tmpdir fixture (7582) `ypogorelova`_
Only one crick callback (7614) `crusaderky`_
Add mindeps + numpy job to tests CI (7609) `Miles`_
Do not xfail whole tests due to (6705) (7611) `crusaderky`_
- Bag must not pick p2p as shuffle default ( dask#10005 ) Florian Jetter
Released on March 1, 2023
Bag must not pick p2p as shuffle default ( dask#10005 ) Florian Jetter
Minor follow-up to P2P by default ( dask#10008 ) James Bourbeau
Add minimum version to optional jinja2 dependency ( dask#9999 ) Charles Blackmon-Luca
Released on March 1, 2023
Remove pyarrow dependency for rechunking (7604) `Florian Jetter`_
Update rechunk_transfer and rechunk_unpack errors (7600) `James Bourbeau`_
Remove dead code and document arguments to ShardBuffer constructors (7590) `Lawrence Mitchell`_
Fix tests for p2p by default (7595) `Florian Jetter`_
Remove obsolete cast (7596) `Florian Jetter`_
This release changes the default DataFrame shuffle algorithm to p2p to improve stability and performance. Learn more here and please provide any feedb
Released on February 24, 2023
Note
This release changes the default DataFrame shuffle algorithm to p2p to improve stability and performance. Learn more here and please provide any feedback on this discussion .
If you encounter issues with this new algorithm, please see the documentation for more information, and how to switch back to the old mode.
Enable P2P shuffling by default ( dask#9991 ) Florian Jetter
P2P rechunking ( dask#9939 ) Hendrik Makait
Efficient dataframe.convert-string support for read_parquet ( dask#9979 ) Irina Truong
Allow p2p shuffle kwarg for DataFrame merges ( dask#9900 ) Florian Jetter
Change split_row_groups default to “infer” ( dask#9637 ) Richard (Rick) Zamora
Add option for converting string data to use pyarrow strings ( dask#9926 ) James Bourbeau
Add support for multi-column sort_values ( dask#8263 ) Charles Blackmon-Luca
Generator based random-number generation indask.array ( dask#9038 ) Eray Aslan
Support numeric_only for simple groupby aggregations for pandas 2.0 compatibility ( dask#9889 ) Irina Truong
Fix profilers plot not being aligned to context manager enter time ( dask#9739 ) David Hoese
Relax dask.dataframe assert_eq type checks ( dask#9989 ) Matthew Rocklin
Restore describe compatibility for pandas 2.0 ( dask#9982 ) James Bourbeau
Improving deploying Dask docs ( dask#9912 ) Sarah Charlotte Johnson
More docs for DataFrame.partitions ( dask#9976 ) Tom Augspurger
Update docs with more information on default Delayed scheduler ( dask#9903 ) Guillaume Eynard-Bontemps
Deployment Considerations documentation ( dask#9933 ) Gabe Joseph
Temporarily rerun flaky tests ( dask#9983 ) James Bourbeau
Update parsing of FULL_RAPIDS_VER/FULL_UCX_PY_VER ( dask#9990 ) Charles Blackmon-Luca
Increase minimum supported versions to pandas=1.3 and numpy=1.21 ( dask#9950 ) James Bourbeau
Fix std to work with numeric_only for pandas 2.0 ( dask#9960 ) Irina Truong
Temporarily xfail test_roundtrip_partitioned_pyarrow_dataset ( dask#9977 ) James Bourbeau
Fix copy on write failure in test_idxmaxmin ( dask#9944 ) Patrick Hoefler
Bump pre-commit versions ( dask#9955 ) crusaderky
Fix test_groupby_unaligned_index for pandas 2.0 ( dask#9963 ) Irina Truong
Un- xfail test_set_index_overlap_2 for pandas 2.0 ( dask#9959 ) James Bourbeau
Fix test_merge_by_index_patterns for pandas 2.0 ( dask#9930 ) Irina Truong
Bump jacobtomlinson/gha-find-replace from 2 to 3 ( dask#9953 ) James Bourbeau
Fix test_rolling_agg_aggregate for pandas 2.0 compatibility ( dask#9948 ) Irina Truong
Bump black to 23.1.0 ( dask#9956 ) crusaderky
Run GPU tests on python 3.8 & 3.10 ( dask#9940 ) Charles Blackmon-Luca
Fix test_to_timestamp for pandas 2.0 ( dask#9932 ) Irina Truong
Fix an error with groupby value_counts for pandas 2.0 compatibility ( dask#9928 ) Irina Truong
Config converter: replace all dashes with underscores ( dask#9945 ) Jacob Tomlinson
CI: use nightly wheel to install pyarrow in upstream test build ( dask#9873 ) Joris Van den Bossche
Released on February 24, 2023
P2P for array rechunking (7534) `Hendrik Makait`_
P2P HashJoin (7514) `Florian Jetter`_
Unpickle Events, Variables, Queues and Semaphore safely without Client context (7579) `Florian Jetter`_
Allow pickle to fall back to dask_serialize (7567) `Florian Jetter`_
make ConnectionPool.remove cancel connection attempts (7547) `Thomas Grainger`_
Meter how long each task prefix stays in each state (7560) `crusaderky`_
Avoid parsing sys.argv when starting jupyter server (7573) `Brett Naul`_
str/bytes compatibility for PyNVML device name (7563) `James Bourbeau`_
metrics.monotonic() is not monotonic on Windows (7558) `crusaderky`_
Fix for bytes/str discrepancy after PyNVML update (7544) `Peter Andreas Entschev`_
Raise when attempting P2P with active fuse optimization (7585) `Hendrik Makait`_
Fix test_shuffling (7581) `Hendrik Makait`_
P2P: raise RuntimeError if pyarrow version is not sufficient (7578) `Florian Jetter`_
Check for dtype support in p2p (7425) `Hendrik Makait`_
Update parsing of FULL_RAPIDS_VER/FULL_UCX_PY_VER (7568) `Charles Blackmon-Luca`_
move retry from get_data_from_worker to gather_from_workers (7546) `Thomas Grainger`_
Increase numpy and pandas version pins for nightlies (7562) `James Bourbeau`_
Set validate=True in all tests (7557) `crusaderky`_
Remove dead code from _get_task_finished_msg (7561) `crusaderky`_
Mark tests that take >2s as slow (7556) `crusaderky`_
Fix test_scatter_no_workers on slow CI (7559) `crusaderky`_
Unskip test_delete_some_results (7508) `Hendrik Makait`_
scatter() should not sidestep the worker transition machinery (7545) `crusaderky`_
pre-commit bump (7541) `crusaderky`_
Better assertions in Worker.validate_state() (7549) `crusaderky`_
Bump jacobtomlinson/gha-find-replace from 2 to 3 (7540) `James Bourbeau`_
Bump black to 23.1.0 (7542) `crusaderky`_
Run GPU tests on python 3.8 & 3.10 (7537) `Charles Blackmon-Luca`_
- Update numeric_only default in quantile for pandas 2.0 ( dask#9854 ) Irina Truong
Released on February 10, 2023
Update numeric_only default in quantile for pandas 2.0 ( dask#9854 ) Irina Truong
Make repartition a no-op when divisions match ( dask#9924 ) James Bourbeau
Update datetime_is_numeric behavior in describe for pandas 2.0 ( dask#9868 ) Irina Truong
Update value_counts to return correct name in pandas 2.0 ( dask#9919 ) Irina Truong
Support new axis=None behavior in pandas 2.0 for certain reductions ( dask#9867 ) James Bourbeau
Filter out all-nan RuntimeWarning at the chunk level for nanmin and nanmax ( dask#9916 ) Julia Signell
Fix numeric meta_nonempty index creation for pandas 2.0 ( dask#9908 ) James Bourbeau
Fix DataFrame.info() tests for pandas 2.0 ( dask#9909 ) James Bourbeau
Fix GroupBy.value_counts handling for multiple groupby columns ( dask#9905 ) Charles Blackmon-Luca
Fix some outdated information/typos in development guide ( dask#9893 ) Patrick Hoefler
Add note about keep=False in drop_duplicates docstring ( dask#9887 ) Jayesh Manani
Add meta details to dask Array ( dask#9886 ) Jayesh Manani
Clarify task stream showing more rows than threads ( dask#9906 ) Gabe Joseph
Fix test_numeric_column_names for pandas 2.0 ( dask#9937 ) Irina Truong
Fix dask/dataframe/tests/test_utils_dataframe.py tests for pandas 2.0 ( dask#9788 ) James Bourbeau
Replace index.is_numeric with is_any_real_numeric_dtype for pandas 2.0 compatibility ( dask#9918 ) Irina Truong
Avoid pd.core import in dask utils ( dask#9907 ) Matthew Roeschke
Use label for upstream build on pull requests ( dask#9910 ) James Bourbeau
Broaden exception catching for sqlalchemy.exc.RemovedIn20Warning ( dask#9904 ) James Bourbeau
Temporarily restrict sqlalchemy < 2 in CI ( dask#9897 ) James Bourbeau
Update isort version to 5.12.0 ( dask#9895 ) Lawrence Mitchell
Remove unused skiprows variable in read_csv ( dask#9892 ) Patrick Hoefler
Released on February 10, 2023
Rate limit the worker memory logs (7529) `Florian Jetter`_
Move P2P barrier logic to scheduler extension (7519) `Hendrik Makait`_
Use PEP 673 Self type (7530) `Thomas Grainger`_
Tentatively fix test_pause_while_spilling (7517) `crusaderky`_
Annotate asyncio_tcp.py (7522) `crusaderky`_
Use dask git tip for mypy (7516) `crusaderky`_
Upgrade to mypy v1 (7525) `Thomas Grainger`_
Clean up calls to captured_logger (7521) `crusaderky`_
Update isort version to 5.12.0 (7513) `Lawrence Mitchell`_
- Add to_backend method to Array and _Frame ( dask#9758 ) Richard (Rick) Zamora
Released on January 27, 2023
Add to_backend method to Array and _Frame ( dask#9758 ) Richard (Rick) Zamora
Small fix for timestamp index divisions in pandas 2.0 ( dask#9872 ) Irina Truong
Add numeric_only to DataFrame.cov and DataFrame.corr ( dask#9787 ) James Bourbeau
Fixes related to group_keys default change in pandas 2.0 ( dask#9855 ) Irina Truong
infer_datetime_format compatibility for pandas 2.0 ( dask#9783 ) James Bourbeau
Fix serialization bug in BroadcastJoinLayer ( dask#9871 ) Richard (Rick) Zamora
Satisfy broadcast argument in DataFrame.merge ( dask#9852 ) Richard (Rick) Zamora
Fix pyarrow parquet columns statistics computation ( dask#9772 ) aywandji
Fix “duplicate explicit target name” docs warning ( dask#9863 ) Chiara Marmo
Fix code formatting issue in “Defining a new collection backend” docs ( dask#9864 ) Chiara Marmo
Update dashboard documentation for memory plot ( dask#9768 ) Jayesh Manani
Add docs section about no-worker tasks ( dask#9839 ) Florian Jetter
Additional updates for detecting a distributed scheduler ( dask#9890 ) James Bourbeau
Update gpuCI RAPIDS_VER to 23.04 ( dask#9876 )
Reverse precedence between collection and distributed default ( dask#9869 ) Florian Jetter
Update xarray-contrib/issue-from-pytest-log to version 1.2.6 ( dask#9865 ) James Bourbeau
Dont require dask config shuffle default ( dask#9826 ) Florian Jetter
Un- xfail datetime64 Parquet roundtripping tests for new fastparquet ( dask#9811 ) James Bourbeau
Add option to manually run upstream CI build ( dask#9853 ) James Bourbeau
Use custom timeout in CI builds ( dask#9844 ) James Bourbeau
Remove kwargs from make_blockwise_graph ( dask#9838 ) Florian Jetter
Ignore warnings on persist call in test_setitem_extended_API_2d_mask ( dask#9843 ) Charles Blackmon-Luca
Fix running S3 tests locally ( dask#9833 ) James Bourbeau
Released on January 27, 2023
P2P shuffle deduplicates data and can be run several times (7486) `Hendrik Makait`_
Reverse order of get_logs() and get_worker_logs() (7475) `Nicholas R. Knezek`_
Add prometheus metric for time and memory used per task prefix (7406) `Thomas Grainger`_
Additive worker counts in Prometheus (7468) `crusaderky`_
Add help tool for taskstream (7478) `Florian Jetter`_
Do not allow for a worker to reject a drop replica request (7490) `Hendrik Makait`_
Fix un/packing for namedtuples with custom constructors (7465) `antonymayi`_
Remove timeout= from docstring example for worker_client (7497) `Florian Jetter`_
Ignore get_default_shuffle_algorithm linting issue (7506) `Florian Jetter`_
Remove set_config when using default client (7482) `Florian Jetter`_
Update gpuCI RAPIDS_VER to 23.04 (7501)
Fix test_balance_expensive_tasks and improve helper functions in test_steal.py (7253) `Hendrik Makait`_
Sign every compute task with run ID to correlate response (7463) `Hendrik Makait`_
- Use distributed default clients even if no config is set ( dask#9808 ) Florian Jetter
Released on January 13, 2023
Use distributed default clients even if no config is set ( dask#9808 ) Florian Jetter
Implement ma.where and ma.nonzero ( dask#9760 ) Erik Holmgren
Update zarr store creation functions ( dask#9790 ) Ryan Abernathey
iteritems compatibility for pandas 2.0 ( dask#9785 ) James Bourbeau
Accurate sizeof for pandas string[python] dtype ( dask#9781 ) crusaderky
Deflate sizeof() of duplicate references to pandas object types ( dask#9776 ) crusaderky
GroupBy.getitem compatibility for pandas 2.0 ( dask#9779 ) James Bourbeau
append compatibility for pandas 2.0 ( dask#9750 ) James Bourbeau
get_dummies compatibility for pandas 2.0 ( dask#9752 ) James Bourbeau
is_monotonic compatibility for pandas 2.0 ( dask#9751 ) James Bourbeau
numpy=1.24 compatability ( dask#9777 ) James Bourbeau
Remove duplicated encoding kwarg in docstring for to_json ( dask#9796 ) Sultan Orazbayev
Mention SubprocessCluster in LocalCluster documentation ( dask#9784 ) Hendrik Makait
Move Prometheus docs to dask/distributed ( dask#9761 ) crusaderky
Temporarily ignore RuntimeWarning in test_setitem_extended_API_2d_mask ( dask#9828 ) James Bourbeau
Fix flaky test_threaded.py::test_interrupt ( dask#9827 ) Hendrik Makait
Update xarray-contrib/issue-from-pytest-log in upstream report ( dask#9822 ) James Bourbeau
pip install dask on gpuCI builds ( dask#9816 ) Charles Blackmon-Luca
Bump actions/checkout from 3.2.0 to 3.3.0 ( dask#9815 )
Resolve sqlalchemy import failures in mindeps testing ( dask#9809 ) Charles Blackmon-Luca
Ignore sqlalchemy.exc.RemovedIn20Warning ( dask#9801 ) Thomas Grainger
xfail datetime64 Parquet roundtripping tests for pandas 2.0 ( dask#9786 ) James Bourbeau
Remove sqlachemy 1.3 compatibility ( dask#9695 ) McToel
Reduce size of expected DoK sparse matrix ( dask#9775 ) Elliott Sales de Andrade
Remove executable flag from dask/dataframe/io/orc/utils.py ( dask#9774 ) Elliott Sales de Andrade
Released on January 13, 2023
Add local SubprocessCluster that runs workers in separate processes (7431) `Hendrik Makait`_
Ensure client session is quiet after cluster.close() or client.shutdown() (7429) `James Bourbeau`_
Set lifetime-stagger default value to None (7445) `bstadlbauer`_
Memory thresholds should never be exactly 0.0 (7458) `Stuart Berg`_
Remove the Incorrect-Sizeof-Warning (7450) `Mads R. B. Kristensen`_
Log exceptions in P2P shuffle tasks (7442) `Hendrik Makait`_
Add support for packing namedtuple and add test for future resolution in submit (7292) `Andrew`_
Avoid deep copy on lz4 decompression (7437) `crusaderky`_
Avoid deep copy of numpy buffers on unspill (7435) `crusaderky`_
Don't error when clicking on empty task stream plot (7432) `James Bourbeau`_
Do not count spilled memory when comparing vs. process memory (7430) `crusaderky`_
Stop Client periodic callbacks during shutdown() (7428) `James Bourbeau`_
Add dask spec CLI (7427) `Matthew Rocklin`_
Create new zstd (de)compressor for each compression call (7404) `Dylan Wragge`_
Rename managed_in_memory etc. to match GUI (7418) `crusaderky`_
Warn users when sizeof() returns inflated output (7419) `crusaderky`_
Ensure dicts are properly recognized as msgpack serializable (7473) `Florian Jetter`_
Reset state of ShuffleSchedulerExtension on restart (7446) `Hendrik Makait`_
Reject non-string column names in P2P shuffle (7447) `Hendrik Makait`_
Avoid int32 in dashboard (7443) `Matthew Rocklin`_
Fix P2PShuffle serialization for categorical data (7410) `Hendrik Makait`_
WorkerPorcess blocks on kill if still starting (7424) `Matthew Rocklin`_
Move Prometheus docs from dask/dask (7405) `crusaderky`_
Various cleanups in semaphore (5885) `Florian Jetter`_
test_rlimit fails on MacOSX (7457) `crusaderky`_
Bump actions/checkout from 3.2.0 to 3.3.0 (7464)
Remove conditional imports of psutil (7462) `crusaderky`_
Drop support for zict < 2.1.0 (7456) `crusaderky`_
Fix flaky test_digests (7454) `crusaderky`_
Add minimum dependency testing to CI (7285) `Charles Blackmon-Luca`_
Avoid overflow in statitics.mean (7426) `Matthew Rocklin`_
Ignore numpy bool8 deprecation (7423) `Matthew Rocklin`_
Add missing skips for pyarrow (7416) `Elliott Sales de Andrade`_
Be more permissive about expected ciphers in tests (7417) `Elliott Sales de Andrade`_
Revert "TST: Fetch executables from build root (2551)" (7415) `Elliott Sales de Andrade`_
- Avoid np.bool8 deprecation warning ( dask#9737 ) James Bourbeau
Released on December 16, 2022
Support dtype_backend="pandas|pyarrow" configuration ( dask#9719 ) James Bourbeau
Support cupy.ndarray to cudf.DataFrame dispatching in dask.dataframe ( dask#9579 ) Richard (Rick) Zamora
Make filesystem-backend configurable in read_parquet ( dask#9699 ) Richard (Rick) Zamora
Serialize all pyarrow extension arrays efficiently ( dask#9740 ) James Bourbeau
Fix bug when repartitioning with tz -aware datetime index ( dask#9741 ) James Bourbeau
Partial functions in aggs may have arguments ( dask#9724 ) Irina Truong
Add support for simple operation with pyarrow -backed extension dtypes ( dask#9717 ) James Bourbeau
Rename columns correctly in case of SeriesGroupby ( dask#9716 ) Lawrence Mitchell
Fix url link typo in collection backend doc ( dask#9748 ) Shawn
Update Prometheus docs ( dask#9696 ) Hendrik Makait
Add zarr to Python 3.11 CI environment ( dask#9771 ) James Bourbeau
Add support for Python 3.11 ( dask#9708 ) Thomas Grainger
Bump actions/checkout from 3.1.0 to 3.2.0 ( dask#9753 )
Avoid np.bool8 deprecation warning ( dask#9737 ) James Bourbeau
Make sure dev packages aren’t overwritten in upstream CI build ( dask#9731 ) James Bourbeau
Avoid adding data.h5 and mydask.html files during tests ( dask#9726 ) Thomas Grainger
Released on December 16, 2022
SpillBuffer metrics (7368) `crusaderky`_
Prometheus: measure how much spilling blocks the event loop (7370) `crusaderky`_
Add transfer_outgoing_bytes_total metric (7388) `Gabe Joseph`_
Fail P2PShuffle gracefully upon worker failure (7326) `Hendrik Makait`_
Select queued tasks in stimuli, not transitions (7402) `Gabe Joseph`_
Check ContextVar in default_client (7369) `Matthew Rocklin`_
Fix sending event messages to non-subscribers (7014) `Laurence Watts`_
Set sizing mode on Tabs to avoid layout collapse (7365) `Mateusz Paprocki`_
Restructure P2PShuffle extensions (7390) `Hendrik Makait`_
Add Python 3.11 classifier (7408) `James Bourbeau`_
Add support for Python 3.11 (7249) `Thomas Grainger`_
Add test for using annotations with client.submit and client.map (7399) `James Bourbeau`_
Bump actions/checkout from 3.1.0 to 3.2.0 (7393)
Remove superfluous ShuffleSchedulerExtension.barriers (7389) `Hendrik Makait`_
Remove ignore annotation-unchecked (7379) `crusaderky`_
Remove tornado max version from nightly recipe (7376) `Charles Blackmon-Luca`_
Remove the experimental feature warning for Semaphore (7373) `Florian Jetter`_
- Remove statistics-based set_index logic from read_parquet ( dask#9661 ) Richard (Rick) Zamora
Released on December 2, 2022
Remove statistics-based set_index logic from read_parquet ( dask#9661 ) Richard (Rick) Zamora
Add support for use_nullable_dtypes to dd.read_parquet ( dask#9617 ) Ian Rose
Fix map_overlap in order to accept pandas arguments ( dask#9571 ) Fabien Aulaire
Fix pandas 1.5+ FutureWarning in .str.split(..., expand=True) ( dask#9704 ) Jacob Hayes
Enable column projection for groupby slicing ( dask#9667 ) Richard (Rick) Zamora
Support duplicate column cum-functions ( dask#9685 ) Ben
Improve error message for failed backend dispatch call ( dask#9677 ) Richard (Rick) Zamora
Revise meta creation in arrow parquet engine ( dask#9672 ) Richard (Rick) Zamora
Fix da.fft.fft for array-like inputs ( dask#9688 ) James Bourbeau
Fix groupby -aggregation when grouping on an index by name ( dask#9646 ) Richard (Rick) Zamora
Avoid PytestReturnNotNoneWarning in test_inheriting_class ( dask#9707 ) Thomas Grainger
Fix flaky test_dataframe_aggregations_multilevel ( dask#9701 ) Richard (Rick) Zamora
Bump mypy version ( dask#9697 ) crusaderky
Disable dashboard in test_map_partitions_df_input ( dask#9687 ) James Bourbeau
Use latest xarray-contrib/issue-from-pytest-log in upstream build ( dask#9682 ) James Bourbeau
xfail ttest_1samp for upstream scipy ( dask#9670 ) James Bourbeau
Update gpuCI RAPIDS_VER to 23.02 ( dask#9678 )
Released on December 2, 2022
Expose event loop health metrics in Prometheus (7360) `Hendrik Makait`_
Allow log propagation by default (5669) `Florian Jetter`_
Clean up of unpack_remotedata() (7322) `Mads R. B. Kristensen`_
Upgrade to tornado 6.2 (7286) `Thomas Grainger`_
Introduce Server level comm counters (7332) `Florian Jetter`_
Prometheus debug log (7302) `Florian Jetter`_
Catch BaseException s from user tasks (5997) `Gabe Joseph`_
Impossible use case of erred deps in transition to waiting (7354) `crusaderky`_
Fix a deadlock when queued tasks are resubmitted quickly in succession (7348) `Florian Jetter`_
Editorial changes to Prometheus documentation (7350) `Hendrik Makait`_
Fetch all artifacts (7355) `Enrico Minack`_
Delay fsspec and urllib3 import time (6659) `Florian Jetter`_
Bump mypy (7349) `crusaderky`_
Bump mypy and remove win specific run (7344) `Florian Jetter`_
Finish overhaul of SchedulerState annotations (7333) `crusaderky`_
Fix flaky test_pause_while_spilling (7334) `Gabe Joseph`_
Update gpuCI RAPIDS_VER to 23.02 (7337)
- Restrict bokeh=3 support ( dask#9673 ) Gabe Joseph
Released on November 18, 2022
Restrict bokeh=3 support ( dask#9673 ) Gabe Joseph
Updates for fastparquet evolution ( dask#9650 ) Martin Durant
Update ga-yaml-parser step in gpuCI updating workflow ( dask#9675 ) Charles Blackmon-Luca
Revert importlib.metadata workaround ( dask#9658 ) James Bourbeau
Fix mindeps-distributed CI build to handle numpy / pandas not being installed ( dask#9668 ) James Bourbeau
Released on November 18, 2022
Restrict bokeh=3 support (7329) `Gabe Joseph`_
Respect death timeout when waiting for scheduler file (7296) `Florian Jetter`_
Always raise exception if P2PShuffle s send fails (7317) `Hendrik Makait`_
Fix typo in client.run() docstring (7315) `Richard Pelgrim`_
Note queuing default change in changelog (7314) `Gabe Joseph`_
Update ga-yaml-parser step in gpuCI updating workflow (7335) `Charles Blackmon-Luca`_
Remove exception handling from transitions (7316) `crusaderky`_
Turn private functions into private SchedulerState methods (7260) `Hendrik Makait`_
Bump toolz minimum version to 0.10.0 (7309) `Sam Grayson`_
- Generalize from_dict implementation to allow usage from other backends ( dask#9628 ) GALI PREM SAGAR
Released on November 15, 2022
Generalize from_dict implementation to allow usage from other backends ( dask#9628 ) GALI PREM SAGAR
Avoid pandas constructors in dask.dataframe.core ( dask#9570 ) Richard (Rick) Zamora
Fix sort_values with Timestamp data ( dask#9642 ) James Bourbeau
Generalize array checking and remove pd.Index call in _get_partitions ( dask#9634 ) Benjamin Zaitlen
Fix read_csv behavior for header=0 and names ( dask#9614 ) Richard (Rick) Zamora
Update dashboard docs for queuing ( dask#9660 ) Gabe Joseph
Remove import dask as d from docstrings ( dask#9644 ) Matthew Rocklin
Fix link to partitions docs in read_parquet docstring ( dask#9636 ) qheuristics
Add API doc links to array/bag/dataframe sections ( dask#9630 ) Matthew Rocklin
Use conda-incubator/setup-miniconda@v2.2.0 ( dask#9662 ) John A Kirkham
Allow bokeh=3 ( dask#9659 ) James Bourbeau
Run upstream build with Python 3.10 ( dask#9655 ) James Bourbeau
Pin pyyaml version in mindeps testing ( dask#9640 ) Charles Blackmon-Luca
Add pre-commit to catch breakpoint() ( dask#9638 ) James Bourbeau
Bump xarray-contrib/issue-from-pytest-log from 1.1 to 1.2 ( dask#9635 )
Remove blosc references ( dask#9625 ) Naty Clementi
Upgrade mypy and drop unused comments ( dask#9616 ) Hendrik Makait
Harden test_repartition_npartitions ( dask#9585 ) Richard (Rick) Zamora
Released on November 15, 2022
Note
This release changes the default scheduling mode to use queuing. This will significantly reduce cluster memory use in most cases, and generally improve stability and performance. Learn more here and please provide any feedback on this discussion.
In rare cases, this could make some workloads slower. See the documentation for more information, and how to switch back to the old mode.
Add ForwardOutput worker plugin to forward stdout and stderr to client. (7297) `Hendrik Makait`_
Duration counters on prefix level (7288) `Florian Jetter`_
Include button for launching JupyterLab layout in repr (7218) `Ian Rose`_
Support MIG parsing during CUDA context creation in UCX initialization (6720) `Peter Andreas Entschev`_
Handle /metrics endpoint without prometheus-client installed (7234) `Hendrik Makait`_
Add support for unpacking namedtuples in remote data (7282) `Andrew`_
Enable queuing by default (7279) `Florian Jetter`_
Fix exists->``exist`` typo in scheduler error messages (7281) `Matthew Plough`_
If there's an exception in the Client async context manager body then close fast (6920) `Thomas Grainger`_
Copyediting typos + codespell pre-commit hook for docs (7294) `Matthew Plough`_
Queuing docs (7203) `Gabe Joseph`_
Ensure category is optional when logging "warn" events (7169) `James Bourbeau`_
Edge and impossible transitions to memory (7205) `crusaderky`_
Use conda-incubator/setup-miniconda@v2.2.0 (7310) `jakirkham`_
Allow bokeh=3 (5648) `James Bourbeau`_
Fix typos in P2P shuffle code (7304) `Hendrik Makait`_
Reenable test_bad_disk (7300) `Florian Jetter`_
Reduce max-runs in test reports (7299) `Florian Jetter`_
Revert idle classification when worker-saturation is set (7278) `Florian Jetter`_
Fix flaky deadline_expiration (7287) `Florian Jetter`_
Rewrite of P2P control flow (7268) `Florian Jetter`_
Add codecov token (7277) `Florian Jetter`_
Bump minimum bokeh version to 2.4.2 (7271) `James Bourbeau`_
Remove deprecated code calls to IOLoop.make_current() (7240) `Thomas Grainger`_
Improved test for balancing expensive tasks (7272) `Hendrik Makait`_
Refactor semaphore._Watch into general-purpose Deadline utility (7238) `Hendrik Makait`_
Coverage report fixing (7270) `Tom Hu`_
Require Click 7.0+ (7226) `jakirkham`_
Drop tests (7269) `Hendrik Makait`_
Replace test_(do_not_)steal_communication_heavy_tasks tests with more robust versions (7243) `Hendrik Makait`_
xfail test_bad_disk (7265) `crusaderky`_
Move transition_log from Scheduler to SchedulerState (7254) `crusaderky`_
Remove Scheduler.log (7258) `crusaderky`_
Use latest pickle (5826) `jakirkham`_
Polish parsing of worker-saturation from config (7255) `crusaderky`_
Avoid expensive occupancy calculation when unused (7257) `Gabe Joseph`_
Un-skip test_nested_compute (7247) `Gabe Joseph`_
Review test_do_not_steal_communication_heavy_tasks (7250) `crusaderky`_
Fix test_stress_creation_and_deletion (7215) `crusaderky`_
Raise exceptions in Server.handle_stream instead of swallowing/logging (7162) `Hendrik Makait`_
Upgrade to mypy v0.982 (7241) `Thomas Grainger`_
Fix _update_scheduler_info hanging failed tests (7225) `Gabe Joseph`_
Bump xarray-contrib/ci-trigger from 1.1 to 1.2 (7232)
This was a hotfix and has no changes in this repository. The necessary fix was in dask/distributed, but we decided to bump this version number for con
Released on October 31, 2022
This was a hotfix and has no changes in this repository. The necessary fix was in dask/distributed, but we decided to bump this version number for consistency.
Released on October 31, 2022
Reverted a bug where Bokeh was accidentally made non-optional (7230) `Oliver Holworthy`_
Schedule a queued task when a task secedes (7224) `Gabe Joseph`_
This was a hotfix release
- Enable named aggregation syntax ( dask#9563 ) ChrisJar
Released on October 28, 2022
Enable named aggregation syntax ( dask#9563 ) ChrisJar
Add extension dtype support to set_index ( dask#9566 ) James Bourbeau
Redesigning the array HTML repr for clarity ( dask#9519 ) Shingo OKAWA
Fix merge with emtpy left DataFrame ( dask#9578 ) Ian Rose
Add note about limiting thread oversubscription by default ( dask#9592 ) James Bourbeau
Use sphinx-click for dask CLI ( dask#9589 ) James Bourbeau
Fix Semaphore API docs ( dask#9584 ) James Bourbeau
Render meta description in map_overlap docstring ( dask#9568 ) James Bourbeau
Require Click 7.0+ in Dask ( dask#9595 ) John A Kirkham
Temporarily restrict bokeh<3 ( dask#9607 ) James Bourbeau
Resolve importlib -related failures in upstream CI ( dask#9604 ) Charles Blackmon-Luca
Improve upstream CI report ( dask#9603 ) James Bourbeau
Fix upstream CI report ( dask#9602 ) James Bourbeau
Remove setuptools host dep, add CLI entrypoint ( dask#9600 ) Charles Blackmon-Luca
More Backend dispatch class type annotations ( dask#9573 ) Ian Rose
Released on October 28, 2022
Add Client.restart_workers method (7154) `James Bourbeau`_
Implement PackageInstall plugin for pip and conda (7126) `Hendrik Makait`_
Add prometheus collector for work-stealing (7206) `Hendrik Makait`_
Track reason of workers closing and restarting (7166) `Hendrik Makait`_
Show no-worker on task progress bar (7171) `Florian Jetter`_
Set OPENBLAS_NUM_THREADS by default (7177) `James Bourbeau`_
Optionally provide local directory to data constructor (7153) `Lawrence Mitchell`_
Introduce distributed.comm.ucx.environment config slot (7164) `Lawrence Mitchell`_
Log information about memory limit (7160) `Florian Jetter`_
Improve log messages on scheduler for restart (7150) `Florian Jetter`_
More comprehensive WorkerState task counters (7167) `crusaderky`_
Add note to changelog about new CLI (7178) `James Bourbeau`_
Update AMM docs (7158) `Benjamin Zaitlen`_
Add CondaInstall to plugins doc (7149) `James Bourbeau`_
Update minimum bokeh version message (7172) `James Bourbeau`_
Revamped implementations of remote print() and warn(), fixing #7095 (7129) `Max Bane`_
Temporarily restrict bokeh<3 (7219) `James Bourbeau`_
Make Scheduler.reschedule private (7216) `crusaderky`_
Fix decide_worker_rootish_queuing_disabled assert (7065) `Gabe Joseph`_
Fix flaky test_include_communication_in_occupancy (7212) `Gabe Joseph`_
Do not raise on leaked websockets (7199) `Florian Jetter`_
Update nightly recipes with CLI tests, dependency changes (7201) `Charles Blackmon-Luca`_
Make p2p shuffle submodules private (7186) `Florian Jetter`_
Backport tornado PeriodicCallback (7165) `Florian Jetter`_
Fix mypy failure on CI (7198) `Florian Jetter`_
User a layer for p2p shuffle (7180) `Florian Jetter`_
Type annotations for shuffle (7185) `Florian Jetter`_
Do not close worker on comm error in heartbeat (7163) `Hendrik Makait`_
Errors when setting TCP timeouts log as error (7161) `Florian Jetter`_
Remove incorrect advice from pre-commit config (7159) `crusaderky`_
Bump the-coding-turtle/ga-yaml-parser from 0.1.1 to 0.1.2 (7146)
Bump JamesIves/github-pages-deploy-action from 4.1.7 to 4.4.1 (7145)
Use functionalities network for codecov uploader (7148) `Florian Jetter`_
Use counter metric type where appropriate, incoming_count was reporting bytes (7125) `Nat Tabris`_
- Backend library dispatching for IO in Dask-Array and Dask-DataFrame ( dask#9475 ) Richard (Rick) Zamora
Released on October 14, 2022
Backend library dispatching for IO in Dask-Array and Dask-DataFrame ( dask#9475 ) Richard (Rick) Zamora
Add new CLI that is extensible ( dask#9283 ) Doug Davis
Groupby median ( dask#9516 ) Ian Rose
Fix array copy not being a no-op ( dask#9555 ) David Hoese
Add support for string timedelta in map_overlap ( dask#9559 ) Nicolas Grandemange
Shuffle-based groupby for single functions ( dask#9504 ) Ian Rose
Make datetime.datetime tokenize idempotantly ( dask#9532 ) Martin Durant
Support tokenizing datetime.time ( dask#9528 ) Tim Paine
Avoid race condition in lazy dispatch registration ( dask#9545 ) James Bourbeau
Do not allow setitem to np.nan for int dtype ( dask#9531 ) Doug Davis
Stable demo column projection ( dask#9538 ) Ian Rose
Ensure pickle -able binops in delayed ( dask#9540 ) Ian Rose
Fix project CSV columns when selecting ( dask#9534 ) Martin Durant
Update Parquet best practice ( dask#9537 ) Matthew Rocklin
Restrict tiledb-py version to avoid CI failures ( dask#9569 ) James Bourbeau
Bump actions/github-script from 3 to 6 ( dask#9564 )
Bump actions/stale from 4 to 6 ( dask#9551 )
Bump peter-evans/create-pull-request from 3 to 4 ( dask#9550 )
Bump actions/checkout from 2 to 3.1.0 ( dask#9552 )
Bump codecov/codecov-action from 1 to 3 ( dask#9549 )
Bump the-coding-turtle/ga-yaml-parser from 0.1.1 to 0.1.2 ( dask#9553 )
Move dependabot configuration file ( dask#9547 ) James Bourbeau
Add dependabot for GitHub actions ( dask#9542 ) James Bourbeau
Run mypy on Windows and Linux ( dask#9530 ) crusaderky
Update gpuCI RAPIDS_VER to 22.12 ( dask#9524 )
Released on October 14, 2022
Note
This release deprecates dask-scheduler, dask-worker, and dask-ssh CLIs in favor of dask scheduler, dask worker, and dask ssh, respectively. The old-style CLIs will continue to work for a time, but will be removed in a future release.
As part of this migration the --reconnect, --nprocs, --bokeh, --bokeh-port CLI options have also been removed for both the old- and new-style CLIs. These options had already previously been deprecated.
Use of new dask CLI (6735) `Doug Davis`_
Refactor occupancy (7075) `Hendrik Makait`_
Expose managed/unmanaged/spilled memory to Prometheus (7112) `crusaderky`_
Round up saturation-factor (7116) `Gabe Joseph`_
Return default on KeyError at any level in get_metadata (7109) `Hendrik Makait`_
Count task states per task prefix and expose to Prometheus (7088) `Nat Tabris`_
Add scheduler-sni option for dask workers (6290) `Burt Holzman`_
Improve exception catching in UCX communication (7132) `Peter Andreas Entschev`_
Improve robustness of PipInstall plugin (7111) `Hendrik Makait`_
Fix dependencies that should point to dask/dask (7138) `James Bourbeau`_
Hold on to z.sum() until test completes (7136) `Lawrence Mitchell`_
Bump peter-evans/create-pull-request from 3 to 4 (7120)
Update typing for system_monitor after python/typeshed#8829 (7131) `Lawrence Mitchell`_
Fix two potentially flaky queuing tests (7124) `Gabe Joseph`_
Bump EnricoMi/publish-unit-test-result-action from 1 to 2 (7121)
Bump actions/checkout from 2 to 3.1.0 (7119)
Revamp SystemMonitor (7097) `crusaderky`_
Bump actions/cache from 2 to 3 (7118)
Bump actions/upload-artifact from 2 to 3 (7117)
Move dependabot configuration file (7115) `James Bourbeau`_
Enable dependabot for GitHub Actions (7101) `Florian Jetter`_
Update coverage upload action (7100) `Florian Jetter`_
Adjust hardware benchmarks bokeh test (7096) `Florian Jetter`_
Multi-platform mypy checks (7094) `crusaderky`_
Update gpuCI RAPIDS_VER to 22.12 (7084)
- Remove factorization logic from array auto chunking ( dask#9507 ) James Bourbeau
Released on September 30, 2022
Remove factorization logic from array auto chunking ( dask#9507 ) James Bourbeau
Add docs on running Dask in a standalone Python script ( dask#9513 ) James Bourbeau
Clarify custom-graph multiprocessing example ( dask#9511 ) nouman
Groupby sort upstream compatibility ( dask#9486 ) Ian Rose
Released on September 30, 2022
Smarter stealing with dependencies (7024) `Hendrik Makait`_
Enable Active Memory Manager by default (7042) `crusaderky`_
Allow timeout strings in distributed.wait (7081) `James Bourbeau`_
Make AMM memory measure configurable (7062) `crusaderky`_
AMM support for actors (7072) `crusaderky`_
Expose message-bytes-limit in config (7074) `Hendrik Makait`_
Detect mismatching Python version in scheduler (7018) `Hendrik Makait`_
Improve KilledWorker message users see (7043) `James Bourbeau`_
Support for cgroups v2 and respect soft limits (7051) `Samantha Hughes`_
Catch BaseException on UCX read error (6996) `Peter Andreas Entschev`_
Fix transfer limiting in _select_keys_for_gather (7071) `Hendrik Makait`_
Parse worker-saturation if a string (7064) `Gabe Joseph`_
Nanny(config=...) parameter overlays global dask config (7069) `crusaderky`_
Ensure default clients don't propagate to subprocesses (7028) `Florian Jetter`_
Improve documentation of message-bytes-limit (7077) `Hendrik Makait`_
Minor tweaks to Sphinx documentation (7041) `crusaderky`_
Improve upload_file API documentation (7040) `Florian Jetter`_
test_serialize_numba: Workaround issue with np.empty_like in NP 1.23 (7089) `Graham Markall`_
Type platform constants for mypy (7091) `jakirkham`_
dask-worker-space (7054) `crusaderky`_
Remove failing test case (7087) `Hendrik Makait`_
test_default_client (7058) `crusaderky`_
Fix pre-commit fails with recent versions of mypy and pandas (7068) `crusaderky`_
Add factorization utility (7048) `James Bourbeau`_
- Add DataFrame and Series median methods ( dask#9483 ) James Bourbeau
Released on September 16, 2022
Add DataFrame and Series median methods ( dask#9483 ) James Bourbeau
Shuffle groupby default ( dask#9453 ) Ian Rose
Filter by list ( dask#9419 ) Greg Hayes
Added distributed.utils.key_split functionality to dask.utils.key_split ( dask#9464 ) Luke Conibear
Fix overlap so that set_index doesn’t drop rows ( dask#9423 ) Julia Signell
Fix assigning pandas Series to column when ddf.columns.min() raises ( dask#9485 ) Erik Welch
Fix metadata comparison stack_partitions ( dask#9481 ) James Bourbeau
Provide default for split_out ( dask#9493 ) Lawrence Mitchell
Allow split_out to be None , which then defaults to 1 in groupby().aggregate() ( dask#9491 ) Ian Rose
Fixing enforce_metadata documentation, not checking for dtypes ( dask#9474 ) Nicolas Grandemange
Fix it's –> its typo ( dask#9484 ) Nat Tabris
Workaround for parquet writing failure using some datetime series but not others ( dask#9500 ) Ian Rose
Filter out numeric_only warnings from pandas ( dask#9496 ) James Bourbeau
Avoid set_index(..., inplace=True) where not necessary ( dask#9472 ) James Bourbeau
Avoid passing groupby key list of length one ( dask#9495 ) James Bourbeau
Update test_groupby_dropna_cudf based on cudf support for group_keys ( dask#9482 ) James Bourbeau
Remove dd.from_bcolz ( dask#9479 ) James Bourbeau
Added flake8-bugbear to pre-commit hooks ( dask#9457 ) Luke Conibear
Bind loop variables in function definitions ( B023 ) ( dask#9461 ) Luke Conibear
Added assert for comparisons ( B015 ) ( dask#9459 ) Luke Conibear
Set top-level default shell in CI workflows ( dask#9469 ) James Bourbeau
Removed unused loop control variables ( B007 ) ( dask#9458 ) Luke Conibear
Replaced getattr calls for constant attributes ( B009 ) ( dask#9460 ) Luke Conibear
Pin libprotobuf to allow nightly pyarrow in the upstream CI build ( dask#9465 ) Joris Van den Bossche
Replaced mutable data structures for default arguments ( B006 ) ( dask#9462 ) Luke Conibear
Changed flake8 mirror and updated version ( dask#9456 ) Luke Conibear
Released on September 16, 2022
Add dashboard component for size of open data transfers (6982) `Hendrik Makait`_
Allow very fast keys and very expensive transfers as stealing candidates (7022) `Florian Jetter`_
No longer double count transfer cost in stealing (7036) `Hendrik Makait`_
Make test_wait_first_completed robust (7039) `Florian Jetter`_
Partial annotations for SchedulerState (7023) `crusaderky`_
Add more type annotations to stealing.py (7009) `Florian Jetter`_
Update codecov settings (7015) `Florian Jetter`_
Speed up test_balance (7008) `Florian Jetter`_
Fix test report after queuing job added (7012) `Gabe Joseph`_
Clean up env variables in Gihub Actions (7001) `crusaderky`_
Make test_steal_reschedule_reset_in_flight_occupancy non timing dependent (7010) `Florian Jetter`_
Replaced distributed.utils.key_split with dask.utils.key_split (7005) `Luke Conibear`_
Revert "Revert "Limit incoming data transfers by amount of data" (6994)" (:pr:7007`) `Florian Jetter`_
CI job running tests with queuing on (6989) `Gabe Joseph`_
Fix distributed/tests/test_client_executor.py::test_wait (6990) `Florian Jetter`_
- Enable automatic column projection for groupby aggregations ( dask#9442 ) Richard (Rick) Zamora
Released on September 2, 2022
Enable automatic column projection for groupby aggregations ( dask#9442 ) Richard (Rick) Zamora
Accept superclasses in NEP-13/17 dispatching ( dask#6710 ) Gabe Joseph
Rename by columns internally for cumulative operations on the same by columns ( dask#9430 ) Pavithra Eswaramoorthy
Fix get_group with categoricals ( dask#9436 ) Pavithra Eswaramoorthy
Fix caching-related MaterializedLayer.cull performance regression ( dask#9413 ) Richard (Rick) Zamora
Add maintainer documentation page ( dask#9309 ) James Bourbeau
Revert skipped fastparquet test ( dask#9439 ) Pavithra Eswaramoorthy
tmpfile does not end files with period on empty extension ( dask#9429 ) Hendrik Makait
Skip failing fastparquet test with latest release ( dask#9432 ) James Bourbeau
Released on September 2, 2022
Limit incoming data transfers by amount of data (6975) `Hendrik Makait`_
Expose transfer-related metrics in Worker.get_metrics and WorkerMetricCollector (6936) `Hendrik Makait`_
Withhold root tasks (no co assignment) (6614) `Gabe Joseph`_
Improve differentiation between incoming/outgoing connections and transfers (6933) `Hendrik Makait`_
Change memory bars color on spilling/paused status (6959) `crusaderky`_
Ensure restart clears taskgroups et al (6944) `Florian Jetter`_
Optimise scheduler.get_comm_cost set difference (6931) `Lawrence Mitchell`_
Expose setting multiple protocols and ports via the dask-scheduler CLI (6898) `Jacob Tomlinson`_
Make TextProgressBar clear the line when finished (5968) `Vincenzo Eduardo Padulano`_
Revert getaddrinfo fast path for Python 3.8 (6978) `Florian Jetter`_
cancelled/resumed->long-running transitions (6916) `crusaderky`_
Deprecate default value for Client.wait_for_workers (6942) `Florian Jetter`_
Document Scheduler and Worker state machine (6948) `crusaderky`_
Insert memory_limit parameter into LocalCluster docstring (6839) `Crislana Rafael`_
Revert "Limit incoming data transfers by amount of data" (6994) `Florian Jetter`_
Cache conda environment between CI test runs (6855) `Charles Blackmon-Luca`_
Revert "Fix co-assignment for binary operations" (6985) `Gabe Joseph`_
Cache test_report shelves in CI (6937) `Florian Jetter`_
Cleanup ipywidgets mocking (6918) `Thomas Grainger`_
Improve testing of {Scheduler|Worker}MetricCollector (6945) `Hendrik Makait`_
Clean up nanny WorkerProcess.kill (6972) `Gabe Joseph`_
Rewrite test_reconnect to use subprocess to kill scheduler reliably (6967) `Florian Jetter`_
Task state domain on the scheduler side (6929) `crusaderky`_
Remove @avoid_ci from test_steal (6872) `crusaderky`_
Use async with Worker in tests (6958) `crusaderky`_
Ignore spurious warnings in test_quiet_close_process (6955) `crusaderky`_
Fix tests on Windows (6954) `Hendrik Makait`_
Prevent duplicates in HeapSet.sorted() (6952) `crusaderky`_
Propagate worker address and improve _remove_from_processing behavior (6946) `Hendrik Makait`_
Add HeapSet._sorted internal flag (6949) `Gabe Joseph`_
Add HeapSet.peekn (6947) `Gabe Joseph`_
Fix pyright error when importing from distributed (6904) `Ian Liu Rodrigues`_
Always return ws.address from _remove_from_processing (6884) `Hendrik Makait`_
Use async with Client: in tests (6921) `Thomas Grainger`_
Ensure relative memory limits work as percentage of system memory (6923) `Florian Jetter`_
- Implement ma.*_like functions ( dask#9378 ) Ruth Comer
Released on August 19, 2022
Implement ma.*_like functions ( dask#9378 ) Ruth Comer
Fuse compatible annotations ( dask#9402 ) Ian Rose
Shuffle-based groupby aggregation for high-cardinality groups ( dask#9302 ) Richard (Rick) Zamora
Unpack namedtuple ( dask#9361 ) Hendrik Makait
Fix SeriesGroupBy cumulative functions with axis=1 ( dask#9377 ) Pavithra Eswaramoorthy
Sparse array reductions ( dask#9342 ) Ian Rose
Fix make_meta while using categorical column with index ( dask#9348 ) Pavithra Eswaramoorthy
Don’t allow incompatible keywords in DataFrame.dropna ( dask#9366 ) Naty Clementi
Make set_index handle entirely empty dataframes ( dask#8896 ) Julia Signell
Improve dataclass handling in unpack_collections ( dask#9345 ) Hendrik Makait
Fix bag sampling when there are some smaller partitions ( dask#9349 ) Ian Rose
Add support for empty partitions to da.min / da.max functions ( dask#9268 ) geraninam
Clarify that bind() etc. regenerate the keys ( dask#9385 ) crusaderky
Consolidate dashboard diagnostics documentation ( dask#9357 ) Sarah Charlotte Johnson
Remove outdated meta information Pavithra Eswaramoorthy
Use entry_points utility in sizeof ( dask#9390 ) James Bourbeau
Add entry_points compatibility utility ( dask#9388 ) Jacob Tomlinson
Upload environment file artifact for each CI build ( dask#9372 ) James Bourbeau
Remove werkzeug pin in CI ( dask#9371 ) James Bourbeau
Fix type annotations for dd.from_pandas and dd.from_delayed ( dask#9362 ) Jordan Yap
Released on August 19, 2022
Drop comparison of versions against all clients (6861) `Hendrik Makait`_
Log the worker name if set (6866) `Johannes Lange`_
Skip getaddrinfo thread if host is already resolved, using socket.AI_NUMERIC* (6847) `Thomas Grainger`_
Display unexpected state in Worker.execute validation (6856) `James Bourbeau`_
pre-spawn-environ (6841) `crusaderky`_
Dump has_what, missing_dep_flight (6830) `Gabe Joseph`_
cancelled / resumed -> rescheduled transition (6913) `crusaderky`_
Fix resource deallocation for resumed tasks (6914) `crusaderky`_
Only close scheduler in SpecCluster if it exists (6888) `Matthew Rocklin`_
Fix issue if exc.reason is None (6881) `Hendrik Makait`_
Always close BatchedSend write coroutines (6865) `Gabe Joseph`_
Harden preamble of Worker.execute against race conditions (6878) `crusaderky`_
Fix typo (6870) `Pieter Gijsbers`_
Use retries for the test report (6926) `Florian Jetter`_
Duplicated code: in_flight_tasks validation (6917) `crusaderky`_
ipywidgets 8 compatibility (6912) `James Bourbeau`_
Overhaul transitions for the resumed state (6699) `crusaderky`_
Don't upgrade to ipywidgets 8 (6910) `crusaderky`_
Clean up cluster process reaping (6840) `Gabe Joseph`_
Don't use bokeh Figure in tests (6721) `Bryan Van de Ven`_
Work around incompatibility of crick with setuptools 65 (6887) `crusaderky`_
Add max version constraint for dask-core in nightlies (6862) `Charles Blackmon-Luca`_
Replace port = random.randint( with port = d.utils.open_port (6883) `Thomas Grainger`_
Fix flaky test_wall_clock (6879) `crusaderky`_
Add descriptive error message to assert (6871) `Hendrik Makait`_
Increase timeout in test_quiet_process (6857) `Florian Jetter`_
Descriptive title for test report (6849) `Hendrik Makait`_
Add flake8-bugbear as plugin to pre-commit (6809) `Hendrik Makait`_
Remove redundant use of with clean(): (6852) `Thomas Grainger`_
Show actual Job URL on test report (6837) `Florian Jetter`_
Update pre-commit dependencies (6851) `Hendrik Makait`_
Call exit callback even if AsyncProcess is reaped elsewhere (6684) `Thomas Grainger`_
Avoid function calls in argument defaults (6812) `Hendrik Makait`_
Ignore warning for unclose SSHCluster in tests (6827) `Florian Jetter`_
- Ensure make_meta doesn’t hold ref to data ( dask#9354 ) Jim Crist-Harif
Released on August 5, 2022
Ensure make_meta doesn’t hold ref to data ( dask#9354 ) Jim Crist-Harif
Revise divisions logic in from_pandas ( dask#9221 ) Richard (Rick) Zamora
Warn if user sets index with existing index ( dask#9341 ) Julia Signell
Add keepdims keyword for da.average ( dask#9332 ) Ruth Comer
Change repr methods to avoid Layer materialization ( dask#9289 ) Richard (Rick) Zamora
Make sure order kwarg will not crash the astype method ( dask#9317 ) Genevieve Buckley
Fix bug for cumsum on cupy chunked dask arrays ( dask#9320 ) Genevieve Buckley
Match input and output structure in _sample_reduce ( dask#9272 ) Pavithra Eswaramoorthy
Include meta in array serialization ( dask#9240 ) Frédéric BRIOL
Fix Index.memory_usage ( dask#9290 ) James Bourbeau
Fix division calculation in dask.dataframe.io.from_dask_array ( dask#9282 ) Jordan Yap
Fow to use kwargs with custom task graphs ( dask#9322 ) Genevieve Buckley
Add note to da.from_array about how the order is not preserved ( dask#9346 ) Julia Signell
Add I/O info for async functions ( dask#9326 ) Logan Norman
Tidy up docs snippet for futures IO functions ( dask#9340 ) Julia Signell
Use consistent variable names for pandas df and Dask ddf in dataframe-groupby.rst ( dask#9304 ) ivojuroro
Switch js-yaml for yaml.js in config converter ( dask#9306 ) Jacob Tomlinson
Update da.linalg.solve for SciPy 1.9.0 compatibility ( dask#9350 ) Pavithra Eswaramoorthy
Update test_getitem_avoids_large_chunks_missing ( dask#9347 ) Pavithra Eswaramoorthy
Fix docs title formatting for “Extend sizeof ” Doug Davis
Import loop_in_thread fixture in tests ( dask#9337 ) James Bourbeau
Temporarily xfail test_solve_sym_pos ( dask#9336 ) Pavithra Eswaramoorthy
Fix small typo in 10 minutes to Dask page ( dask#9329 ) Shaghayegh
Temporarily pin werkzeug in CI to avoid test suite hanging ( dask#9325 ) James Bourbeau
Add tests for cupy.angle() ( dask#9312 ) Peter Andreas Entschev
Update gpuCI RAPIDS_VER to 22.10 ( dask#9314 )
Add pandas[test] to test extra ( dask#9110 ) Ben Beasley
Add bokeh and scipy to upstream CI build ( dask#9265 ) James Bourbeau
Released on August 5, 2022
Add Jupyter Server to Dask Scheduler (6737) `Matthew Rocklin`_
Human-readable formatting for disk I/O and renaming to diff net and disk (6835) `Hendrik Makait`_
Add Cluster.get_client() method (6745) `Julia Signell`_
Start bokeh app to activate bokeh's clean session callbacks (6728) `Martí Zamora`_
Ensure Nanny doesn't restart workers that fail to start, and joins subprocess (6427) `Gabe Joseph`_
Don't connect to cluster subprocesses at shutdown (6829) `Gabe Joseph`_
Fix restart wait for workers edge case (6823) `Gabe Joseph`_
Fix spilled size calculation in Slow (6789) `Hendrik Makait`_
Deprecate passing stopped loops to LoopRunner (and therefore Client/Cluster) (6680) `Thomas Grainger`_
Add text to top of API docs to make sure that users are exposed to LocalCluster early (6793) `Julia Signell`_
Change title for plugins documentation (6733) `Sarah Charlotte Johnson`_
Only set 5s connect timeout in gen_cluster tests (6822) `Gabe Joseph`_
Fix flaky test_worker_who_has_clears_after_failed_connection (6832) `Gabe Joseph`_
Add missing skips for pyarrow (6787) `Elliott Sales de Andrade`_
Miscellaneous flake8-bugbear issues (6814) `Hendrik Makait`_
Assert otherwise pointless comparisons (B015) (6811) `Hendrik Makait`_
Remove unused functions from utils_test.py (6807) `Hendrik Makait`_
Fix Jupyter security note (6818) `Jacob Tomlinson`_
Improve check_thread_leak output (6797) `Gabe Joseph`_
Use contextmanager to ensure clients are closed and do not leak (6817) `Hendrik Makait`_
Robust thread termination in test_watch and test_watch_requires_lock_to_run (6788) `Hendrik Makait`_
Avoid unused loop control variable or name them _ (6813) `Hendrik Makait`_
Replace assert False where an exception should always be thrown (6815) `Hendrik Makait`_
Avoid mutable argument defaults in tests (6810) `Hendrik Makait`_
Avoid mutable argument defaults outside of tests (6665) `Hendrik Makait`_
Update gpuCI RAPIDS_VER to 22.10 (6798)
Use same Python for dask worker tests (6786) `Elliott Sales de Andrade`_
- Return Dask array if all axes are squeezed ( dask#9250 ) Pavithra Eswaramoorthy
Released on July 22, 2022
Return Dask array if all axes are squeezed ( dask#9250 ) Pavithra Eswaramoorthy
Make cycle reported by toposort shorter ( dask#9068 ) Erik Welch
Unknown chunk slicing - raise informative error ( dask#9285 ) Naty Clementi
Fix bug in HighLevelGraph.cull ( dask#9267 ) Richard (Rick) Zamora
Sort categories ( dask#9264 ) Pavithra Eswaramoorthy
Use max (instead of sum ) for calculating warnsize ( dask#9235 ) Pavithra Eswaramoorthy
Fix bug when filtering on partitioned column with pyarrow ( dask#9252 ) Richard (Rick) Zamora
Updated repartition documentation to add note about partition_size ( dask#9288 ) Dylan Stewart
Don’t include docs in Array methods, just refer to module docs ( dask#9244 ) Julia Signell
Remove outdated reference to scheduler and worker dashboards ( dask#9278 ) Pavithra Eswaramoorthy
Fix a few typos ( dask#9270 ) Tim Gates
Adds an custom aggregate example using numpy methods ( dask#9260 ) geraninam
Add type annotations to dd.from_pandas and dd.from_delayed ( dask#9237 ) Michael Milton
Update calculate_divisions docstring ( dask#9275 ) Tom Augspurger
Update test_plot_multiple for upcoming bokeh release ( dask#9261 ) James Bourbeau
Add typing to common array properties ( dask#9255 ) Illviljan
Released on July 22, 2022
Dashboard for failed tasks (6595) `Ian Rose`_
Wait for workers to return in Client.restart (6714) `Gabe Joseph`_
Remove global mutable Cluster._cluster_info (6487) `Thomas Grainger`_
Fix: nvml no early init (6678) `Lawrence Mitchell`_
Fix bug when restarting client (6654) `Iain Dorrington`_
Failure to spill breaks available resources (6703) `crusaderky`_
Fix resource allocation for tasks with dependencies (6676) `Hendrik Makait`_
Revert "Set MALLOC_TRIM_THRESHOLD_ before interpreter start" (6777) `Gabe Joseph`_
Fix mypy lint in CI (6779) `jakirkham`_
Remove test_restart_fast_sync, test_fast_kill (6750) `Gabe Joseph`_
Fix flaky test_async_task_group_call_later_executes_delayed_task_in_background (6744) `Hendrik Makait`_
Drop redundant geninc (6740) `Hendrik Makait`_
Remove unused worker_coroutines (6739) `Gabe Joseph`_
Store ready and constrained tasks in heapsets (6711) `crusaderky`_
Improve tests for cancelled state (6717) `crusaderky`_
Future-proof Bokeh value import (6707) `Bryan Van de Ven`_
Revert temporary stress test (6712) `crusaderky`_
Validate constrained tasks (6698) `crusaderky`_
Minor quality-of-life tweaks to cancelled state (6701) `crusaderky`_
Pickle worker state machine exceptions (6702) `crusaderky`_
Partial matches for worker state machine instructions (6704) `crusaderky`_
Automatically mark all WorkerState tests (6706) `crusaderky`_
- Support pathlib.PurePath in normalize_token ( dask#9229 ) Angus Hollands
Released on July 8, 2022
Support pathlib.PurePath in normalize_token ( dask#9229 ) Angus Hollands
Add AttributeNotImplementedError for properties so IPython glob search works ( dask#9231 ) Erik Welch
map_overlap : multiple dataframe handling ( dask#9145 ) Fabien Aulaire
Read entrypoints in dask.sizeof ( dask#7688 ) Angus Hollands
Fix TypeError: 'Serialize' object is not subscriptable when writing parquet dataset with Client(processes=False) ( dask#9015 ) Lucas Miguel Ponce
Correct dtypes when concat with an empty dataframe ( dask#9193 ) Pavithra Eswaramoorthy
Highlight note about persist ( dask#9234 ) Pavithra Eswaramoorthy
Update release-procedure to include more detail and helpful commands ( dask#9215 ) Julia Signell
Better SEO for Futures and Dask vs. Spark pages ( dask#9217 ) Sarah Charlotte Johnson
Use math.prod instead of np.prod on lists, tuples, and iters ( dask#9232 ) crusaderky
Only import IPython if type checking ( dask#9230 ) Florian Jetter
Tougher mypy checks ( dask#9206 ) crusaderky
Released on July 8, 2022
Use a tempdir path by default instead of cwd for the worker scratch dir (6658) `Florian Jetter`_
Add WorkerState.all_running_tasks (6690) `Hendrik Makait`_
Scheduler.reschedule() works only by accident (6339) `crusaderky`_
Remove spurious UnpauseEvent at worker start (6652) `crusaderky`_
Log if closing an executor is not possible in thread (6644) `Florian Jetter`_
Cloudpickle register by value (6466) `Ian Rose`_
Adding replicas to a task in fetch now sends it to flight immediately (6594) `crusaderky`_
Fix dump output of parameter-less events (6695) `crusaderky`_
Set MALLOC_TRIM_THRESHOLD_ before interpreter start (6681) `crusaderky`_
Fix deadlocks around rescheduled and resumed states (6673) `crusaderky`_
has_arg returns True for keyword-only arguments (6648) `Lawrence Mitchell`_
Transitions caused by worker death use old 'worker-connect' stimulus_id (6657) `crusaderky`_
A key is forgotten while acquire-replicas is running (6638) `crusaderky`_
Revisit WorkerState.long_running set (6697) `crusaderky`_
WorkerState unit tests for resumed state (6688) `crusaderky`_
Bump version of pandas-stubs (6691) `crusaderky`_
Add dummy factory methods for ExecuteSuccessEvent and ExecuteFailureEvent (6687) `Hendrik Makait`_
Pin tornado<6.2 in nightly conda recipes (6675) `Peter Andreas Entschev`_
Refactor resource restriction handling in WorkerState (6672) `Hendrik Makait`_
test_signal and test_terminate occasionally return SIGKILL on MacOS (6671) `crusaderky`_
Use the loop fixture in even more tests (6674) `Thomas Grainger`_
Unconditionally import ssl (6670) `Thomas Grainger`_
Use the loop fixture in more tests (6642) `Thomas Grainger`_
Pin tornado to <6.2 (6668) `Florian Jetter`_
Handle AsyncTaskGroupClosedError (6664) `Hendrik Makait`_
Replace occurrences of large delay slowinc with locks (6656) `Florian Jetter`_
Merge extend-ignore and ignore values for flake8 (6660) `Hendrik Makait`_
Remove server close background task grace period (6633) `Thomas Grainger`_
Do not use tempfile in utils_test (6651) `Florian Jetter`_
close_worker cleanup (6650) `crusaderky`_
Rewrite test_cancelled_resumed_after_flight_with_dependencies using WorkerState (6645) `crusaderky`_
Log the actual duration to create a directory (6647) `Florian Jetter`_
pandas type stubs (6635) `crusaderky`_
Remove unused __started Event in Server (6615) `Florian Jetter`_
Use safe temp directory in gen_cluster (6628) `Florian Jetter`_
Print CI host info (6629) `crusaderky`_
Deduplicate data_needed (6587) `crusaderky`_
Remove EnsureCommunicatingAfterTransitions (6462) `crusaderky`_
Pickle WorkerState (6623) `crusaderky`_
Harden vs. TaskState collisions (6593) `crusaderky`_
Do not interact with the event loop when the cluster is garbage collected (6627) `Thomas Grainger`_
- Deprecate extra format_time utility ( dask#9184 ) James Bourbeau
Released on June 24, 2022
Dask in pyodide ( dask#9053 ) Ian Rose
Create dask.utils.show_versions ( dask#9144 ) Sultan Orazbayev
Better error message for unsupported numpy operations on dask.dataframe objects. ( dask#9201 ) Julia Signell
Add allow_rechunk kwarg to dask.array.overlap function ( dask#7776 ) Genevieve Buckley
Add minutes and hours to dask.utils.format_time ( dask#9116 ) Matthew Rocklin
More retries when writing parquet to remote filesystem ( dask#9175 ) Ian Rose
Timedelta deterministic hashing ( dask#9213 ) Fabien Aulaire
Enum deterministic hashing ( dask#9212 ) Fabien Aulaire
shuffle_group() : avoid converting to arrays ( dask#9157 ) Mads R. B. Kristensen
Deprecate extra format_time utility ( dask#9184 ) James Bourbeau
Better SEO for 10 Minutes to Dask ( dask#9182 ) Sarah Charlotte Johnson
Better SEO for Delayed and Best Practices ( dask#9194 ) Sarah Charlotte Johnson
Include known inconsistency in DataFrame str.split accessor docstring ( dask#9177 ) Richard Pelgrim
Add inconsistencies keyword to derived_from ( dask#9192 ) Richard Pelgrim
Add missing append in delayed best practices example ( dask#9202 ) Ben
Fix indentation in Best Practices ( dask#9196 ) Sarah Charlotte Johnson
Add link to Genevieve Buckley ’s blog on chunk sizes ( dask#9199 ) Pavithra Eswaramoorthy
Update to_csv docstring ( dask#9094 ) Sarah Charlotte Johnson
Update versioneer: change from using SafeConfigParser to ConfigParser ( dask#9205 ) Thomas A Caswell
Remove ipython hack in CI( dask#9200 ) crusaderky
Released on June 24, 2022
This release includes the Worker State Machine refactor. The expectation should be that the worker state is its own synchronous subclass. Pulling all the state out into its own class allows us to write targeted unit tests without invoking any concurrent or asynchronous code.
See 5736 for more information.
Make worker state machine methods private (6564) `crusaderky`_
Yank state machine out of Worker class (6566) `crusaderky`_
Track worker_state_machine.TaskState instances (6525) `Hendrik Makait`_
Trivial tweaks to the Worker State Machine (6586) `crusaderky`_
Replace loop.call_later and loop.add_callback with background tasks added to Server. (6603) `Thomas Grainger`_
Support for neater WorkerState tests (6609) `crusaderky`_
Limit TCP writes with Tornado to 2GB (6557) `hhuuggoo`_
Enable no_implicit_optional for scheduler (6622) `Thomas Grainger`_
Partial revert of compute-task message format (6626) `Florian Jetter`_
Restore log message about received signals in CLI (6618) `Florian Jetter`_
Handle empty memoryviews of bytearrays when (de)serializing (6576) `Benjamin Zaitlen`_
Ensure steal requests from same-IP but distinct workers are rejected (6585) `Florian Jetter`_
Fix tls_(min|max)_ version having no effect on openssl 1.1.0g or lower (6562) `Thomas Grainger`_
Fix idle_timeout and unxfail test (6563) `Matthew Rocklin`_
Fix crashing debug statement in _purge_state (6589) `crusaderky`_
Abort connections on CancelledError (6574) `Thomas Grainger`_
Fix Active Memory Manager ignores nbytes thresholds (6583) `crusaderky`_
Deprecate WorkerState accessors (6579) `crusaderky`_
Remove ipython hack (6599) `crusaderky`_
Mypy enforce --no-implicit-optional (6606) `crusaderky`_
Update versioneer: change from using SafeConfigParser to ConfigParser (6605) `Thomas A Caswell`_
Warn unreachable for scheduler.py (6611) `Florian Jetter`_
Refactor wait_for_state() (6581) `crusaderky`_
Hardcode wait_for_signals signal list (6619) `Thomas Grainger`_
Always pick an open port when running tests (6591) `Florian Jetter`_
Log popen stdout/err when subprocess times out (6567) `Gabe Joseph`_
Fix test_error_during_startup (6608) `Florian Jetter`_
Make test_idle_timeout_no_workers more robust (6602) `Florian Jetter`_
Mypy enforce --disallow-incomplete-defs (6601) `crusaderky`_
Do not log during signal handler (6590) `Florian Jetter`_
Don't initialize mp_context on import (6580) `Lawrence Mitchell`_
Test retire workers deadlock (6240) `Gabe Joseph`_
Rework some tests related to gather_dep (6472) `crusaderky`_
Minor cosmetic review of scheduler_story and worker_story (6442) `crusaderky`_
Force __future__.annotations with isort (6621) `Thomas Grainger`_
- Add feature to show names of layer dependencies in HLG JupyterLab repr ( dask#9081 ) Angelos Omirolis
Released on June 10, 2022
Add feature to show names of layer dependencies in HLG JupyterLab repr ( dask#9081 ) Angelos Omirolis
Add arrow schema extraction dispatch ( dask#9169 ) GALI PREM SAGAR
Add sort_results argument to assert_eq ( dask#9130 ) Pavithra Eswaramoorthy
Add weeks to parse_timedelta ( dask#9168 ) Matthew Rocklin
Warn that cloudpickle is not always deterministic ( dask#9148 ) Pavithra Eswaramoorthy
Switch parquet default engine ( dask#9140 ) Jim Crist-Harif
Use deterministic hashing with _iLocIndexer / _LocIndexer ( dask#9108 ) Fabien Aulaire
Enfore consistent schema in to_parquet pyarrow ( dask#9131 ) Jim Crist-Harif
Fix pyarrow.StringArray pickle ( dask#9170 ) Jim Crist-Harif
Fix parallel metadata collection in pyarrow engine ( dask#9165 ) Richard (Rick) Zamora
Improve pyarrow partitioning logic ( dask#9147 ) James Bourbeau
pyarrow 8.0 partitioning fix ( dask#9143 ) James Bourbeau
Better SEO for Installing Dask and Dask DataFrame Best Practices ( dask#9178 ) Sarah Charlotte Johnson
Update logos page in docs ( dask#9167 ) Sarah Charlotte Johnson
Add example using pandas Series to map_partition doctring ( dask#9161 ) Alex-JG3
Update docs theme for rebranding ( dask#9160 ) Sarah Charlotte Johnson
Better SEO for docs on Dask DataFrames ( dask#9128 ) Sarah Charlotte Johnson
Remove ensure_file from recommended practice for downstream libraries ( dask#9171 ) Matthew Rocklin
Test round-tripping DataFrame parquet I/O including pyspark ( dask#9156 ) Ian Rose
Try disabling HDF5 locking ( dask#9154 ) Ian Rose
Link best practices to DataFrame-parquet ( dask#9150 ) Tom Augspurger
Fix typo in map_partitions func parameter description ( dask#9149 ) Christopher Akiki
Un- xfail test_groupby_grouper_dispatch ( dask#9139 ) GALI PREM SAGAR
Temporarily import cleanup fixture from distributed ( dask#9138 ) James Bourbeau
Simplify partitioning logic in pyarrow parquet engine ( dask#9041 ) Richard (Rick) Zamora
Released on June 10, 2022
Make disk access in system monitor configurable (6537) `Matthew Rocklin`_
Log and except errors on preload start (6553) `Matthew Rocklin`_
Fix Scheduler.restart logic (6504) `Gabe Joseph`_
Don't heartbeat while Worker is closing (6543) `Gabe Joseph`_
No longer retry LocalCluster on errno.EADDRINUSE (6369) `Thomas Grainger`_
Don't invoke log_event from state machine (6512) `crusaderky`_
Add config option to disable profiling and disable it in many tests per default (6490) `Hendrik Makait`_
Encapsulate Worker.batched_stream.send() (6475) `crusaderky`_
refresh-who-has can break the worker state machine (6529) `crusaderky`_
Restart worker if it's unrecognized by scheduler (6505) `Gabe Joseph`_
Fix import error when distributed.rmm.pool-size is set (6482) `KoyamaSohei`_
Restore signature compatibility for dask-gateway (6561) `Tom Augspurger`_
Deprecate the io_loop and loop kwarg to Server, Worker, and Nanny (6473) `Thomas Grainger`_
Deprecate the loop kwarg to Scheduler (6443) `Thomas Grainger`_
Fix typo in .nthreads() docstring example (6545) `Pavithra Eswaramoorthy`_
Update docs theme for rebranding (6495) `Sarah Charlotte Johnson`_
Refactor gather_dep (6388) `crusaderky`_
Fix flaky test_gather_dep_one_worker_always_busy (6554) `crusaderky`_
Remove missing-data message (6546) `crusaderky`_
Port test_local.LocalTest to pytest tests to allow use of loop fixture (6523) `Thomas Grainger`_
Fix test_quiet_client_close (6541) `Gabe Joseph`_
Use default_initializer in WorkerProcess (6534) `jakirkham`_
Avoid deadlocks in tests that use popen (6483) `Gabe Joseph`_
Revert "Fix CLI Scheduler Tests (6502)" (6547) `Gabe Joseph`_
Update test report URL in summary message (6532) `Gabe Joseph`_
Update test report url (6531) `Ian Rose`_
Assert AsyncProcess.set_exit_callback is not called with a coroutine function (6526) `Thomas Grainger`_
Typing and docstring for Worker.close (6518) `Hendrik Makait`_
Fix CLI Scheduler Tests (6502) `Benjamin Zaitlen`_
Collect assertions in test_as_current_is_thread_local (6520) `Thomas Grainger`_
Link test report from test results comment (6524) `Hendrik Makait`_
Ignore the return value of signal.signal (6519) `Thomas Grainger`_
Refactor all event handlers (6410) `crusaderky`_
Fix dashboard favicon background (6514) `Jacob Tomlinson`_
Update dashboard logo (6513) `Jacob Tomlinson`_
Fix test_stress_scatter_death (6404) `Florian Jetter`_
Remove CrossFilter widget (6484) `crusaderky`_
data_needed exclusively contains tasks in fetch state (6481) `crusaderky`_
Assert possible previous states (6488) `Florian Jetter`_
@fail_hard can kill the whole test suite; hide errors (6474) `crusaderky`_
Assert that a fetch->cancelled->resumed->fetch cycle is impossible (6460) `crusaderky`_
Refactor busy workers reinsertion (6379) `crusaderky`_
Refactor find_missing and refresh_who_has (6348) `crusaderky`_
Rename test_collections.py to test_dask_collections.py (6486) `crusaderky`_
update_who_has can remove workers (6342) `crusaderky`_
Restructure test_watch_requires_lock_to_run to avoid flakes (6469) `Hendrik Makait`_
Fix intermittent test_profile_plot failure (6456) `Matthew Rocklin`_
Use asyncio.run to run gen_cluster, gen_test and cluster (6231) `Thomas Grainger`_
Improve tests that watch for subprocess logs (6461) `Gabe Joseph`_
- Add a dispatch for non-pandas Grouper objects and use it in GroupBy ( dask#9074 ) brandon-b-miller
Released on May 26, 2022
Add a dispatch for non-pandas Grouper objects and use it in GroupBy ( dask#9074 ) brandon-b-miller
Error if read_parquet & to_parquet files intersect ( dask#9124 ) Jim Crist-Harif
Visualize task graphs using ipycytoscape ( dask#9091 ) Ian Rose
Fix various typos ( dask#9126 ) Ryan Russell
Fix flaky test_filter_nonpartition_columns ( dask#9127 ) Pavithra Eswaramoorthy
Update gpuCI RAPIDS_VER to 22.08 ( dask#9120 )
Include conftest.py` in sdists ( dask#9115 ) Ben Beasley
Released on May 26, 2022
Add a lock to distributed.profile for better concurrency control (6421) `Hendrik Makait`_
Send SIGKILL after SIGTERM when passing 95% memory (6419) `crusaderky`_
Log rather than raise exceptions in preload.teardown() (6458) `Matthew Rocklin`_
Handle failing plugin.close() calls during scheduler shutdown (6450) `Matthew Rocklin`_
Fix slicing bug in ensure_memoryview (6449) `jakirkham`_
Generalize UCX errors on connect() and correct pytest fixtures (6434) `Peter Andreas Entschev`_
Run cluster widget periodic callbacks on the correct event loop (6444) `Thomas Grainger`_
Disable pytest-asyncio if installed (6436) `Jacob Tomlinson`_
Close client in sync test_actor tests (6459) `Thomas Grainger`_
Ignore ServerSession.with_document_locked unawaited (6447) `Thomas Grainger`_
Remove coverage pin from Python 3.10 environment (6439) `Thomas Grainger`_
Annotate remove_worker (6441) `crusaderky`_
Update gpuCI RAPIDS_VER to 22.08 (6428)
- Add pre-deprecation warnings for read_parquet kwargs chunksize and aggregate_files ( dask#9052 ) Richard (Rick) Zamora
Released on May 24, 2022
Add DataFrame.from_dict classmethod ( dask#9017 ) Matthew Powers
Add from_map function to Dask DataFrame ( dask#8911 ) Richard (Rick) Zamora
Improve to_parquet error for appended divisions overlap ( dask#9102 ) Jim Crist-Harif
Enabled user-defined process-initializer functions ( dask#9087 ) ParticularMiner
Mention align_dataframes=False option in map_partitions error ( dask#9075 ) Gabe Joseph
Add kwarg enforce_ndim to dask.array.map_blocks() ( dask#8865 ) ParticularMiner
Implement Series.GroupBy.fillna / DataFrame.GroupBy.fillna methods ( dask#8869 ) Pavithra Eswaramoorthy
Allow fillna with Dask DataFrame ( dask#8950 ) Pavithra Eswaramoorthy
Update error message for assignment with 1-d dask array ( dask#9036 ) Pavithra Eswaramoorthy
Collection Protocol ( dask#8674 ) Doug Davis
Patch around pandas ArrowStringArray pickling ( dask#9024 ) Jim Crist-Harif
Band-aid for compute_as_if_collection ( dask#8998 ) Ian Rose
Add p2p shuffle option ( dask#8836 ) Matthew Rocklin
Fixup column projection with no columns ( dask#9106 ) Jim Crist-Harif
Blockwise cull NumPy dtype ( dask#9100 ) Ian Rose
Fix column-projection bug in from_map ( dask#9078 ) Richard (Rick) Zamora
Prevent nulls in index for non-numeric dtypes ( dask#8963 ) Jorge López
Fix is_monotonic methods for more than 8 partitions ( dask#9019 ) Julia Signell
Handle enumerate and generator inputs to from_map ( dask#9066 ) Richard (Rick) Zamora
Revert is_dask_collection ; back to previous implementation ( dask#9062 ) Doug Davis
Fix Blockwise.clone does not handle iterable literal arguments correctly ( dask#8979 ) JSKenyon
Array setitem hardmask ( dask#9027 ) David Hassell
Fix overlapping divisions error on append ( dask#8997 ) Ian Rose
Add pre-deprecation warnings for read_parquet kwargs chunksize and aggregate_files ( dask#9052 ) Richard (Rick) Zamora
Document map_partitions handling of args vs kwargs , usage of partition_info ( dask#9084 ) Charles Blackmon-Luca
Update custom collection documentation (leverage new collection protocol) ( dask#9097 ) Doug Davis
Better SEO for docs on creating and storing Dask DataFrames ( dask#9098 ) Sarah Charlotte Johnson
Clarify chunking in imread docstring ( dask#9082 ) Genevieve Buckley
Rearrange docs TOC ( dask#9001 ) Matthew Rocklin
Corrected map_blocks() docstring for kwarg enforce_ndim ( dask#9071 ) ParticularMiner
Update DataFrame SQL docs references to other libraries ( dask#9077 ) Charles Blackmon-Luca
Update page on creating and storing Dask DataFrames ( dask#9025 ) Sarah Charlotte Johnson
Include NUMPY_LICENSE.txt in license files ( dask#9113 ) Ben Beasley
Increase retries when installing nightly pandas ( dask#9103 ) James Bourbeau
Force nightly pyarrow in the upstream build ( dask#9095 ) Joris Van den Bossche
Improve object handling & testing of ensure_unicode ( dask#9059 ) John A Kirkham
Force nightly pyarrow in the upstream build ( dask#8993 ) Joris Van den Bossche
Additional check on is_dask_collection ( dask#9054 ) Doug Davis
Update ensure_bytes ( dask#9050 ) John A Kirkham
Add end of file pre-commit hook ( dask#9045 ) James Bourbeau
Add codespell pre-commit hook ( dask#9040 ) James Bourbeau
Remove the HDFS tests ( dask#9039 ) Jim Crist-Harif
Fix flaky test_reductions_2D ( dask#9037 ) Jim Crist-Harif
Prevent codecov from notifying of failure too soon ( dask#9031 ) Jim Crist-Harif
Only test on Python 3.9 on macos ( dask#9029 ) Jim Crist-Harif
Update to_timedelta default unit ( dask#9010 ) Pavithra Eswaramoorthy
Released on May 24, 2022
Add HTTP API to scheduler (6270) `Matthew Murray`_
Shuffle Service with Scheduler Logic (6007) `Matthew Rocklin`_
Follow-up on removing report and safe from Worker.close (6423) `Gabe Joseph`_
Server close faster (6415) `Florian Jetter`_
Disable HTTP API by default (6420) `Jacob Tomlinson`_
Remove report and safe from Worker.close (6363) `Florian Jetter`_
Allow deserialized plugins in register_scheduler_plugin (6401) `Matthew Rocklin`_
WorkerState are different for different addresses (6398) `Florian Jetter`_
Do not filter tasks before gathering data (6371) `crusaderky`_
Remove worker reconnect (6361) `Gabe Joseph`_
Add SchedulerPlugin.log_event handler (6381) `Matthew Rocklin`_
Ensure occupancy tracking works as expected for long running tasks (6351) `Florian Jetter`_
stimulus_id for all Instructions (6347) `crusaderky`_
Refactor missing-data command (6332) `crusaderky`_
Add idempotent to register_scheduler_plugin client (6328) `Alex Ford`_
Add option to specify a scheduler address for workers to use (5944) `Enric Tejedor`_
Remove stray breakpoint (6417) `Thomas Grainger`_
Fix API JSON MIME type (6397) `Jacob Tomlinson`_
Remove wrong assert in handle compute (6370) `Florian Jetter`_
Ensure multiple clients can cancel their key without interference (6016) `Florian Jetter`_
Fix Nanny shutdown assertion (6357) `Gabe Joseph`_
Fix fail_hard for sync functions (6269) `Gabe Joseph`_
Prevent infinite transition loops; more aggressive validate_state() (6318) `crusaderky`_
Ensure cleanup of many GBs of spilled data on terminate (6280) `crusaderky`_
Fix WORKER_ANY_RUNNING regression (6297) `Florian Jetter`_
Race conditions from fetch to compute while AMM requests replica (6248) `Florian Jetter`_
Ensure resumed tasks are not accidentally forgotten (6217) `Florian Jetter`_
Do not allow closing workers to be awaited again (5910) `Florian Jetter`_
Move wait_for_signals to private module and deprecate distributed.cli.utils (6367) `Hendrik Makait`_
Fix typos and whitespace in worker.py (6326) `Hendrik Makait`_
Fix link to memory trimming documentation (6317) `Marco Wolsza`_
Make gen_test show up in VSCode test discovery (6424) `Gabe Joseph`_
WSMR / deserialize_task (6411) `crusaderky`_
Restore signal handlers after wait for signals is done (6400) `Thomas Grainger`_
fail_hard should reraise (6399) `crusaderky`_
Revisit tests mocking gather_dep (6385) `crusaderky`_
Fix flaky test_in_flight_lost_after_resumed (6372) `Florian Jetter`_
Restore install_signal_handlers due to downstream dependencies (6366) `Hendrik Makait`_
Improve catch_unhandled_exceptions (6358) `Gabe Joseph`_
Remove all invocations of IOLoop.run_sync from CLI (6205) `Hendrik Makait`_
Remove transition-counter-max from config (6349) `crusaderky`_
Use list comprehension in pickle_loads (6343) `jakirkham`_
Improve ensure_memoryview test coverage & make minor fixes (6333) `jakirkham`_
Remove leaking reference to workers from gen_cluster (6337) `Hendrik Makait`_
Partial annotations for stealing.py (6338) `crusaderky`_
Validate and debug state machine on handle_compute_task (6327) `crusaderky`_
Bump pyupgrade and clean up # type: ignore (6293) `crusaderky`_
gen_cluster to write to /tmp (6335) `crusaderky`_
Transition table as a ClassVar (6331) `crusaderky`_
Simplify ensure_memoryview test with array (6322) `jakirkham`_
Refactor ensure_communicating (6165) `crusaderky`_
Review scheduler annotations, part 2 (6253) `crusaderky`_
Use w for writeable branch in pickle_loads (6314) `jakirkham`_
Simplify frame handling in ws (6294) `jakirkham`_
Use ensure_bytes from dask.utils (6295) `jakirkham`_
Use ensure_memoryview in array deserialization (6300) `jakirkham`_
Escape < > when generating Junit report (6306) `crusaderky`_
Use codecs.decode to deserialize errors (6274) `jakirkham`_
Minimize copying in maybe_compress & byte_sample (6273) `jakirkham`_
Skip test_release_evloop_while_spilling on OSX (6291) `Florian Jetter`_
Simplify logic in get_default_compression (6260) `jakirkham`_
Cleanup old compression workarounds (6259) `jakirkham`_
Re-enable NVML monitoring for WSL (6119) `Charles Blackmon-Luca`_
This is a bugfix release for this issue .
Released on May 2, 2022
This is a bugfix release for this issue .
Add highlights section to 2022.04.2 release notes ( dask#9012 ) James Bourbeau
Released on May 2, 2022
This is a bugfix release for this issue.
Handle writeable in buffer_callback (6238) `jakirkham`_
Use .data with NumPy array allocation (6242) `jakirkham`_
Close executor in event loop if interpreter is closing (6256) `Matthew Rocklin`_
This release includes several deprecations/breaking API changes to dask.dataframe.read_parquet and dask.dataframe.to_parquet :
Released on April 29, 2022
This release includes several deprecations/breaking API changes to dask.dataframe.read_parquet and dask.dataframe.to_parquet :
to_parquet no longer writes _metadata files by default. If you want to write a _metadata file, you can pass in write_metadata_file=True .
read_parquet now defaults to split_row_groups=False , which results in one Dask dataframe partition per parquet file when reading in a parquet dataset. If you’re working with large parquet files you may need to set split_row_groups=True to reduce your partition size.
read_parquet no longer calculates divisions by default. If you require read_parquet to return dataframes with known divisions, please set calculate_divisions=True .
read_parquet has deprecated the gather_statistics keyword argument. Please use the calculate_divisions keyword argument instead.
read_parquet has deprecated the require_extensions keyword argument. Please use the parquet_file_extension keyword argument instead.
Add removeprefix and removesuffix as StringMethods ( dask#8912 ) Jorge López
Call fs.invalidate_cache in to_parquet ( dask#8994 ) Jim Crist-Harif
Change to_parquet default to write_metadata_file=None ( dask#8988 ) Jim Crist-Harif
Let arg reductions pass keepdims ( dask#8926 ) Julia Signell
Change split_row_groups default to False in read_parquet ( dask#8981 ) Richard (Rick) Zamora
Improve NotImplementedError message for da.reshape ( dask#8987 ) Jim Crist-Harif
Simplify to_parquet compute path ( dask#8982 ) Jim Crist-Harif
Raise an error if you try to use vindex with a Dask object ( dask#8945 ) Julia Signell
Avoid pre_buffer=True when a precache method is specified ( dask#8957 ) Richard (Rick) Zamora
from_dask_array uses blockwise instead of merging graphs ( dask#8889 ) Bryan Weber
Use pre_buffer=True for “pyarrow” Parquet engine ( dask#8952 ) Richard (Rick) Zamora
Handle dtype=None correctly in da.full ( dask#8954 ) Tom White
Fix dask-sql bug caused by blockwise fusion ( dask#8989 ) Richard (Rick) Zamora
to_parquet errors for non-string column names ( dask#8990 ) Jim Crist-Harif
Make sure da.roll works even if shape is 0 ( dask#8925 ) Julia Signell
Fix recursion error issue with set_index ( dask#8967 ) Paul Hobson
Stringify BlockwiseDepDict mapping values when produces_keys=True ( dask#8972 ) Richard (Rick) Zamora
Use DataFram`eIOLayer in DataFrame.from_delayed ( dask#8852 ) Richard (Rick) Zamora
Check that values for the in predicate in read_parquet are correct ( dask#8846 ) Bryan Weber
Fix bug for reduction of zero dimensional arrays ( dask#8930 ) Tom White
Specify dtype when deciding division using np.linspace in read_sql_query ( dask#8940 ) Cheun Hong
Deprecate gather_statistics from read_parquet ( dask#8992 ) Richard (Rick) Zamora
Change require_extension to top-level parquet_file_extension read_parquet kwarg ( dask#8935 ) Richard (Rick) Zamora
Update write_metadata_file discussion in documentation ( dask#8995 ) Richard (Rick) Zamora
Update DataFrame.merge docstring ( dask#8966 ) Pavithra Eswaramoorthy
Added description for parameter align_arrays in array.blockwise() ( dask#8977 ) ParticularMiner
ecommend not to use map_block(drop_axis=...) on chunked axes of an array ( dask#8921 ) ParticularMiner
Add copy button to code snippets in docs ( dask#8956 ) James Bourbeau
Pandas 1.5.0 compatibility ( dask#8961 ) Ian Rose
Add pytest-timeout to distributed envs on CI ( dask#8986 ) Julia Signell
Improve read_parquet docstring formatting ( dask#8971 ) Bryan Weber
Remove pytest.warns(None) ( dask#8924 ) Pavithra Eswaramoorthy
Document Python 3.10 as supported ( dask#8976 ) Eray Aslan
parse_timedelta option to enforce explicit unit ( dask#8969 ) crusaderky
mypy compatibility ( dask#8854 ) Paul Hobson
Add a docs page for Dask & Parquet ( dask#8899 ) Jim Crist-Harif
Adds configuration to ignore revs in blame ( dask#8933 ) Bryan Weber
Released on April 29, 2022
Unblock event loop while waiting for ThreadpoolExecutor to shut down (6091) `Florian Jetter`_
RetireWorker policy is done if removed (6234) `Gabe Joseph`_
Pause to disable dependency gathering (6195) `crusaderky`_
Add EOFError to nanny multiprocessing.queue except list (6213) `Matthew Rocklin`_
Re-interpret error in lost worker scenario (6193) `Matthew Rocklin`_
Add Stimulus IDs to Scheduler (6161) `Florian Jetter`_
Set a five minute TTL for Dask workers (6200) `Matthew Rocklin`_
Add distributed.metrics.monotonic (6181) `crusaderky`_
Send worker validation errors to scheduler and err on test completion (6192) `Matthew Rocklin`_
Redesign worker exponential backoff on busy-gather (6173) `crusaderky`_
Log all invalid worker transitions to scheduler (6134) `Matthew Rocklin`_
Make Graph dashboard plot have invisible axes (6149) `Matthew Rocklin`_
Remove Nanny auto_restart state (6138) `Matthew Rocklin`_
Ensure scheduler events do not hold on to TaskState objects (6226) `Florian Jetter`_
Allow pausing and choke event loop while spilling (6189) `crusaderky`_
Do not use UUID in stealing (6179) `Florian Jetter`_
Handle int worker names in info page (6158) `Brett Naul`_
Fix psutil dio counters none (6093) `ungarj`_
Join Nanny watch thread (6146) `Matthew Rocklin`_
Improve logging when closing workers (6129) `Matthew Rocklin`_
Avoid stack overflow in profiling (6141) `Matthew Rocklin`_
Clean up SSHCluster if failure to start (6130) `Matthew Rocklin`_
Deprecate rpc synchronous context manager (6171) `Thomas Grainger`_
Update actors.rst (6167) `Scott Sievert`_
Add fail_hard decorator for worker methods (6210) `Matthew Rocklin`_
Do not require pytest_timeout (6224) `Florian Jetter`_
Remove remaining run_sync calls from tests (6196) `Thomas Grainger`_
Increase test timeout if debugger is running (6218) `Florian Jetter`_
Do not list closes keyword in list of bullet points (6219) `Florian Jetter`_
Harmonize (6161) and (6173) (6207) `crusaderky`_
Xfail test_worker_death_timeout (6186) `Matthew Rocklin`_
Use random port in test_dask_spec.py::test_text (6187) `Matthew Rocklin`_
Mark all websocket tests as flaky (6188) `Matthew Rocklin`_
Fix flaky test_dont_steal_long_running_tasks (6197) `crusaderky`_
Cleanup names in stealing (6185) `Matthew Rocklin`_
log_errors decorator (6184) `crusaderky`_
Pass mypy validation on Windows (6180) `crusaderky`_
Add locket as a dependency instead of vendoring (6166) `Michael Adkins`_
Remove unittestmock for gather_dep and get_data_from_worker (6172) `Florian Jetter`_
mypy tweaks (6175) `crusaderky`_
Avoid easy deprecated calls to asyncio.get_event_loop() (6170) `Thomas Grainger`_
Fix flaky test_cancel_fire_and_forget (6099) `crusaderky`_
Remove deprecated code (6144) `Matthew Rocklin`_
Update link of test badge (6154) `Florian Jetter`_
Remove legacy state mappings (6145) `Matthew Rocklin`_
Fix test_worker_waits_for_scheduler (6155) `Matthew Rocklin`_
Disallow leaked threads on windows (6152) `Thomas Grainger`_
Review annotations and docstrings in scheduler.py, part 1 (6132) `crusaderky`_
Relax test_asyncprocess.py::test_simple (6150) `Matthew Rocklin`_
Drop cast ing which is effectively a no-op (6101) `jakirkham`_
Mark tests that use a specific port as flaky (6139) `Matthew Rocklin`_
AMM Suggestion namedtuples (6108) `crusaderky`_
- Remove unused (deprecated) code from ArrowDatasetEngine ( dask#8885 ) Richard (Rick) Zamora
Released on April 15, 2022
Add missing NumPy ufuncs: abs , left_shift , right_shift , positive . ( dask#8920 ) Tom White
Avoid collecting parquet metadata in pyarrow when write_metadata_file=False ( dask#8906 ) Richard (Rick) Zamora
Better error for failed wildcard path in dd.read_csv() (fixes #8878) ( dask#8908 ) Roger Filmyer
Return da.Array rather than dd.Series for non-ufunc elementwise functions on dd.Series ( dask#8558 ) Julia Signell
Let get_dummies use meta computation in map_partitions ( dask#8898 ) Julia Signell
Masked scalars input to da.from_array ( dask#8895 ) David Hassell
Raise ValueError in merge_asof for duplicate kwargs ( dask#8861 ) Bryan Weber
Make is_monotonic work when some partitions are empty ( dask#8897 ) Julia Signell
Fix custom getter in da.from_array when inline_array=False ( dask#8903 ) Ian Rose
Correctly handle dict-specification for rechunk. ( dask#8859 ) Richard
Fix merge_asof : drop index column if left_on == right_on ( dask#8874 ) Gil Forsyth
Warn users that engine='auto' will change in future ( dask#8907 ) Jim Crist-Harif
Remove pyarrow-legacy engine from parquet API ( dask#8835 ) Richard (Rick) Zamora
Add note on missing parameter out for dask.array.dot ( dask#8913 ) Francesco Andreuzzi
Update DataFrame.query docstring ( dask#8890 ) Pavithra Eswaramoorthy
Don’t test da.prod on large integer data ( dask#8893 ) Jim Crist-Harif
Add network marks to tests that fail without an internet connection ( dask#8881 ) Paul Hobson
Fix gpuCI GHA version ( dask#8891 ) Charles Blackmon-Luca
xfail / skip some flaky distributed tests ( dask#8887 ) Jim Crist-Harif
Remove unused (deprecated) code from ArrowDatasetEngine ( dask#8885 ) Richard (Rick) Zamora
Add mild typing to common utils functions, part 2 ( dask#8867 ) crusaderky
Documentation of Limitation of sample() ( dask#8858 ) Nadiem Sissouno
Released on April 15, 2022
Add KillWorker Plugin (6126) `Matthew Rocklin`_
Sort worker list in info pages (6135) `Matthew Rocklin`_
Add back Worker.transition_fetch_missing (6112) `Matthew Rocklin`_
Log state machine events (6092) `crusaderky`_
Migrate ensure_executing transitions to new WorkerState event mechanism - part 1 (6003) `crusaderky`_
Migrate ensure_executing transitions to new WorkerState event mechanism - part 2 (6062) `crusaderky`_
Annotate worker transitions to error (6012) `crusaderky`_
Avoid transitioning from memory/released to missing in worker (6123) `Matthew Rocklin`_
Don't try to reconnect client on interpreter shutdown (6120) `Matthew Rocklin`_
Wrap UCX init warnings in importable functions (6121) `Charles Blackmon-Luca`_
Cancel asyncio tasks on worker close (6098) `crusaderky`_
Avoid port collisions when defining port ranges (6054) `crusaderky`_
Avoid intermittent failure in test_cancel_fire_and_forget (6131) `Matthew Rocklin`_
Ignore bokeh warning in pytest (6127) `Matthew Rocklin`_
Start uncythonization (6104) `Martin Durant`_
Avoid redundant cleanup fixture in gen_test tests (6118) `Thomas Grainger`_
Move comm.close to finally in test_comms (6109) `Florian Jetter`_
Use async with Server in test_core.py (6100) `Matthew Rocklin`_
Elevate warnings to errors in the test suite (6094) `Thomas Grainger`_
Add urllib3 to nightly conda builds (6102) `James Bourbeau`_
Drop Blosc (6027) `Matthew Rocklin`_
Robust test_get_returns_early (6090) `Florian Jetter`_
Overhaul test_priorities.py (6077) `crusaderky`_
Remove pytest-asyncio (6063) `Thomas Grainger`_
Clean up usage around plain rpc (6082) `Florian Jetter`_
Drop OSX builds for Python 3.9 (6073) `Florian Jetter`_
Bump periods in utils_test.wait_for (6081) `Florian Jetter`_
Check for ucx-py nightlies when updating gpuCI (6006) `Charles Blackmon-Luca`_
Type annotations for profile.py (6067) `crusaderky`_
Fix flaky test_worker_time_to_live (6061) `crusaderky`_
Fix flaky test_as_completed_async_for_cancel (6072) `crusaderky`_
Fix regression in test_weakref_cache (6033) `crusaderky`_
Trivial fix to test_nanny_worker_port_range (6070) `crusaderky`_
Drop deprecated tornado.netutil.ExecutorResolver (6031) `Thomas Grainger`_
Delete asyncio.py (6066) `Thomas Grainger`_
Tweak conda environment files (6037) `crusaderky`_
Harden test_abort_execution_to_fetch and more (6026) `crusaderky`_
Fix test_as_completed_with_results_no_raise and name comm (6042) `Matthew Rocklin`_
Use more robust limits in test_worker_memory (6055) `Florian Jetter`_
This is the first release with support for Python 3.10
Released on April 1, 2022
Note
This is the first release with support for Python 3.10
Add Python 3.10 support ( dask#8566 ) James Bourbeau
Add check on dtype.itemsize in order to produce a useful error ( dask#8860 ) Davide Gavio
Add mild typing to common utils functions ( dask#8848 ) Matthew Rocklin
Add sanity checks to divisions setter ( dask#8806 ) Jim Crist-Harif
Use Blockwise and map_partitions for more tasks ( dask#8831 ) Bryan Weber
Fix dataframe.merge_asof to preserve right_on column ( dask#8857 ) Sarah Charlotte Johnson
Fix “Buffer dtype mismatch” for pandas >= 1.3 on 32bit ( dask#8851 ) Ben Greiner
Fix slicing fusion by altering SubgraphCallable getter ( dask#8827 ) Ian Rose
Remove support for PyPy ( dask#8863 ) James Bourbeau
Drop setuptools at runtime ( dask#8855 ) crusaderky
Remove dataframe.tseries.resample.getnanos ( dask#8834 ) Sarah Charlotte Johnson
Organize diagnostic and performance docs ( dask#8871 ) Naty Clementi
Add image to explain drop_axis option of map_blocks ( dask#8868 ) ParticularMiner
Update gpuCI RAPIDS_VER to 22.06 ( dask#8828 )
Restore test_parquet in http ( dask#8850 ) Bryan Weber
Simplify gpuCI updating workflow ( dask#8849 ) Charles Blackmon-Luca
Released on April 1, 2022
Note
This is the first release with support for Python 3.10
Add Python 3.10 support (5952) `Thomas Grainger`_
New cluster dump utilities (5920) `Simon Perkins`_
New ClusterDump SchedulerPlugin for dumping cluster state on close (5983) `Simon Perkins`_
Track Event Loop intervals in dashboard plot (5964) `Matthew Rocklin`_
ToPickle - Unpickle on the Scheduler (5728) `Mads R. B. Kristensen`_
Retry on transient error codes in preload (5982) `Matthew Rocklin`_
More idiomatic mypy configuration (6022) `crusaderky`_
Name extensions and enable extension heartbeats (5957) `Matthew Rocklin`_
Better error message on misspelled executor annotation (6009) `crusaderky`_
Clarify that SchedulerPlugin must be subclassed (6008) `crusaderky`_
Remove duplication from stealing (5787) `Duncan McGregor`_
Remove cache in iscoroutinefunction to avoid holding on to refs (5985) `Florian Jetter`_
Add title to individual plots (5967) `Matthew Rocklin`_
Specify average in timeseries titles (5974) `Matthew Rocklin`_
Do not catch CancelledError in CommPool (6005) `Florian Jetter`_
Remove distributed._ipython_utils and dependents (6036) `Thomas Grainger`_
Remove support for PyPy (6029) `James Bourbeau`_
Drop runtime dependency to setuptools (6017) `crusaderky`_
Remove heartbeats from events (5989) `Matthew Rocklin`_
Mention default value of Client's timeout (5933) `Eric Engestrom`_
Update celery and other outdated 3rd party URLs (5988) `Thomas Grainger`_
Improve test_hardware test (6039) `Matthew Rocklin`_
Short variant of test_report.html (6034) `crusaderky`_
Make test_reconnect async (6000) `Matthew Rocklin`_
Update gpuCI RAPIDS_VER to 22.06 (5962)
Add tiny test for ToPickle (6021) `Matthew Rocklin`_
Remove check_python_3 (broken with click>=8.1.0) (6018) `Thomas Grainger`_
Fix black in CI (6019) `crusaderky`_
Add a hardware benchmark to test memory, disk, and network bandwidths (5966) `Matthew Rocklin`_
Relax variable test_race (5993) `Matthew Rocklin`_
Skip dask-ssh tests without paramiko (5907) `Elliott Sales de Andrade`_
Remove test_restart_sync_no_center (5994) `Matthew Rocklin`_
Set lower tick frequency in tests (5977) `Matthew Rocklin`_
Catch NotADirectoryError in SafeTemporaryDirectory (5984) `Florian Jetter`_
Fix flaky test_weakref_cache (5978) `crusaderky`_
Fixup test_worker_doesnt_await_task_completion (5979) `Matthew Rocklin`_
Use broader range in test_nanny_worker_port_range (5980) `Matthew Rocklin`_
Use tempfile directory in cluster fixture (5825) `Florian Jetter`_
Drop setuptools from distributed recipe (5963) `jakirkham`_
- Deprecate bcolz support ( dask#8754 ) Pavithra Eswaramoorthy
Released on March 18, 2022
Bag: add implementation for reservoir sampling ( dask#7636 ) Daniel Mesejo-León
Add ma.count to Dask array ( dask#8785 ) David Hassell
Change to_parquet default to compression="snappy" ( dask#8814 ) Jim Crist-Harif
Add weights parameter to dask.array.reduction ( dask#8805 ) David Hassell
Add ddf.compute_current_divisions to get divisions on a sorted index or column ( dask#8517 ) Julia Signell
Pass name and doc through on DelayedLeaf ( dask#8820 ) Leo Gao
Raise exception for not implemented merge how option ( dask#8818 ) Naty Clementi
Move Bag.map_partitions to Blockwise ( dask#8646 ) Richard (Rick) Zamora
Improve error messages for malformed config files ( dask#8801 ) Jim Crist-Harif
Revise column-projection optimization to capture common dask-sql patterns ( dask#8692 ) Richard (Rick) Zamora
Useful error for empty divisions ( dask#8789 ) Pavithra Eswaramoorthy
Scipy 1.8.0 compat: copy private classes into dask/array/stats.py ( dask#8694 ) Julia Signell
Raise warning when using multiple types of schedulers where one is distributed ( dask#8700 ) Pedro Silva
Fix bug in applying != filter in read_parquet ( dask#8824 ) Richard (Rick) Zamora
Fix set_index when directly passed a dask Index ( dask#8680 ) Paul Hobson
Quick fix for unbounded memory usage in tensordot ( dask#7980 ) Genevieve Buckley
If hdf file is empty, don’t fail on meta creation ( dask#8809 ) Julia Signell
Update clone_key("x") to retain prefix ( dask#8792 ) crusaderky
Fix “physical” column bug in pyarrow-based read_parquet ( dask#8775 ) Richard (Rick) Zamora
Fix groupby.shift bug caused by unsorted partitions after shuffle ( dask#8782 ) kori73
Fix serialization bug ( dask#8786 ) Richard (Rick) Zamora
Bump diagnostics bokeh dependency to 2.4.2 ( dask#8791 ) Charles Blackmon-Luca
Deprecate bcolz support ( dask#8754 ) Pavithra Eswaramoorthy
Finish making map_overlap default boundary kwarg 'none' ( dask#8743 ) Genevieve Buckley
Custom collection example docs fix ( dask#8807 ) Doug Davis
Add Series.str , Series.dt , and Series.cat accessors to docs ( dask#8757 ) Sarah Charlotte Johnson
Fix docstring for ddf.compute_current_divisions ( dask#8793 ) Julia Signell
Dashboard docs on /status page ( dask#8648 ) Naty Clementi
Clarify divisions kwarg in repartition docstring ( dask#8781 ) Sarah Charlotte Johnson
Update Docker images to use ghcr.io ( dask#8774 ) Jacob Tomlinson
Reduce gpuci pytest parallelism ( dask#8826 ) GALI PREM SAGAR
absolufy-imports - No relative imports - PEP8 ( dask#8796 ) Julia Signell
Tidy up assert_eq calls in array tests ( dask#8812 ) Julia Signell
Avoid pytest.warns(None) ( dask#8718 ) LSturtew
Fix test_describe_empty to work without global -Werror ( dask#8291 ) Michał Górny
Temporarily xfail graphviz tests on windows ( dask#8794 ) Jim Crist-Harif
Use packaging.parse for md5 compatibility ( dask#8763 ) James Bourbeau
Make tokenize work in a FIPS 140-2 environment ( dask#8762 ) Jim Crist-Harif
Label issues and PRs on open with ‘needs triage’ ( dask#8761 ) Julia Signell
Add some extra test coverage ( dask#8302 ) lrjball
Specify action version and change from pull_request_target to pull_request ( dask#8767 ) Julia Signell
Make scheduler kwarg pass though to sub functions in da.assert_eq ( dask#8755 ) Julia Signell
Released on March 18, 2022
Support dumping cluster state to URL (5863) `Gabe Joseph`_
Prevent data duplication on unspill (5936) `crusaderky`_
Encapsulate spill buffer and memory_monitor (5904) `crusaderky`_
Drop pkg_resources in favour of importlib.metadata (5923) `Thomas Grainger`_
Worker State Machine refactor: redesign TaskState and scheduler messages (5922) `crusaderky`_
Tidying of OpenSSL 1.0.2/Python 3.9 (and earlier) handling (5854) `jakirkham`_
zict type annotations (5905) `crusaderky`_
Add key to compute failed message (5928) `Florian Jetter`_
Change default log format to include timestamp (5897) `Florian Jetter`_
Improve type annotations in worker.py (5814) `crusaderky`_
Fix progress_stream teardown (5823) `Thomas Grainger`_
Handle concurrent or failing handshakes in InProcListener (5903) `Thomas Grainger`_
Make log_event threadsafe (5946) `Gabe Joseph`_
Fixes to documentation regarding plugins (5940) `crendoncoiled`_
Some updates to scheduling policies docs (5911) `Gabe Joseph`_
Fix test_nanny_worker_port_range hangs on Windows (5956) `crusaderky`_
(REVERTED) Unblock event loop while waiting for ThreadpoolExecutor to shut down (5883) `Florian Jetter`_
Revert 5883 (5961) `crusaderky`_
Invert event_name check in test-report job (5959) `jakirkham`_
Only run gh-pages workflow on dask/distributed (5942) `jakirkham`_
absolufy-imports - No relative imports - PEP8 (5924) `Florian Jetter`_
Fix track_features for distributed pre-releases (5927) `Charles Blackmon-Luca`_
Xfail test_submit_different_names (5916) `Florian Jetter`_
Fix distributed pre-release's distributed-impl constraint (5867) `Charles Blackmon-Luca`_
Mock process memory readings in test_worker.py (v2) (5878) `crusaderky`_
Drop unused _round_robin global variable (5881) `jakirkham`_
Add GitHub URL for PyPi (5886) `Andrii Oriekhov`_
Mark xfail COMPILED tests skipif instead (5884) `Florian Jetter`_
- Deprecate iteritems ( dask#8660 ) James Bourbeau
Released on February 25, 2022
Add aggregate functions first and last to dask.dataframe.pivot_table ( dask#8649 ) Knut Nordanger
Add std() support for datetime64 dtype for pandas-like objects ( dask#8523 ) Ben Glossner
Add materialized task counts to HighLevelGraph and Layer html reprs ( dask#8589 ) kori73
Do not allow iterating a DataFrameGroupBy ( dask#8696 ) Bryan Weber
Fix missing newline after info() call on empty DataFrame ( dask#8727 ) Naty Clementi
Add groupby.compute as a not implemented method ( dask#8734 ) Dranaxel
Improve multi dataframe join performance ( dask#8740 ) Holden Karau
Include bool type for Index ( dask#8732 ) Naty Clementi
Allow ArrowDatasetEngine subclass to override pandas->arrow conversion also for partitioned write ( dask#8741 ) Joris Van den Bossche
Increase performance of k-diagonal extraction in da.diag() and da.diagonal() ( dask#8689 ) ParticularMiner
Change linspace creation to match numpy when num equal to 0 ( dask#8676 ) Peter
Tokenize dataclasses ( dask#8557 ) Gabe Joseph
Update tokenize to treat dict and kwargs differently ( dask#8655 ) James Bourbeau
Fix bug in dask.array.roll() for roll-shifts that match the size of the input array ( dask#8723 ) ParticularMiner
Fix for normalize_function dataclass methods ( dask#8527 ) Sarah Charlotte Johnson
Fix rechunking with zero-size-chunks ( dask#8703 ) ParticularMiner
Move creation of sqlalchemy connection for picklability ( dask#8745 ) Julia Signell
Drop Python 3.7 ( dask#8572 ) James Bourbeau
Deprecate iteritems ( dask#8660 ) James Bourbeau
Deprecate dataframe.tseries.resample.getnanos ( dask#8752 ) Sarah Charlotte Johnson
Add deprecation warning for pyarrow-legacy engine ( dask#8758 ) Richard (Rick) Zamora
Update link typos in changelog ( dask#8717 ) James Bourbeau
Clarify dask.visualize docstring ( dask#8710 ) Dranaxel
Update Docker example to use current best practices ( dask#8731 ) Jacob Tomlinson
Update docs to include distributed.Client.preload ( dask#8679 ) Bryan Weber
Document monthly social meeting ( dask#8595 ) Thomas Grainger
Add docs for Gen2 access with RBAC/ACL i.e. security principal ( dask#8748 ) Martin Thøgersen
Use Dask configuration extension from dask-sphinx-theme ( dask#8751 ) Benjamin Zaitlen
Unpin coverage in CI ( dask#8690 ) James Bourbeau
Add manual trigger for running test suite ( dask#8716 ) James Bourbeau
Xfail scheduler_HLG_unpack_import ; flaky test ( dask#8724 ) Mike McCarty
Temporarily remove scipy upstream CI build ( dask#8725 ) James Bourbeau
Bump pre-release version to be greater than stable releases ( dask#8728 ) Charles Blackmon-Luca
Move custom sort function logic to internal sort_values ( dask#8571 ) Charles Blackmon-Luca
Pin cloudpickle and scipy in docs requirements ( dask#8737 ) Julia Signell
Make the labeler not delete labels, and look for the docs at the right spot ( dask#8746 ) Julia Signell
Fix docs build warnings ( dask#8432 ) Kristopher Overholt
Update test status badge ( dask#8747 ) James Bourbeau
Fix parquet test_pandas_timestamp_overflow_pyarrow test ( dask#8733 ) Joris Van den Bossche
Only run PR builds on changes to relevant files ( dask#8756 ) Charles Blackmon-Luca
Released on February 25, 2022
Add the ability for Client to run preload code (5773) `Bryan W. Weber`_
Optionally use NumPy to allocate buffers (5750) `jakirkham`_
Add git hash to distributed-impl version (5865) `Charles Blackmon-Luca`_
Immediately raise exception when trying to connect to a closed cluster (5855) `Florian Jetter`_
Lazily get dask version information (5822) `Thomas Grainger`_
Remove the requirements to add comm to every handler (5820) `Florian Jetter`_
Raise on unclosed comms in check_instances (5836) `Florian Jetter`_
Python 3.8 f-strings (5828) `crusaderky`_
Constrained spill (5543) `Naty Clementi`_
Measure actual spilled bytes, not output of sizeof() (5805) `crusaderky`_
Remove redundant str() conversions (5810) `crusaderky`_
Cluster dump now excludes run_spec by default (5803) `Florian Jetter`_
Dump more objects with dump_cluster_state (5806) `crusaderky`_
Do not connect to any sockets on import (5808) `Florian Jetter`_
Avoid deadlock when two tasks are concurrently waiting for an unresolved ActorFuture (5709) `Thomas Grainger`_
Drop Python 3.7 (5683) `James Bourbeau`_
Remove support for UCX < 1.11.1 (5859) `Peter Andreas Entschev`_
Fix typo in memory types documentation relative links (5845) `James Bourbeau`_
Document and test spill->target hysteresis cycle (5813) `crusaderky`_
Fix flaky test_remove_replicas_while_computing (5860) `crusaderky`_
Fix time based test_assert_worker_story_malformed_story parameterize (5856) `Thomas Grainger`_
Remove xfail from test_no_unnecessary_imports_on_worker (5862) `crusaderky`_
Start building pre-releases with cythonized scheduler (5831) `Charles Blackmon-Luca`_
Do not mark tests xfail if they don't come up in time (5824) `Florian Jetter`_
Use gen_cluster where possible in test_dask_worker.py (5842) `Florian Jetter`_
Generate junit report when pytest-timeout kills pytest (5832) `crusaderky`_
Decrease timeout-minutes for GHA jobs (5837) `Florian Jetter`_
Fix some timeouts (5647) `Florian Jetter`_
Bump pre-release version to be greater than stable releases (5816) `Charles Blackmon-Luca`_
Do not run schedule jobs on forks (5821) `Florian Jetter`_
Remove pillow<9 pin in CI (5775) `Thomas Grainger`_
Show scheduled test runs in report (5812) `Ian Rose`_
Add obvious exclusions with pragma statement (5801) `Sarah Charlotte Johnson`_
Add coverage exclusions for cli files (5800) `Sarah Charlotte Johnson`_
Add pragma statements (5749) `Sarah Charlotte Johnson`_
Remove pragma: no cover from distributed.cli.dask_ssh (5809) `Thomas Grainger`_
Add pragma - worker.py, client.py, stealing.py (5827) `Sarah Charlotte Johnson`_
Relax distributed / dask-core dependencies for pre-releases (5802) `Charles Blackmon-Luca`_
Remove test_ucx_config_w_env_var flaky condition (5765) `Peter Andreas Entschev`_
- Deprecate is_monotonic ( dask#8653 ) James Bourbeau
Released on February 11, 2022
Note
This is the last release with support for Python 3.7
Add region to to_zarr when using existing array ( dask#8590 ) Chris Roat
Add engine_kwargs support to dask.dataframe.to_sql ( dask#8609 ) Amir Kadivar
Add include_path_column arg to read_json ( dask#8603 ) Bryan Weber
Add expand_dims to Dask array ( dask#8687 ) Tom White
Add scheduler option to assert_eq utilities ( dask#8610 ) Xinrong Meng
Fix eye inconsistency with NumPy for dtype=None ( dask#8685 ) Tom White
Fix concatenate inconsistency with NumPy for axis=None ( dask#8686 ) Tom White
Type annotations, part 1 ( dask#8295 ) crusaderky
Really allow any iterable to be passed as a meta ( dask#8629 ) Julia Signell
Use map_partitions (Blockwise) in to_parquet ( dask#8487 ) Richard (Rick) Zamora
Result of reducing an array should not depend on its chunk-structure ( dask#8637 ) ParticularMiner
Pass place-holder metadata to map_partitions in ACA code path ( dask#8643 ) Richard (Rick) Zamora
Deprecate is_monotonic ( dask#8653 ) James Bourbeau
Remove some deprecations ( dask#8605 ) James Bourbeau
Add Domino Data Lab to Hosted / managed Dask clusters ( dask#8675 ) Ray Bell
Fix inter-linking and remove deprecated function ( dask#8715 ) Julia Signell
Fix imbalanced backticks. ( dask#8693 ) Matthias Bussonnier
Add documentation for high level graph visualization ( dask#8483 ) Genevieve Buckley
Update documentation of ProgressBar out parameter ( dask#8604 ) Pedro Silva
Improve documentation of dask.config.set ( dask#8705 ) crusaderky
Revert mention to mypy among type checkers ( dask#8699 ) crusaderky
Update warning handling in get_dummies tests ( dask#8651 ) James Bourbeau
Add a github changelog template ( dask#8714 ) Julia Signell
Update year in LICENSE.txt ( dask#8665 ) David Hoese
Update pre-commit version ( dask#8691 ) James Bourbeau
Include scipy in upstream CI build ( dask#8681 ) James Bourbeau
Temporarily pin scipy < 1.8.0 in CI ( dask#8683 ) James Bourbeau
Pin scipy to less than 1.8.0 in GPU CI ( dask#8698 ) Julia Signell
Avoid pytest.warns(None) in test_multi.py ( dask#8678 ) James Bourbeau
Update GHA concurrent job cancellation ( dask#8652 ) James Bourbeau
Make test__get_paths robust to site.PREFIXES being set ( dask#8644 ) James Bourbeau
Bump gpuCI PYTHON_VER to 3.9 ( dask#8642 ) Charles Blackmon-Luca
Released on February 11, 2022
Note
This is the last release with support for Python 3.7
Update client.scheduler_info in wait_for_workers (5785) `Matthew Rocklin`_
Increase robustness to TimeoutError during connect (5096) `Florian Jetter`_
Respect KeyboardInterrupt in sync (5758) `Thomas Grainger`_
Add workflow / recipe to generate Dask/distributed pre-releases (5636) `Charles Blackmon-Luca`_
Review Scheduler / Worker display repr (5746) `crusaderky`_
AMM: Graceful Worker Retirement (5381) `crusaderky`_
AMM: tentatively stabilize flaky tests around worker pause (5735) `crusaderky`_
AMM: speed up and stabilize test_memory (5737) `crusaderky`_
Defer pandas import on worker in P2P shuffle (5695) `Gabe Joseph`_
Fix for distributed.worker.memory.target=False and spill=0.7 (5788) `crusaderky`_
Transition flight to missing if no who_has (5653) `Florian Jetter`_
Remove deprecated ncores (5780) `crusaderky`_
Deprecate registering plugins by class (5699) `Thomas Grainger`_
Deprecate --nprocs option for dask-worker CLI (5641) `Bryan W. Weber`_
Fix imbalanced backticks (5784) `Matthias Bussonnier`_
xfail test_worker_reconnects_mid_compute (5797) `crusaderky`_
Fix linting CI build (5794) `James Bourbeau`_
Update pre-commit versions (5782) `James Bourbeau`_
Reactivate pytest_resourceleaks (5771) `crusaderky`_
Set test assumption for test_client_timeout (5790) `Florian Jetter`_
Remove client timeout from test_ucx_config_w_env_var (5792) `Florian Jetter`_
Remove test_failed_worker_without_warning (5789) `Florian Jetter`_
Fix longitudinal report (5783) `Ian Rose`_
Fix flaky test_robust_to_bad_sizeof_estimates (5753) `crusaderky`_
Revert "Pin coverage to 6.2 (5716)" (5770) `Thomas Grainger`_
Trigger test runs periodically to increases failure statistics (5769) `Florian Jetter`_
More fault tolerant test report (5732) `Ian Rose`_
Pin pillow<9 to work around torch incompatibility (5755) `Thomas Grainger`_
Overhaul check_process_leak (5739) `crusaderky`_
Fix flaky test_exit_callback test (5713) `Jim Crist-Harif`_
Generate tests summary (5710) `crusaderky`_
Upload different architectured pre-releases separately (5741) `Charles Blackmon-Luca`_
Ignore non-test directories (5720) `Gabe Joseph`_
Bump gpuCI PYTHON_VER to 3.9 (5738) `Charles Blackmon-Luca`_
Regression: threads noted down before they start (5796) `crusaderky`_
- Pandas compat: Deprecate append when pandas >= 1.4.0 ( dask#8617 ) Julia Signell
Released on January 28, 2022
Add dask.dataframe.series.view() ( dask#8533 ) Pavithra Eswaramoorthy
Update tz for fastparquet + pandas 1.4.0 ( dask#8626 ) Martin Durant
Cleaning up misc tests for pandas compat ( dask#8623 ) Julia Signell
Moving to SQLAlchemy >= 1.4 ( dask#8158 ) McToel
Pandas compat: Filter sparse warnings ( dask#8621 ) Julia Signell
Fail if meta is not a pandas object ( dask#8563 ) Julia Signell
Use fsspec.parquet module for better remote-storage read_parquet performance ( dask#8339 ) Richard (Rick) Zamora
Move DataFrame ACA aggregations to HLG ( dask#8468 ) Richard (Rick) Zamora
Add optional information about originating function call in DataFrameIOLayer ( dask#8453 ) Richard (Rick) Zamora
Blockwise array creation redux ( dask#7417 ) Ian Rose
Refactor config default search path retrieval ( dask#8573 ) James Bourbeau
Add optimize_graph flag to Bag.to_dataframe function ( dask#8486 ) Maxim Lippeveld
Make sure that delayed output operations still return lists of paths ( dask#8498 ) Julia Signell
Pandas compat: Fix to_frame name to not pass None ( dask#8554 ) Julia Signell
Pandas compat: Fix axis=None warning ( dask#8555 ) Julia Signell
Expand Dask YAML config search directories ( dask#8531 ) abergou
Fix groupby.cumsum with series grouped by index ( dask#8588 ) Julia Signell
Fix derived_from for pandas methods ( dask#8612 ) Thomas J. Fan
Enforce boolean ascending for sort_values ( dask#8440 ) Charles Blackmon-Luca
Fix parsing of setitem indices ( dask#8601 ) David Hassell
Avoid divide by zero in slicing ( dask#8597 ) Doug Davis
Downgrade meta error in ( dask#8563 ) to warning ( dask#8628 ) Julia Signell
Pandas compat: Deprecate append when pandas >= 1.4.0 ( dask#8617 ) Julia Signell
Replace outdated columns argument with meta in DataFrame constructor ( dask#8614 ) kori73
Refactor deploying docs ( dask#8602 ) Jacob Tomlinson
Pin coverage in CI ( dask#8631 ) James Bourbeau
Move cached_cumsum imports to be from dask.utils ( dask#8606 ) James Bourbeau
Update gpuCI RAPIDS_VER to 22.04 ( dask#8600 )
Update cocstring for from_delayed function ( dask#8576 ) Kirito1397
Handle plot_width / plot_height deprecations ( dask#8544 ) Bryan Van de Ven
Remove unnecessary pyyaml importorskip ( dask#8562 ) James Bourbeau
Specify scheduler in DataFrame assert_eq ( dask#8559 ) Gabe Joseph
Released on January 28, 2022
P2P shuffle skeleton (5520) `Gabe Joseph`_
Fix <Task pending name='...' coro=<Client._handle_report()> (5721) `Thomas Grainger`_
Add distributed.client.security-loader config (5693) `Jim Crist-Harif`_
Avoid Client._handle_report cancelling itself on Client._close (5672) `Thomas Grainger`_
Paused workers shouldn't steal tasks (5665) `crusaderky`_
Add option for timestamps from output of Node.get_logs (4932) `Charles Blackmon-Luca`_
Don't use time.time() or IOLoop.time() (5661) `crusaderky`_
Raise plugin exceptions on Worker.start() (4298) `Peter Andreas Entschev`_
Fixing docstrings (5696) `Julia Signell`_
Fix typo in Client.run docstring (5687) `Thomas Grainger`_
Update client.py docstrings (5670) `Tim Harris`_
Skip shuffle tests if pandas / dask.dataframe not installed (5730) `James Bourbeau`_
Improve test coverage (5655) `Sarah Charlotte Johnson`_
Test report improvements (5714) `Ian Rose`_
P2P shuffle: ignore row order in tests (5706) `Gabe Joseph`_
Fix flaky test_no_reconnect[--no-nanny] (5686) `Thomas Grainger`_
Pin coverage to 6.2 (5716) `Thomas Grainger`_
Check for new name of timeouts artifact and be more fault tolerant (5707) `Ian Rose`_
Revisit rebalance unit tests (5697) `crusaderky`_
Update comment in rearrange_by_column_p2p (5701) `James Bourbeau`_
Update gpuCI RAPIDS_VER to 22.04 (5676)
Fix groupby test after meta requirements got stricter in Dask PR#8563 (5694) `Julia Signell`_
Fix flaky test_close_gracefully and test_lifetime (5677) `crusaderky`_
Fix flaky test_workspace_concurrency (5690) `crusaderky`_
Fix flaky test_shuffle_extension.py::test_get_partition (5689) `Gabe Joseph`_
Fix flaky test_dump_cluster_unresponsive_remote_worker (5679) `crusaderky`_
Dump cluster state on all test failures (5674) `crusaderky`_
Update license format (5652) `James Bourbeau`_
Fix flaky test_drop_with_paused_workers_with_running_tasks_3_4 (5673) `crusaderky`_
Do not raise an exception if the GitHub token cannot be found (5668) `Florian Jetter`_
- Add groupby.shift method ( dask#8522 ) kori73
Released on January 14, 2022
Add groupby.shift method ( dask#8522 ) kori73
Add DataFrame.nunique ( dask#8479 ) Sarah Charlotte Johnson
Add da.ndim to match np.ndim ( dask#8502 ) Julia Signell
Only show percentile interpolation= keyword warning if NumPy version >= 1.22 ( dask#8564 ) Julia Signell
Raise PerformanceWarning when limit and "array.slicing.split-large-chunks" are None ( dask#8511 ) Julia Signell
Define normalize_seq function at import time ( dask#8521 ) Illviljan
Ensure that divisions are alway tuples ( dask#8393 ) Charles Blackmon-Luca
Allow a callable scheduler for bag.groupby ( dask#8492 ) Julia Signell
Save Zarr arrays with dask-on-ray scheduler ( dask#8472 ) TnTo
Make byte blocks more even in read_bytes ( dask#8459 ) Martin Durant
Improved the efficiency of matmul() by completely removing concatenation ( dask#8423 ) ParticularMiner
Limit max chunk size when reshaping dask arrays ( dask#8124 ) Genevieve Buckley
Changes for fastparquet superthrift ( dask#8470 ) Martin Durant
Fix boolean indices in array assignment ( dask#8538 ) David Hassell
Detect default dtype on array-likes ( dask#8501 ) aeisenbarth
Fix optimize_blockwise bug for duplicate dependency names ( dask#8542 ) Richard (Rick) Zamora
Update warnings for DataFrame.GroupBy.apply and transform ( dask#8507 ) Sarah Charlotte Johnson
Track HLG layer name in Delayed ( dask#8452 ) Gabe Joseph
Fix single item nanmin and nanmax reductions ( dask#8484 ) Julia Signell
Make read_csv with comment kwarg work even if there is a comment in the header ( dask#8433 ) Julia Signell
Replace interpolation with method and method with internal_method ( dask#8525 ) Julia Signell
Remove daily stock demo utility ( dask#8477 ) James Bourbeau
Add a join example in docs that be run with copy/paste ( dask#8520 ) kori73
Mention dashboard link in config ( dask#8510 ) Ray Bell
Fix changelog section hyperlinks ( dask#8534 ) Aneesh Nema
Hyphenate “single-machine scheduler” for consistency ( dask#8519 ) Deepyaman Datta
Normalize whitespace in doctests in slicing.py ( dask#8512 ) Maren Westermann
Best practices storage line typo ( dask#8529 ) Michael Delgado
Update figures ( dask#8401 ) Sarah Charlotte Johnson
Remove pyarrow -only reference from split_row_groups in read_parquet docstring ( dask#8490 ) Naty Clementi
Remove obsolete LocalFileSystem tests that fail for fsspec>=2022.1.0 ( dask#8565 ) Richard (Rick) Zamora
Tweak: “RuntimeWarning: invalid value encountered in reciprocal” ( dask#8561 ) crusaderky
Fix skipna=None for DataFrame.sem ( dask#8556 ) Julia Signell
Fix PANDAS_GT_140 ( dask#8552 ) Julia Signell
Collections with HLG must always implement dask_layers ( dask#8548 ) crusaderky
Work around race condition in import llvmlite ( dask#8550 ) crusaderky
Set a minimum version for pyyaml ( dask#8545 ) Gaurav Sheni
Adding nodefaults to environments to fix tiledb + mac issue ( dask#8505 ) Julia Signell
Set ceiling for setuptools ( dask#8509 ) Julia Signell
Add workflow / recipe to generate Dask nightlies ( dask#8469 ) Charles Blackmon-Luca
Bump gpuCI CUDA_VER to 11.5 ( dask#8489 ) Charles Blackmon-Luca
Released on January 14, 2022
Task group stacked area chart (5320) `Ian Rose`_
Support configuring TLS min/max version (5594) `Jim Crist-Harif`_
Use asyncio for TCP/TLS comms (5450) `Jim Crist-Harif`_
Close comm on CancelledError (5656) `crusaderky`_
Don't drop from the only running worker (5626) `crusaderky`_
Transfer priority (5625) `crusaderky`_
Add RPC call for getting task prefixes (5617) `Benjamin Zaitlen`_
Long running occupancy (5395) `Florian Jetter`_
Handle errors on individual workers in run/broadcast (5590) `crusaderky`_
Allow work stealing in case there are heterogeneous resources for thief and victim (5573) `Florian Jetter`_
Disable NVML monitoring on WSL (5568) `Charles Blackmon-Luca`_
Ensure uniqueness of steal stimulus ID (5620) `Florian Jetter`_
Fix KeyError: 'startstops' in performance report (5608) `Gabe Joseph`_
Story timestamps can be slightly in the future (5612) `crusaderky`_
Prevent RecursionError in Worker._to_dict (5591) `crusaderky`_
Ensure distributed can be imported in thread (5593) `Jim Crist-Harif`_
Fix changelog section hyperlinks (5638) `Aneesh Nema`_
Fix typo in unpublish_dataset example invocation (5615) `Deepyaman Datta`_
Fix typo in test report badge in README (5586) `James Bourbeau`_
Cosmetic changes to distributed.comm (5657) `crusaderky`_
Consolidate broken comm testing utilities (5654) `James Bourbeau`_
Fix concurrency assumptions for test_worker_reconnects_mid_compute (5623) `Florian Jetter`_
Handle Bokeh 3.0 CDSView change (5643) `Bryan Van de Ven`_
Use packaging rather than distutils to get version (5624) `Julia Signell`_
XFAIL tls explicit comm close test on py3.7 (5639) `Jim Crist-Harif`_
Mark some additional ucx-py tests for GPU (5603) `Charles Blackmon-Luca`_
Rename ensure_default_get and add test (5609) `Naty Clementi`_
Remove render_mode kwarg from boekh LabelSets (5616) `Garry O'Donnell`_
Add lambda support to assert_worker_story (5618) `crusaderky`_
Ignore file not found warning for timeout artifact (5619) `Florian Jetter`_
Improved cluster state dump in @gen_cluster (5592) `crusaderky`_
Work around SSL failures on MacOS CI (5606) `crusaderky`_
Bump gpuCI CUDA_VER to 11.5 (5604) `Charles Blackmon-Luca`_
assert_worker_story (5598) `crusaderky`_
distributed.versions code refresh (5600) `crusaderky`_
Updates to gpuCI and test_ucx_config_w_env_var (5595) `James Bourbeau`_
Replace blacklist/whitelist with blocklist/allowlist (5589) `crusaderky`_
Distributed test report (5583) `Ian Rose`_
AMM: cosmetic tweaks (5584) `crusaderky`_
- Deprecate token keyword argument to map_blocks ( dask#8464 ) James Bourbeau
Released on December 10, 2021
Add Series and Index is_monotonic* methods ( dask#8304 ) Daniel Mesejo-León
Blockwise map_partitions with partition_info ( dask#8310 ) Gabe Joseph
Better error message for length of array with unknown chunk sizes ( dask#8436 ) Doug Davis
Use by instead of index internally on the Groupby class ( dask#8441 ) Julia Signell
Allow custom sort functions for sort_values ( dask#8345 ) Charles Blackmon-Luca
Add warning to read_parquet when statistics and partitions are misaligned ( dask#8416 ) Richard (Rick) Zamora
Support where argument in ufuncs ( dask#8253 ) mihir
Make visualize more consistent with compute ( dask#8328 ) JSKenyon
Fix map_blocks not using own arguments in name generation ( dask#8462 ) David Hoese
Fix for index error with reading empty parquet file ( dask#8410 ) Sarah Charlotte Johnson
Fix nullable-dtype error when writing partitioned parquet data ( dask#8400 ) Richard (Rick) Zamora
Fix CSV header bug ( dask#8413 ) Richard (Rick) Zamora
Fix empty chunk causes exception in nanmin / nanmax ( dask#8375 ) Boaz Mohar
Deprecate token keyword argument to map_blocks ( dask#8464 ) James Bourbeau
Deprecation warning for default value of boundary kwarg in map_overlap ( dask#8397 ) Genevieve Buckley
Clarify block_info documentation ( dask#8425 ) Genevieve Buckley
Output from alt text sprint ( dask#8456 ) Sarah Charlotte Johnson
Update talks and presentations ( dask#8370 ) Naty Clementi
Update Anaconda link in “Paid support” section of docs ( dask#8427 ) Martin Durant
Fixed broken dask-gateway link in ecosystem.rst ( dask#8424 ) ofirr
Fix CuPy doctest error ( dask#8412 ) Genevieve Buckley
Bump Bokeh min version to 2.1.1 ( dask#8431 ) Bryan Van de Ven
Fix following fsspec=2021.11.1 release ( dask#8428 ) Martin Durant
Add dask/ml.py to pytest exclude list ( dask#8414 ) Genevieve Buckley
Update gpuCI RAPIDS_VER to 22.02 ( dask#8394 )
Unpin graphviz and improve package management in environment-3.7 ( dask#8411 ) Julia Signell
Released on December 10, 2021
Support pytest fixures and parametrize with gen_test (5532) `Fábio Rosado`_
Allow idempotent scheduler plugins to be registered via the RPC (5545) `Jacob Tomlinson`_
AMM logging (5530) `crusaderky`_
Raise error if asyncssh isn't installed when using SSHCluster (5535) `Fábio Rosado`_
Allow None in UCX configuration schema (5534) `Fábio Rosado`_
Add distributed.comm.ucx.create-cuda-context config (5526) `Peter Andreas Entschev`_
Allow unknown tasks to be stolen (5572) `Florian Jetter`_
Further RecursionError fixes in recursive_to_repr (5579) `crusaderky`_
Revisit recursive_to_dict (5557) `crusaderky`_
Handle UCXUnreachable exception (5556) `Peter Andreas Entschev`_
Separate Coordination section in API docs (5412) `Gabe Joseph`_
Improved documentation for processing state and paused workers (4985) `Maximilian Roos`_
Fix typo in TaskGroupGraph.update_layout comment (5536) `Hristo Georgiev`_
Update documentation for register_worker_plugin (5533) `crusaderky`_
Mark test_gpu_monitoring_recent as flaky (5540) `Peter Andreas Entschev`_
Await worker arrival in SSH test_nprocs (5575) `James Bourbeau`_
AMM: Test that acquire-replicas of a task already in flight is a no-op (5566) `crusaderky`_
Make sure artifacts are tagged with CI partition so they don't race and overwrite each other (5571) `Ian Rose`_
Minor refactoring and commentary in worker state machine (5563) `Florian Jetter`_
Fix test_ucx_unreachable on UCX < 1.12 (5562) `Peter Andreas Entschev`_
Bump Bokeh min version to 2.1.1 (5548) `Bryan Van de Ven`_
Update gen_test tests to be more robust (5551) `James Bourbeau`_
Skip test_ucx_unreachable if UCXUnreachable is unavailable (5560) `Peter Andreas Entschev`_
Update gpuCI RAPIDS_VER to 22.02 (5544)
Add workflow to automate gpuCI updates (5541) `Charles Blackmon-Luca`_
Actually support uvloop in distributed (5531) `Jim Crist-Harif`_
Standardize UCX config separator to - (5539) `Peter Andreas Entschev`_
- Only run gpuCI bump script daily ( dask#8404 ) Charles Blackmon-Luca
Released on November 19, 2021
Only run gpuCI bump script daily ( dask#8404 ) Charles Blackmon-Luca
Actually ignore index when asked in assert_eq ( dask#8396 ) Gabe Joseph
Ensure single-partition join divisions is tuple ( dask#8389 ) Charles Blackmon-Luca
Try to make divisions behavior clearer ( dask#8379 ) Julia Signell
Fix typo in set_index partition_size parameter description ( dask#8384 ) FredericOdermatt
Use blockwise in single_partition_join ( dask#8341 ) Gabe Joseph
Use more explicit keyword arguments ( dask#8354 ) Boaz Mohar
Fix .loc of DataFrame with nullable boolean dtype ( dask#8368 ) Marco Rossi
Parameterize shuffle implementation in tests ( dask#8250 ) Ian Rose
Remove some doc build warnings ( dask#8369 ) Boaz Mohar
Include properties in array API docs ( dask#8356 ) Julia Signell
Fix Zarr for upstream ( dask#8367 ) Julia Signell
Pin graphviz to avoid issue with windows and Python 3.7 ( dask#8365 ) Julia Signell
Import graphviz.Diagraph from top of module, not from dot ( dask#8363 ) Julia Signell
Released on November 19, 2021
Ensure cancelled error transition can properly release a key (5528) `Florian Jetter`_
Refactor release key (5507) `Florian Jetter`_
Fix deadlock caused by an erred task (executing->cancelled->error) (5503) `Florian Jetter`_
Resolve KeyError-related deadlock (5525) `Florian Jetter`_
Remove extra quotation in worker failure docs (5518) `James Bourbeau`_
Ensure safe_sizeof warning is accurate (5519) `James Bourbeau`_
Visualize cluster-wide memory usage over time (5477) `crusaderky`_
AMM: redesign start/stop methods (5476) `crusaderky`_
Preserve contextvars during comm offload (5486) `Gabe Joseph`_
Deserialization: zero-copy merge subframes when possible (5208) `Gabe Joseph`_
Add support for multiple workers per SSH connection (5506) `Jacob Tomlinson`_
Client method to dump cluster state (5470) `Florian Jetter`_
Patch release to update distributed dependency to version 2021.11.1 .
Released on November 8, 2021
Patch release to update distributed dependency to version 2021.11.1 .
Released on November 8, 2021
Revert "Avoid multiple blocking calls by gathering UCX frames" (5505) `Peter Andreas Entschev`_
- Deprecate AxisError ( dask#8305 ) crusaderky
Released on November 5, 2021
Fx required_extension behavior in read_parquet ( dask#8351 ) Richard (Rick) Zamora
Add align_dataframes to map_partitions to broadcast a dataframe passed as an arg ( dask#6628 ) Julia Signell
Better handling for arrays/series of keys in dask.dataframe.loc ( dask#8254 ) Julia Signell
Point users to Discourse ( dask#8332 ) Ian Rose
Add name_function option to to_parquet ( dask#7682 ) Matthew Powers
Get rid of environment-latest.yml and update to Python 3.9 ( dask#8275 ) Julia Signell
Require newer s3fs in CI ( dask#8336 ) James Bourbeau
Groupby Rolling ( dask#8176 ) Julia Signell
Add more ordering diagnostics to dask.visualize ( dask#7992 ) Erik Welch
Use HighLevelGraph optimizations for delayed ( dask#8316 ) Ian Rose
demo_tuples produces malformed HighLevelGraph ( dask#8325 ) crusaderky
Dask calendar should show events in local time ( dask#8312 ) Genevieve Buckley
Fix flaky test_interrupt ( dask#8314 ) crusaderky
Deprecate AxisError ( dask#8305 ) crusaderky
Fix name of cuDF in extension documentation. ( dask#8311 ) Vyas Ramasubramani
Add single eq operator (=) to parquet filters ( dask#8300 ) Ayush Dattagupta
Improve support for Spark output in read_parquet ( dask#8274 ) Richard (Rick) Zamora
Add dask.ml module ( dask#6384 ) Matthew Rocklin
CI fixups ( dask#8298 ) James Bourbeau
Make slice errors match NumPy ( dask#8248 ) Julia Signell
Fix API docs misrendering with new sphinx theme ( dask#8296 ) Julia Signell
Replace block property with blockview for array-like operations on blocks ( dask#8242 ) Davis Bennett
Deprecate file_path and make it possible to save from within a notebook ( dask#8283 ) Julia Signell
Released on November 5, 2021
Fix cluster_info sync handling (5488) `Jim Crist-Harif`_
Serialization family to preserve headers of the underlying dumps functions (5380) `Mads R. B. Kristensen`_
Point users to Discourse (5489) `James Bourbeau`_
Avoid multiple blocking calls by gathering UCX frames (5487) `Peter Andreas Entschev`_
Update all UCX tests to use asyncio marker (5484) `Peter Andreas Entschev`_
Register UCX close callback (5474) `Peter Andreas Entschev`_
Use older version of pynvml.nvmlDeviceGetComputeRunningProcesses (5469) `Jacob Tomlinson`_
Check for Futures from the wrong Client in gather (5468) `Gabe Joseph`_
Fix performance_report when used with %%time or %%timeit magic (5463) `Erik Welch`_
Scatter and replicate to avoid paused workers (5441) `crusaderky`_
AMM to avoid paused workers (5440) `crusaderky`_
Update changelog with LocalCluster host security note (5462) `Jim Crist-Harif`_
- Deprecate inplace argument for Dask series renaming ( dask#8136 ) Marcel Coetzee
Released on October 22, 2021
da.store to create well-formed HighLevelGraph ( dask#8261 ) crusaderky
CI: force nightly pyarrow in the upstream build ( dask#8281 ) Joris Van den Bossche
Remove chest ( dask#8279 ) James Bourbeau
Skip doctests if optional dependencies are not installed ( dask#8258 ) Genevieve Buckley
Update tmpdir and tmpfile context manager docstrings ( dask#8270 ) Daniel Mesejo-León
Unregister callbacks in doctests ( dask#8276 ) James Bourbeau
Fix typo in docs ( dask#8277 ) JoranDox
Stale label GitHub action ( dask#8244 ) Genevieve Buckley
Client-shutdown method appears twice ( dask#8273 ) German Shiklov
Add pre-commit to test requirements ( dask#8257 ) Genevieve Buckley
Refactor read_metadata in fastparquet engine ( dask#8092 ) Richard (Rick) Zamora
Support Path objects in from_zarr ( dask#8266 ) Samuel Gaist
Make nested redirects work ( dask#8272 ) Julia Signell
Set memory_usage to True if verbose is True in info ( dask#8222 ) Kinshuk Dua
Remove individual API doc pages from sphinx toctree ( dask#8238 ) James Bourbeau
Ignore whitespace in gufunc signature ( dask#8267 ) James Bourbeau
Add workflow to update gpuCI ( dask#8215 ) Charles Blackmon-Luca
DataFrame.head shouldn’t warn when there’s one partition ( dask#8091 ) Pankaj Patil
Ignore arrow doctests if pyarrow not installed ( dask#8256 ) Genevieve Buckley
Fix debugging.html redirect ( dask#8251 ) James Bourbeau
Fix null sorting for single partition dataframes ( dask#8225 ) Charles Blackmon-Luca
Fix setup.html redirect ( dask#8249 ) Florian Jetter
Run pyupgrade in CI ( dask#8246 ) crusaderky
Fix label typo in upstream CI build ( dask#8237 ) James Bourbeau
Add support for “dependent” columns in DataFrame.assign ( dask#8086 ) Suriya Senthilkumar
add NumPy array of Dask keys to Array ( dask#7922 ) Davis Bennett
Remove unnecessary dask.multiprocessing import in docs ( dask#8240 ) Ray Bell
Adjust retrieving _max_workers from Executor ( dask#8228 ) John A Kirkham
Update function signatures in delayed best practices docs ( dask#8231 ) Vũ Trung Đức
Docs reoganization ( dask#7984 ) Julia Signell
Fix df.quantile on all missing data ( dask#8129 ) Julia Signell
Add tokenize.ensure-deterministic config option ( dask#7413 ) Hristo Georgiev
Use inclusive rather than closed with pandas>=1.4.0 and pd.date_range ( dask#8213 ) Julia Signell
Add dask-gateway , Coiled, and Saturn-Cloud to list of Dask setup tools ( dask#7814 ) Kristopher Overholt
Ensure existing futures get passed as deps when serializing HighLevelGraph layers ( dask#8199 ) Jim Crist-Harif
Make sure that the divisions of the single partition merge is left ( dask#8162 ) Julia Signell
Refactor read_metadata in pyarrow parquet engines ( dask#8072 ) Richard (Rick) Zamora
Support negative drop_axis in map_blocks and map_overlap ( dask#8192 ) Gregory R. Lee
Fix upstream tests ( dask#8205 ) Julia Signell
Add support for scalar item assignment by Series ( dask#8195 ) Charles Blackmon-Luca
Add some basic examples to doc strings on dask.bag all , any , count methods ( dask#7630 ) Nathan Danielsen
Don’t have upstream report depend on commit message ( dask#8202 ) James Bourbeau
Ensure upstream CI cron job runs ( dask#8200 ) James Bourbeau
Use pytest.param to properly label param-specific GPU tests ( dask#8197 ) Charles Blackmon-Luca
Add test_set_index to tests ran on gpuCI ( dask#8198 ) Charles Blackmon-Luca
Suppress tmpfile OSError ( dask#8191 ) James Bourbeau
Use s.isna instead of pd.isna(s) in set_partitions_pre (fix cudf CI) ( dask#8193 ) Charles Blackmon-Luca
Open an issue for test-upstream failures ( dask#8067 ) Wallace Reis
Fix to_parquet bug in call to pyarrow.parquet.read_metadata ( dask#8186 ) Richard (Rick) Zamora
Add handling for null values in sort_values ( dask#8167 ) Charles Blackmon-Luca
Bump RAPIDS_VER for gpuCI ( dask#8184 ) Charles Blackmon-Luca
Dispatch walks MRO for lazily registered handlers ( dask#8185 ) Jim Crist-Harif
Configure SSHCluster instructions ( dask#8181 ) Ray Bell
Preserve HighLevelGraphs in DataFrame.from_delayed ( dask#8174 ) Gabe Joseph
Deprecate inplace argument for Dask series renaming ( dask#8136 ) Marcel Coetzee
Fix rolling for compatibility with pandas > 1.3.0 ( dask#8150 ) Julia Signell
Raise error when setitem on unknown chunks ( dask#8166 ) Julia Signell
Include divisions when doing Index.to_series ( dask#8165 ) Julia Signell
Released on October 22, 2021
Note
This release fixed a potential security vulnerability relating to single-machine Dask clusters. Clusters started with dask.distributed.LocalCluster or dask.distributed.Client() (which defaults to using LocalCluster) would mistakenly configure their respective Dask workers to listen on external interfaces (typically with a randomly selected high port) rather than only on localhost. A Dask cluster created using this method AND running on a machine that has these ports exposed could be used by a sophisticated attacker to enable remote code execution. Users running on machines with standard firewalls in place should not be affected. This vulnerability is documented in CVE-2021-42343, and is fixed in this release (5427). Thanks to Jean-Pierre van Riel for discovering and reporting the issue.
Ensure resumed flight tasks are still fetched (5426) `Florian Jetter`_
AMM high level documentation (5456) `crusaderky`_
Provide stack for suspended coro in test timeout (5446) `Florian Jetter`_
Handle UCXNotConnected error (5449) `Peter Andreas Entschev`_
Don't schedule tasks to paused workers (5431) `crusaderky`_
Use pip install . instead of calling setup.py (5442) `Matthias Bussonnier`_
Increase latency for stealing (5390) `Florian Jetter`_
Type annotations for Worker and gen_cluster (5438) `crusaderky`_
Ensure reconnecting workers do not loose required data (5436) `Florian Jetter`_
Mark test_gather_dep* as xfail (5432) `crusaderky`_
Remove zict-related skips (5429) `James Bourbeau`_
Pass host through LocalCluster to workers (5427) `Jim Crist-Harif`_
Fixes async warnings in UCX tests (5396) `Peter Andreas Entschev`_
Resolve work stealing deadlock caused by race in move_task_confirm (5379) `Florian Jetter`_
Add scroll to dashboard dropdown (5418) `Jacob Tomlinson`_
Fix regression where unknown tasks were allowed to be stolen (5392) `Florian Jetter`_
Enable mypy in CI 2/2 (5348) `crusaderky`_
Rewrite test_client_timeout (5397) `crusaderky`_
Simple SSHCluster example (5349) `Ray Bell`_
Do not attempt to fetch keys which are no longer in flight (5160) `Florian Jetter`_
Revisit Scheduler.add_plugin / Scheduler.remove_plugin (5394) `crusaderky`_
Fix flaky test_WorkerPlugin_overwrite (5398) `crusaderky`_
Active Memory Manager to use bulk comms (5357) `crusaderky`_
Add coverage badge to README (5382) `James Bourbeau`_
Mark test_stress_creation_and_deletion as xfail (5393) `James Bourbeau`_
Mark test_worker_reconnects_mid_compute* tests as flaky (5378) `James Bourbeau`_
Use new Dask docs theme (5391) `Jacob Tomlinson`_
Remove pytest.mark.repeat from test_prometheus_collect_task_states (5376) `James Bourbeau`_
Log original exception upon compute failure (5387) `Florian Jetter`_
Add code coverage (4670) `James Bourbeau`_
Fix zombie worker tasks after missing transition (5316) `Florian Jetter`_
Add support for partial functions to iscoroutinefunction util (5344) `Michael Adkins`_
Mark distributed/tests/test_client.py::test_profile_server as flaky (5375) `James Bourbeau`_
Enable mypy in CI 1/2 (5328) `crusaderky`_
Ensure dask-worker and dask-scheduler pick up preload configuration values (5365) `James Bourbeau`_
Use dask-spec for SSHCluster (5191) `Charles Blackmon-Luca`_
Update _cluster_info dict in __init__ (5305) `Jacob Tomlinson`_
Use Dask temporary file utility (5361) `James Bourbeau`_
Avoid deprecated random set sampling (5360) `James Bourbeau`_
Add check for unsupported NVML metrics (5343) `Charles Blackmon-Luca`_
Workers submit a reply to the scheduler if replica removal was rejected (5356) `Florian Jetter`_
Pickle exception and traceback immediately (5338) `Mads R. B. Kristensen`_
Reinstate: AMM ReduceReplicas to iterate only on replicated tasks (5341) `crusaderky`_
Sync worker status to the scheduler; new 'paused' status (5330) `crusaderky`_
Add pre-commit to environments (5362) `Ray Bell`_
Worker State Machine Refactor: clean up dead handlers (5359) `crusaderky`_
Bump RAPIDS_VER for gpuCI (5358) `Charles Blackmon-Luca`_
Generate Cython HTML annotations (5321) `crusaderky`_
Worker state machine refactor (5046) `Florian Jetter`_
fsspec and s3fs git tips are incompatible (5346) `crusaderky`_
Fix test_many_Progress and others (5329) `crusaderky`_
Run multiple AMMs in parallel (5339) `crusaderky`_
Enhance AMM docstrings (5340) `crusaderky`_
Run pyupgrade in CI (5327) `crusaderky`_
Fix typo in client side example foundations.rst (5336) `Genevieve Buckley`_
- Remove references to pd.Int64Index in anticipation of deprecation ( dask#8144 ) Julia Signell
Released on September 21, 2021
Fix groupby for future pandas ( dask#8151 ) Julia Signell
Remove warning filters in tests that are no longer needed ( dask#8155 ) Julia Signell
Add link to diagnostic visualize function in local diagnostic docs ( dask#8157 ) David Hoese
Add datetime_is_numeric to dataframe.describe ( dask#7719 ) Julia Signell
Remove references to pd.Int64Index in anticipation of deprecation ( dask#8144 ) Julia Signell
Use loc if needed for series get_item ( dask#7953 ) Julia Signell
Specifically ignore warnings on mean for empty slices ( dask#8125 ) Julia Signell
Skip groupby nunique test for pandas >= 1.3.3 ( dask#8142 ) Julia Signell
Implement ascending arg for sort_values ( dask#8130 ) Charles Blackmon-Luca
Replace operator.getitem ( dask#8015 ) Naty Clementi
Deprecate zero_broadcast_dimensions and homogeneous_deepmap ( dask#8134 ) SnkSynthesis
Add error if drop_index is negative ( dask#8064 ) neel iyer
Allow scheduler to be an Executor ( dask#8112 ) John A Kirkham
Handle asarray / asanyarray cases where like is a dask.Array ( dask#8128 ) Peter Andreas Entschev
Fix index_col duplication if index_col is type str ( dask#7661 ) McToel
Add dtype and order to asarray and asanyarray definitions ( dask#8106 ) Julia Signell
Deprecate dask.dataframe.Series.contains ( dask#7914 ) Julia Signell
Fix edge case with like -arrays in _wrapped_qr ( dask#8122 ) Peter Andreas Entschev
Deprecate boundary_slice kwarg: kind for pandas compat ( dask#8037 ) Julia Signell
Released on September 21, 2021
Revert AMM ReduceReplicas and parallel AMMs updates (5335) `James Bourbeau`_
Run multiple AMMs in parallel (5315) `crusaderky`_
AMM ReduceReplicas to iterate only on replicated tasks (5297) `crusaderky`_
Add type annotations to various functions within distributed.worker (5290) `Tom Forbes`_
Mark test_ucx_config_w_env_var flaky on UCX < 1.11 (5262) `Peter Andreas Entschev`_
Warn if CUDA context is created on incorrect device in UCX (5308) `Peter Andreas Entschev`_
Remove redundant timeouts from test_client (5314) `crusaderky`_
Allow Client to subscribe to events // Remote printing and warning (5217) `Florian Jetter`_
Test pickle protocols 4 & 5 (5313) `jakirkham`_
Fix-up test_pickle_empty (5303) `jakirkham`_
Increase timeout for test_worker_reconnects_mid_compute_multiple_states_on_scheduler (5304) `Florian Jetter`_
Add synced dict between cluster and scheduler to store cluster info (5033) `Jacob Tomlinson`_
Update test_sub_submit_priority (5301) `James Bourbeau`_
Revert "Add test setup fixture (5242)" (5300) `James Bourbeau`_
Fix flaky test_worker_reconnects_mid_compute (5299) `Florian Jetter`_
Use gen_test in test_adaptive (5298) `crusaderky`_
Increase worker.suspicious_counter threshold (5228) `Florian Jetter`_
Active Memory Manager framework + discard excess replicas (5111) `crusaderky`_
Add test setup fixture (5242) `James Bourbeau`_
- Fewer open files ( dask#7303 ) Julia Signell
Released on September 3, 2021
Fewer open files ( dask#7303 ) Julia Signell
Add FileNotFound to expected http errors ( dask#8109 ) Martin Durant
Add DataFrame.sort_values to API docs ( dask#8107 ) Benjamin Zaitlen
Change to dask.order : be more eager at times ( dask#7929 ) Erik Welch
Add pytest color to CI ( dask#8090 ) James Bourbeau
FIX: make_people works with processes scheduler ( dask#8103 ) Dahn
Adds deep param to Dataframe copy method and restrict it to False ( dask#8068 ) João Paulo Lacerda
Fix typo in configuration docs ( dask#8104 ) Robert Hales
Update formatting in DataFrame.query docstring ( dask#8100 ) James Bourbeau
Un-xfail sparse tests for 0.13.0 release ( dask#8102 ) James Bourbeau
Add axes property to DataFrame and Series ( dask#8069 ) Jordan Jensen
Add CuPy support in da.unique (values only) ( dask#8021 ) Peter Andreas Entschev
Unit tests for sparse.zeros_like (xfailed) ( dask#8093 ) crusaderky
Add explicit like kwarg support to array creation functions ( dask#8054 ) Peter Andreas Entschev
Separate Array and DataFrame mindeps builds ( dask#8079 ) James Bourbeau
Fork out percentile_dispatch to dask.array ( dask#8083 ) GALI PREM SAGAR
Ensure filepath exists in to_parquet ( dask#8057 ) James Bourbeau
Update scheduler plugin usage in test_scheduler_highlevel_graph_unpack_import ( dask#8080 ) James Bourbeau
Add DataFrame.shuffle to API docs ( dask#8076 ) Martin Fleischmann
Order requirements alphabetically ( dask#8073 ) John A Kirkham
Released on September 3, 2021
Fix add_plugin warnings (5267) `Doug Davis`_
Add list around iterator in handle_missing_dep (5285) `Matthew Rocklin`_
Jupyter-client 7 compatibility (5286) `Min RK`_
Replace atop with blockwise (5289) `James Bourbeau`_
Add pytest color to CI (5276) `James Bourbeau`_
Fix test_map and others (5278) `crusaderky`_
Use name argument with Scheduler.remove_plugin calls (5260) `Doug Davis`_
Downgrade to jupyter_client 6 (5273) `crusaderky`_
Migrate Security HTML repr to Jinja2 (5264) `Jacob Tomlinson`_
Migrate ProcessInterface HTML repr to Jinja2 (5263) `Jacob Tomlinson`_
Add support for diskless machines to system monitor (5257) `James Bourbeau`_
Avoid during-iteration scheduler plugin changes (5259) `Doug Davis`_
Remove GroupProgress scheduler plugin (5256) `James Bourbeau`_
Properly check for ipv6 availability (5255) `crusaderky`_
Improved IPv6 dask-worker support (5197) `Walt Woods`_
Overwrite worker plugins (5248) `Matthew Rocklin`_
Refactor scheduler plugins; store in a dictionary (5120) `Doug Davis`_
Fix "then" -> "than" typo in docs (5247) `David Chudzicki`_
Fix typo (remove extra verb "creates") in docs (5244) `David Chudzicki`_
Fix "fractiom" -> "fraction" typo in docstring (5245) `David Chudzicki`_
Fix "schedulers" -> "scheduler" typo in docs (5246) `David Chudzicki`_
Use non-histogram plots up to 100 workers (5249) `Matthew Rocklin`_
- Add ignore_metadata_file option to read_parquet ( pyarrow-dataset and fastparquet support only) ( dask#8034 ) Richard (Rick) Zamora
Released on August 20, 2021
Add ignore_metadata_file option to read_parquet ( pyarrow-dataset and fastparquet support only) ( dask#8034 ) Richard (Rick) Zamora
Add reference to pytest-xdist in dev docs ( dask#8066 ) Julia Signell
Include tz in meta from to_datetime ( dask#8000 ) Julia Signell
CI Infra Docs ( dask#7985 ) Benjamin Zaitlen
Include invalid DataFrame key in assert_eq check ( dask#8061 ) James Bourbeau
Use class when creating DataFrames ( dask#8053 ) Mads R. B. Kristensen
Use development version of distributed in gpuCI build ( dask#7976 ) James Bourbeau
Ignore whitespace when gufunc signature ( dask#8049 ) James Bourbeau
Move pandas import and percentile dispatch refactor ( dask#8055 ) GALI PREM SAGAR
Add colors to represent high level layer types ( dask#7974 ) Freyam Mehta
Upstream instance fix ( dask#8060 ) Jacob Tomlinson
Add dask.widgets and migrate HTML reprs to jinja2 ( dask#8019 ) Jacob Tomlinson
Remove wrap_func_like_safe , not required with NumPy >= 1.17 ( dask#8052 ) Peter Andreas Entschev
Fix threaded scheduler memory backpressure regression ( dask#8040 ) David Hoese
Add percentile dispatch ( dask#8029 ) GALI PREM SAGAR
Use a publicly documented attribute obj in groupby rather than private _selected_obj ( dask#8038 ) GALI PREM SAGAR
Specify module to import rechunk from ( dask#8039 ) Illviljan
Use dict to store data for {nan,}arg{min,max} in certain cases ( dask#8014 ) Peter Andreas Entschev
Fix blocksize description formatting in read_pandas ( dask#8047 ) Louis Maddox
Fix “point” -> “pointers” typo in docs ( dask#8043 ) David Chudzicki
Released on August 20, 2021
Rename plots to fit in the labextension (5239) `Naty Clementi`_
Log messages for CommClosedError now includes information about remote address (5209) `Florian Jetter`_
Add target='_blank' for redirects of dashboard link (5237) `Naty Clementi`_
Update computation code retrieval logic (5236) `James Bourbeau`_
Minor polish on cfexecutor (5233) `crusaderky`_
Use development version of dask in gpuCI build (5232) `James Bourbeau`_
Use upstream dask.widgets (5205) `Jacob Tomlinson`_
Fix flaky test_worker_reconnects_mid_compute (5227) `Florian Jetter`_
Update WorkerPlugin docstring about usage of TaskState objects (5226) `Florian Jetter`_
Worker Network Timeseries (5129) `Naty Clementi`_
Add HTML Repr for ProcessInterface class and all its subclasses (5181) `Freyam Mehta`_
Fix an issue where a reconnecting worker could cause an invalid transition (5210) `Florian Jetter`_
Minor fixes for cfexecutor (5177) `Florian Jetter`_
Add HTML Repr for Security class (5178) `Freyam Mehta`_
Fix performance report sizing issue (5213) `Ian Rose`_
Drop RMM compatibility code from RAPIDS < 0.11 (5214) `Peter Andreas Entschev`_
- Use pytest.warns instead of raises for checking parquet engine deprecation ( dask#7993 ) Joris Van den Bossche
Released on August 13, 2021
Fix to_orc delayed compute behavior ( dask#8035 ) Richard (Rick) Zamora
Don’t convert to low-level task graph in compute_as_if_collection ( dask#7969 ) James Bourbeau
Fix multifile read for hdf ( dask#8033 ) Julia Signell
Resolve warning in distributed tests ( dask#8025 ) James Bourbeau
Update to_orc collection name ( dask#8024 ) James Bourbeau
Resolve skipfooter problem ( dask#7855 ) Ross
Raise NotImplementedError for non-indexable arg passed to to_datetime ( dask#7989 ) Doug Davis
Ensure we error on warnings from distributed ( dask#8002 ) James Bourbeau
Added dict format in to_bag accessories of DataFrame ( dask#7932 ) gurunath
Delayed docs indirect dependencies ( dask#8016 ) aa1371
Add tooltips to graphviz high-level graphs ( dask#7973 ) Freyam Mehta
Close 2021 User Survey ( dask#8007 ) Julia Signell
Reorganize CuPy tests into multiple files ( dask#8013 ) Peter Andreas Entschev
Refactor and Expand Dask-Dataframe ORC API ( dask#7756 ) Richard (Rick) Zamora
Don’t enforce columns if enforce=False ( dask#7916 ) Julia Signell
Fix map_overlap trimming behavior when drop_axis is not None ( dask#7894 ) Gregory R. Lee
Mark gpuCI CuPy test as flaky ( dask#7994 ) Peter Andreas Entschev
Avoid using Delayed in to_csv and to_parquet ( dask#7968 ) Matthew Rocklin
Removed redundant check_dtypes ( dask#7952 ) gurunath
Use pytest.warns instead of raises for checking parquet engine deprecation ( dask#7993 ) Joris Van den Bossche
Bump RAPIDS_VER in gpuCI to 21.10 ( dask#7991 ) Charles Blackmon-Luca
Add back pyarrow-legacy test coverage for pyarrow>=5 ( dask#7988 ) Richard (Rick) Zamora
Allow pyarrow>=5 in to_parquet and read_parquet ( dask#7967 ) Richard (Rick) Zamora
Skip CuPy tests requiring NEP-35 when NumPy < 1.20 is available ( dask#7982 ) Peter Andreas Entschev
Add tail and head to SeriesGroupby ( dask#7935 ) Daniel Mesejo-León
Update Zoom link for monthly meeting ( dask#7979 ) James Bourbeau
Add gpuCI build script ( dask#7966 ) Charles Blackmon-Luca
Deprecate daily_stock utility ( dask#7949 ) James Bourbeau
Add distributed.nanny to configuration reference docs ( dask#7955 ) James Bourbeau
Require NumPy 1.18+ & Pandas 1.0+ ( dask#7939 ) John A Kirkham
Released on August 13, 2021
Include addresses in closed comm repr (5203) `James Bourbeau`_
Test nanny.environ precedence (5204) `Florian Jetter`_
Migrating HTML reprs to jinja2 (5188) `Jacob Tomlinson`_
Fix test_process_executor_kills_process flakyness (5183) `crusaderky`_
Remove urllib3 as a dependency downloading preloads (5199) `Marcos Moyano`_
Download preload urls in the Preload constructor (5194) `Marcos Moyano`_
Avoid recursion error in profile.merge (5195) `Matthew Rocklin`_
Add text exceptions to the Scheduler (5148) `Matthew Rocklin`_
Use kwarg for Theme filename (5190) `Bryan Van de Ven`_
Add a .git-ignore-revs file (5187) `Florian Jetter`_
Replace not not with bool() (5182) `Jacob Tomlinson`_
Resolve deadlock cause by transition error after fetching dependency (5157) `Florian Jetter`_
Set z-index of data-table lower (5175) `Julia Signell`_
Add no-worker - memory transition to scheduler (5174) `Florian Jetter`_
Deprecate worker plugin overwrite policy (5146) `James Bourbeau`_
Fix flaky tests in CI (5168) `crusaderky`_
Instructions for jemalloc with brew on macOS (4996) `Gabe Joseph`_
Bump RAPIDS_VER to 21.10 (5165) `Charles Blackmon-Luca`_
Tweak verbiage around async functions (5166) `crusaderky`_
Use Python 3 super() calls (5167) `crusaderky`_
Support asynchronous tasks (5151) `Matthew Rocklin`_
Rename total comm bytes and provide doc string (5155) `Florian Jetter`_
Add GPU executor if GPU is present (5123) `Matthew Rocklin`_
Fix RMM and UCX tests (5158) `Peter Andreas Entschev`_
Remove excessive timeout of test_steal_during_task_deserialization (5156) `Florian Jetter`_
Add gpuCI build script (5147) `Charles Blackmon-Luca`_
Demote Worker.ensure_computing to function (5153) `Florian Jetter`_
- Add deprecation warning for top-level ucx and rmm config values ( dask#7956 ) James Bourbeau
Released on July 30, 2021
Note
This is the last release with support for NumPy 1.17 and pandas 0.25. Beginning with the next release, NumPy 1.18 and pandas 1.0 will be the minimum supported versions.
Add dask.array SVG to the HTML Repr ( dask#7886 ) Freyam Mehta
Avoid use of Delayed in to_parquet ( dask#7958 ) Matthew Rocklin
Temporarily pin pyarrow<5 in CI ( dask#7960 ) James Bourbeau
Add deprecation warning for top-level ucx and rmm config values ( dask#7956 ) James Bourbeau
Remove skips from doctests (4 of 6) ( dask#7865 ) Zhengnan Zhao
Remove skips from doctests (5 of 6) ( dask#7864 ) Zhengnan Zhao
Adds missing prepend/append functionality to da.diff ( dask#7946 ) Peter Andreas Entschev
Change graphviz font family to sans ( dask#7931 ) Freyam Mehta
Fix read-csv name - when path is different, use different name for task ( dask#7942 ) Julia Signell
Update configuration reference for ucx and rmm changes ( dask#7943 ) James Bourbeau
Add meta support to setitem ( dask#7940 ) Peter Andreas Entschev
NEP-35 support for slice_with_int_dask_array ( dask#7927 ) Peter Andreas Entschev
Unpin fastparquet in CI ( dask#7928 ) James Bourbeau
Remove skips from doctests (3 of 6) ( dask#7872 ) Zhengnan Zhao
Released on July 30, 2021
Fix a deadlock connected to task stealing and task deserialization (5128) `Florian Jetter`_
Include maximum shard size in second to_frames method (5145) `Matthew Rocklin`_
Minor dashboard style updates (5143) `Bryan Van de Ven`_
Cap maximum shard size at the size of an integer (5141) `Matthew Rocklin`_
Document automatic MALLOC_TRIM_THRESHOLD_ environment variable (5139) `James Bourbeau`_
Mark ucx-py tests for GPU (5133) `Charles Blackmon-Luca`_
Update individual profile plot sizing (5131) `James Bourbeau`_
Handle NVMLError_Unknown in NVML diagnostics (5121) `Peter Andreas Entschev`_
Unit tests to use a random port for the dashboard (5060) `crusaderky`_
Ensure worker reconnect registers existing tasks properly (5103) `Florian Jetter`_
Halve CI runtime! (5074) `crusaderky`_
Add NannyPlugins (5118) `Matthew Rocklin`_
Add WorkerNetworkBandwidth chart to dashboard (5104) `Naty Clementi`_
Set nanny environment variables in config (5098) `Matthew Rocklin`_
Read smaller frames to workaround OpenSSL bug (5115) `jakirkham`_
Move UCX/RMM config variables to Distributed namespace (4916) `Charles Blackmon-Luca`_
Allow ws(s) messages greater than 10Mb (5110) `Marcos Moyano`_
Short-circuit root-ish check for many deps (5113) `Gabe Joseph`_
- Make array assert_eq check dtype ( dask#7903 ) Julia Signell
Released on July 23, 2021
Make array assert_eq check dtype ( dask#7903 ) Julia Signell
Remove skips from doctests (6 of 6) ( dask#7863 ) Zhengnan Zhao
Remove experimental feature warning from actors docs ( dask#7925 ) Matthew Rocklin
Remove skips from doctests (2 of 6) ( dask#7873 ) Zhengnan Zhao
Separate out Array and Bag API ( dask#7917 ) Julia Signell
Implement lazy Array.iter ( dask#7905 ) Julia Signell
Clean up places where we inadvertently iterate over arrays ( dask#7913 ) Julia Signell
Add numeric_only kwarg to DataFrame reductions ( dask#7831 ) Julia Signell
Add pytest marker for GPU tests ( dask#7876 ) Charles Blackmon-Luca
Add support for histogram2d in dask.array ( dask#7827 ) Doug Davis
Remove skips from doctests (1 of 6) ( dask#7874 ) Zhengnan Zhao
Add node size scaling to the Graphviz output for the high level graphs ( dask#7869 ) Freyam Mehta
Update old Bokeh links ( dask#7915 ) Bryan Van de Ven
Temporarily pin fastparquet in CI ( dask#7907 ) James Bourbeau
Add dask.array import to progress bar docs ( dask#7910 ) Fabian Gebhart
Use separate files for each DataFrame API function and method ( dask#7890 ) Julia Signell
Fix pyarrow-dataset ordering bug ( dask#7902 ) Richard (Rick) Zamora
Generalize unique aggregate ( dask#7892 ) GALI PREM SAGAR
Raise NotImplementedError when using pd.Grouper ( dask#7857 ) Ruben van de Geer
Add aggregate_files argument to enable multi-file partitions in read_parquet ( dask#7557 ) Richard (Rick) Zamora
Un- xfail test_daily_stock ( dask#7895 ) James Bourbeau
Update access configuration docs ( dask#7837 ) Naty Clementi
Use packaging for version comparisons ( dask#7820 ) Elliott Sales de Andrade
Handle infinite loops in merge_asof ( dask#7842 ) gerrymanoim
Released on July 23, 2021
Remove experimental feature warning from actors docs (5108) `James Bourbeau`_
Keep dependents in worker dependency if TS is still known (5034) `Florian Jetter`_
Add Scheduler.set_restrictions (5101) `Matthew Rocklin`_
Make Actor futures awaitable and work with as_completed (5092) `Martin Durant`_
Simplify test_secede_balances (5071) `Florian Jetter`_
Computation class (5001) `Florian Jetter`_
Some light dashboard cleanup (5102) `Bryan Van de Ven`_
Don't package tests (5054) `James Bourbeau`_
Add pytest marker for GPU tests (5023) `Charles Blackmon-Luca`_
Actor: don't hold key references on workers (4937) `Gabe Joseph`_
Collapse nav to hamburger sooner (5094) `Julia Signell`_
Verify that actors survive pickling (5086) `Matthew Rocklin`_
Reenable UCX-Py tests that used to segfault (5076) `Peter Andreas Entschev`_
Better support ProcessPoolExecutors (5063) `Matthew Rocklin`_
Simplify test_worker_heartbeat_after_cancel (5067) `Florian Jetter`_
Avoid property validation in Bokeh (5065) `Matthew Rocklin`_
Reduce default websocket frame size and make configurable (5070) `Ian Rose`_
Disable pytest-timeout SIGALARM on MacOS (5057) `crusaderky`_
rebalance() resilience to computations (4968) `crusaderky`_
Improve CI stability (5022) `crusaderky`_
Ensure heartbeats after cancelation do not raise KeyError s (5053) `Florian Jetter`_
Add more useful exception message on TLS cert mismatch (5040) `Jacob Tomlinson`_
Add bokeh mode parameter to performance reports (5025) `James Bourbeau`_
- Include fastparquet in upstream CI build ( dask#7884 ) James Bourbeau
Released on July 9, 2021
Include fastparquet in upstream CI build ( dask#7884 ) James Bourbeau
Blockwise: handle non-string constant dependencies ( dask#7849 ) Mads R. B. Kristensen
fastparquet now supports new time types, including ns precision ( dask#7880 ) Martin Durant
Avoid ParquetDataset API when appending in ArrowDatasetEngine ( dask#7544 ) Richard (Rick) Zamora
Add retry logic to test_shuffle_priority ( dask#7879 ) Richard (Rick) Zamora
Use strict channel priority in CI ( dask#7878 ) James Bourbeau
Support nested dask.distributed imports ( dask#7866 ) Matthew Rocklin
Should check module name only, not the entire directory filepath ( dask#7856 ) Genevieve Buckley
Updates due to dask/fastparquet#623 ( dask#7875 ) Martin Durant
da.eye fix for chunks=-1 ( dask#7854 ) Naty Clementi
Temporarily xfail test_daily_stock ( dask#7858 ) James Bourbeau
Set priority annotations in SimpleShuffleLayer ( dask#7846 ) Richard (Rick) Zamora
Blockwise: stringify constant key inputs ( dask#7838 ) Mads R. B. Kristensen
Allow mixing dask and numpy arrays in @guvectorize ( dask#6863 ) Julia Signell
Don’t sample dict result of a shuffle group when calculating its size ( dask#7834 ) Florian Jetter
Fix scipy tests ( dask#7841 ) Julia Signell
Deterministically tokenize datetime.date ( dask#7836 ) James Bourbeau
Add sample_rows to read_csv -like ( dask#7825 ) Martin Durant
Fix typo in config.deserialize docstring ( dask#7830 ) Geoffrey Lentner
Remove warning filter in test_dataframe_picklable ( dask#7822 ) James Bourbeau
Improvements to histogramdd (for handling inputs that are sequences-of-arrays). ( dask#7634 ) Doug Davis
Make PY_VERSION private ( dask#7824 ) James Bourbeau
Released on July 9, 2021
Fix Nbytes jitter - less expensive (5043) `Naty Clementi`_
Use native GH actions cancel feature (5037) `Florian Jetter`_
Don't require workers to report to scheduler if scheduler shuts down (5032) `Florian Jetter`_
Add pandas to the list of checked packages for client.get_versions() (5029) `Ian Rose`_
Move worker preload before scheduler address is set (5024) `Matthew Rocklin`_
Fix flaky test_oversubscribing_leases (5030) `Florian Jetter`_
Update scheduling policy docs for #4967 (5018) `Gabe Joseph`_
Add echo handler to Server class (5020) `Matthew Rocklin`_
Also include pngs when bundling package (5016) `Ian Rose`_
Remove duplicated dashboard panes (5017) `Ian Rose`_
Fix worker memory dashboard flickering (4997) `Naty Clementi`_
Tabs on bottom left corner on dashboard (5006) `Naty Clementi`_
Rename nbytes widgets (4878) `crusaderky`_
Co-assign root-ish tasks (4967) `Gabe Joseph`_
OSError tweaks (5003) `crusaderky`_
Update imports to cudf.testing._utils (5005) `Peter Andreas Entschev`_
Ensure shuffle split default durations uses proper prefix (4991) `Florian Jetter`_
Follow up pyupgrade formatting (4993) `Florian Jetter`_
Rename plot dropdown (4992) `James Bourbeau`_
Pyupgrade (4741) `Florian Jetter`_
Misc Sphinx tweaks (4988) `crusaderky`_
No longer hold dependencies of erred tasks in memory #4918 `Florian Jetter`_
Add maximum shard size to config (4986) `Matthew Rocklin`_
Ensure shuffle split operations are blacklisted from work stealing (4964) `Florian Jetter`_
Add dropdown menu to access individual plots (4984) `Jacob Tomlinson`_
Edited the path to scheduler.py (4983) `Freyam Mehta`_
Task Group Graph Visualization (4886) `Naty Clementi`_
Remove more internal references to deprecated utilities (4971) `James Bourbeau`_
Restructure nbytes hover (4952) `Naty Clementi`_
Except more errors in pynvml.nvmlInit() (4970) `gerrymanoim`_
Add occupancy as individual plot (4963) `Naty Clementi`_
Deprecate utilities which have moved to dask (4966) `James Bourbeau`_
Ensure connectionpool does not leave comms if closed mid connect (4951) `Florian Jetter`_
Add support for registering scheduler plugins from Client (4808) `Doug Davis`_
Stealing dashboard fixes (4948) `Florian Jetter`_
Allow requirements verification to be ignored when loading backends from entrypoints (4961) `Florian Jetter`_
Add Log and Logs to API docs (4946) `James Bourbeau`_
Support fixtures and pytest.mark.parametrize with gen_cluster (4958) `Gabe Joseph`_
- layers.py compare parts_out with set(self.parts_out) ( dask#7787 ) Genevieve Buckley
Released on June 22, 2021
layers.py compare parts_out with set(self.parts_out) ( dask#7787 ) Genevieve Buckley
Make check_meta understand pandas dtypes better ( dask#7813 ) Julia Signell
Remove “Educational Resources” doc page ( dask#7818 ) James Bourbeau
Released on June 22, 2021
Revert refactor to utils.Log[s] and Cluster.get_logs (4941) `Charles Blackmon-Luca`_
Use deprecation utility from Dask (4924) `James Bourbeau`_
Add transition counter to Scheduler (4934) `Matthew Rocklin`_
Remove nbytes_in_memory (4930) `Matthew Rocklin`_
Your coding agent can read these notes before it upgrades. Set up the MCP server →