<?xml version='1.0' encoding='UTF-8'?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
  <id>https://blog.dask.org</id>
  <title>Dask Working Notes - Posts by the Dask Maintainers</title>
  <updated>2026-03-05T15:05:21.080982+00:00</updated>
  <link href="https://blog.dask.org"/>
  <link href="https://blog.dask.org/blog/author/the-dask-maintainers/atom.xml" rel="self"/>
  <generator uri="https://ablog.readthedocs.io/" version="0.11.12">ABlog</generator>
  <entry>
    <id>https://blog.dask.org/2019/06/22/dask-2.0/</id>
    <title>Dask Release 2.0</title>
    <updated>2019-06-22T00:00:00+00:00</updated>
    <author>
      <name>the Dask Maintainers</name>
    </author>
    <content type="html">&lt;p&gt;&lt;em&gt;Please take the &lt;a class="reference external" href="https://t.co/OGrIjTLC2G"&gt;Dask User Survey for 2019&lt;/a&gt;.&lt;/em&gt;
&lt;em&gt;Your reponse helps to prioritize future work.&lt;/em&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;We are pleased to announce the release of Dask version 2.0.
This is a major release with bug fixes and new features.&lt;/p&gt;
&lt;p&gt;Most major version changes of software signal many new and exciting features.
That is not the case with this release.
Instead, we’re bumping the major version number because
we’ve broken a few APIs to improve maintainability,
and because we decided to drop support for Python 2.&lt;/p&gt;
&lt;p&gt;This blogpost outlines these changes.&lt;/p&gt;
&lt;aside class="system-message"&gt;
&lt;p class="system-message-title"&gt;System Message: WARNING/2 (&lt;span class="docutils literal"&gt;/opt/build/repo/2019/06/22/dask-2.0.md&lt;/span&gt;, line 26)&lt;/p&gt;
&lt;p&gt;Document headings start at H2, not H1 [myst.header]&lt;/p&gt;
&lt;/aside&gt;
&lt;section id="install"&gt;

&lt;p&gt;As always, you can conda install Dask:&lt;/p&gt;
&lt;div class="highlight-none notranslate"&gt;&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;conda install dask
&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;or pip install from PyPI:&lt;/p&gt;
&lt;div class="highlight-none notranslate"&gt;&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;pip install &amp;quot;dask[complete]&amp;quot; --upgrade
&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;Full changelogs are available here:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&lt;p&gt;&lt;a class="reference external" href="https://github.com/dask/dask/blob/master/docs/source/changelog.rst"&gt;dask/dask&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a class="reference external" href="https://github.com/dask/distributed/blob/master/docs/source/changelog.rst"&gt;dask/distributed&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;aside class="system-message"&gt;
&lt;p class="system-message-title"&gt;System Message: WARNING/2 (&lt;span class="docutils literal"&gt;/opt/build/repo/2019/06/22/dask-2.0.md&lt;/span&gt;, line 41)&lt;/p&gt;
&lt;p&gt;Document headings start at H2, not H1 [myst.header]&lt;/p&gt;
&lt;/aside&gt;
&lt;/section&gt;
&lt;section id="drop-support-for-python-2"&gt;
&lt;h1&gt;Drop support for Python 2&lt;/h1&gt;
&lt;p&gt;Python 2 reaches end of life in 2020, just six months away. Most major PyData
projects are dropping Python 2 support around now. See the &lt;a class="reference external" href="https://python3statement.org/"&gt;Python 3
Statement&lt;/a&gt; for more details about some of your
favorite projects.&lt;/p&gt;
&lt;p&gt;Python 2 users can continue to use older versions of Dask, which are in
widespread use today. Institutions looking for long term support of Dask in
Python 2 may wish to reach out to for-profit consulting companies, like
&lt;a class="reference external" href="https://www.quansight.com/"&gt;Quansight&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Dropping Python 2 will allow maintainers to spend more of their time fixing
bugs and developing new features. It will also allow the project to adopt more
modern development practices going forward.&lt;/p&gt;
&lt;aside class="system-message"&gt;
&lt;p class="system-message-title"&gt;System Message: WARNING/2 (&lt;span class="docutils literal"&gt;/opt/build/repo/2019/06/22/dask-2.0.md&lt;/span&gt;, line 57)&lt;/p&gt;
&lt;p&gt;Document headings start at H2, not H1 [myst.header]&lt;/p&gt;
&lt;/aside&gt;
&lt;/section&gt;
&lt;section id="small-breaking-changes"&gt;
&lt;h1&gt;Small breaking changes&lt;/h1&gt;
&lt;p&gt;We now include a list with a brief description of most of the breaking changes:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&lt;p&gt;The distributed.bokeh module has moved to distributed.dashboard&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Various &lt;code class="docutils literal notranslate"&gt;&lt;span class="pre"&gt;ncores&lt;/span&gt;&lt;/code&gt; keywords have been moved to &lt;code class="docutils literal notranslate"&gt;&lt;span class="pre"&gt;nthreads&lt;/span&gt;&lt;/code&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Client.map/gather/scatter no longer accept iterators and Python queue
objects. Users can handle this themselves with &lt;code class="docutils literal notranslate"&gt;&lt;span class="pre"&gt;submit&lt;/span&gt;&lt;/code&gt;/&lt;code class="docutils literal notranslate"&gt;&lt;span class="pre"&gt;as_completed&lt;/span&gt;&lt;/code&gt; or
can use the &lt;a class="reference external" href="https://github.com/python-streamz/streamz"&gt;Streamz&lt;/a&gt; library.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;The worker &lt;code class="docutils literal notranslate"&gt;&lt;span class="pre"&gt;/main&lt;/span&gt;&lt;/code&gt; route has moved to &lt;code class="docutils literal notranslate"&gt;&lt;span class="pre"&gt;/status&lt;/span&gt;&lt;/code&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Cluster.workers is now a dictionary mapping worker name to worker, rather
than a list as it was before&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;aside class="system-message"&gt;
&lt;p class="system-message-title"&gt;System Message: WARNING/2 (&lt;span class="docutils literal"&gt;/opt/build/repo/2019/06/22/dask-2.0.md&lt;/span&gt;, line 70)&lt;/p&gt;
&lt;p&gt;Document headings start at H2, not H1 [myst.header]&lt;/p&gt;
&lt;/aside&gt;
&lt;/section&gt;
&lt;section id="some-larger-fun-changes"&gt;
&lt;h1&gt;Some larger fun changes&lt;/h1&gt;
&lt;p&gt;We didn’t only break things. We also added some new things :)&lt;/p&gt;
&lt;section id="array-metadata"&gt;
&lt;h2&gt;Array metadata&lt;/h2&gt;
&lt;p&gt;Previously Dask Arrays were defined by their shape, chunkshape, and datatype,
like float, int, and so on.&lt;/p&gt;
&lt;p&gt;Now, Dask Arrays also know the type of their chunks. Historically this was
almost always a NumPy array, so it didn’t make sense to store, but now that
Dask Arrays are being used more frequently with sparse array chunks and GPU
array chunks we now maintain this information as well in a &lt;code class="docutils literal notranslate"&gt;&lt;span class="pre"&gt;._meta&lt;/span&gt;&lt;/code&gt; attribute.
This is already how Dask dataframes work, so it should be familiar to advanced
users of that module.&lt;/p&gt;
&lt;div class="highlight-python notranslate"&gt;&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="gp"&gt;&amp;gt;&amp;gt;&amp;gt; &lt;/span&gt;&lt;span class="kn"&gt;import&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nn"&gt;dask.array&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;as&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nn"&gt;da&lt;/span&gt;
&lt;span class="gp"&gt;&amp;gt;&amp;gt;&amp;gt; &lt;/span&gt;&lt;span class="n"&gt;x&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;da&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;eye&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;1000000&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="gp"&gt;&amp;gt;&amp;gt;&amp;gt; &lt;/span&gt;&lt;span class="n"&gt;x&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;_meta&lt;/span&gt;
&lt;span class="go"&gt;array([], shape=(0, 0), dtype=float64)&lt;/span&gt;

&lt;span class="gp"&gt;&amp;gt;&amp;gt;&amp;gt; &lt;/span&gt;&lt;span class="kn"&gt;import&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nn"&gt;sparse&lt;/span&gt;
&lt;span class="gp"&gt;&amp;gt;&amp;gt;&amp;gt; &lt;/span&gt;&lt;span class="n"&gt;s&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;x&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;map_blocks&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;sparse&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;COO&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;from_numpy&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="gp"&gt;&amp;gt;&amp;gt;&amp;gt; &lt;/span&gt;&lt;span class="n"&gt;s&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;_meta&lt;/span&gt;
&lt;span class="go"&gt;&amp;lt;COO: shape=(0, 0), dtype=float64, nnz=0, fill_value=0.0&amp;gt;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;This work was largely done by &lt;a class="reference external" href="https://github.com/pentschev"&gt;Peter Entschev&lt;/a&gt;&lt;/p&gt;
&lt;/section&gt;
&lt;section id="array-html-output"&gt;
&lt;h2&gt;Array HTML output&lt;/h2&gt;
&lt;p&gt;Dask arrays now print themselves nicely in Jupyter notebooks, showing a table
of information about their size and chunk size, and also a visual diagram of
their chunk structure.&lt;/p&gt;
&lt;div class="highlight-python notranslate"&gt;&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="kn"&gt;import&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nn"&gt;dask.array&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;as&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nn"&gt;da&lt;/span&gt;
&lt;span class="n"&gt;x&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;da&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;ones&lt;/span&gt;&lt;span class="p"&gt;((&lt;/span&gt;&lt;span class="mi"&gt;10000&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;1000&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;1000&lt;/span&gt;&lt;span class="p"&gt;))&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;table&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;table&gt;  &lt;thead&gt;    &lt;tr&gt;&lt;td&gt; &lt;/td&gt;&lt;th&gt; Array &lt;/th&gt;&lt;th&gt; Chunk &lt;/th&gt;&lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;&lt;th&gt; Bytes &lt;/th&gt;&lt;td&gt; 80.00 GB &lt;/td&gt; &lt;td&gt; 125.00 MB &lt;/td&gt;&lt;/tr&gt;
    &lt;tr&gt;&lt;th&gt; Shape &lt;/th&gt;&lt;td&gt; (10000, 1000, 1000) &lt;/td&gt; &lt;td&gt; (250, 250, 250) &lt;/td&gt;&lt;/tr&gt;
    &lt;tr&gt;&lt;th&gt; Count &lt;/th&gt;&lt;td&gt; 640 Tasks &lt;/td&gt;&lt;td&gt; 640 Chunks &lt;/td&gt;&lt;/tr&gt;
    &lt;tr&gt;&lt;th&gt; Type &lt;/th&gt;&lt;td&gt; float64 &lt;/td&gt;&lt;td&gt; numpy.ndarray &lt;/td&gt;&lt;/tr&gt;
  &lt;/tbody&gt;&lt;/table&gt;
&lt;/td&gt;
&lt;td&gt;
&lt;svg width="241" height="231" style="stroke:rgb(0,0,0);stroke-width:1" &gt;
  &lt;!-- Horizontal lines --&gt;
  &lt;line x1="10" y1="0" x2="127" y2="117" style="stroke-width:2" /&gt;
  &lt;line x1="10" y1="16" x2="127" y2="133" /&gt;
  &lt;line x1="10" y1="32" x2="127" y2="149" /&gt;
  &lt;line x1="10" y1="48" x2="127" y2="165" /&gt;
  &lt;line x1="10" y1="64" x2="127" y2="181" style="stroke-width:2" /&gt;
  &lt;!-- Vertical lines --&gt;
  &lt;line x1="10" y1="0" x2="10" y2="64" style="stroke-width:2" /&gt;
  &lt;line x1="12" y1="2" x2="12" y2="67" /&gt;
  &lt;line x1="15" y1="5" x2="15" y2="70" /&gt;
  &lt;line x1="18" y1="8" x2="18" y2="73" /&gt;
  &lt;line x1="21" y1="11" x2="21" y2="76" /&gt;
  &lt;line x1="24" y1="14" x2="24" y2="79" /&gt;
  &lt;line x1="27" y1="17" x2="27" y2="81" /&gt;
  &lt;line x1="30" y1="20" x2="30" y2="84" /&gt;
  &lt;line x1="33" y1="23" x2="33" y2="87" /&gt;
  &lt;line x1="36" y1="26" x2="36" y2="90" /&gt;
  &lt;line x1="39" y1="29" x2="39" y2="93" /&gt;
  &lt;line x1="42" y1="32" x2="42" y2="96" /&gt;
  &lt;line x1="45" y1="35" x2="45" y2="99" /&gt;
  &lt;line x1="48" y1="38" x2="48" y2="102" /&gt;
  &lt;line x1="51" y1="41" x2="51" y2="105" /&gt;
  &lt;line x1="54" y1="44" x2="54" y2="108" /&gt;
  &lt;line x1="57" y1="47" x2="57" y2="111" /&gt;
  &lt;line x1="60" y1="50" x2="60" y2="114" /&gt;
  &lt;line x1="62" y1="52" x2="62" y2="117" /&gt;
  &lt;line x1="65" y1="55" x2="65" y2="120" /&gt;
  &lt;line x1="68" y1="58" x2="68" y2="123" /&gt;
  &lt;line x1="71" y1="61" x2="71" y2="126" /&gt;
  &lt;line x1="74" y1="64" x2="74" y2="129" /&gt;
  &lt;line x1="77" y1="67" x2="77" y2="131" /&gt;
  &lt;line x1="80" y1="70" x2="80" y2="134" /&gt;
  &lt;line x1="83" y1="73" x2="83" y2="137" /&gt;
  &lt;line x1="86" y1="76" x2="86" y2="140" /&gt;
  &lt;line x1="89" y1="79" x2="89" y2="143" /&gt;
  &lt;line x1="92" y1="82" x2="92" y2="146" /&gt;
  &lt;line x1="95" y1="85" x2="95" y2="149" /&gt;
  &lt;line x1="98" y1="88" x2="98" y2="152" /&gt;
  &lt;line x1="101" y1="91" x2="101" y2="155" /&gt;
  &lt;line x1="104" y1="94" x2="104" y2="158" /&gt;
  &lt;line x1="107" y1="97" x2="107" y2="161" /&gt;
  &lt;line x1="110" y1="100" x2="110" y2="164" /&gt;
  &lt;line x1="112" y1="102" x2="112" y2="167" /&gt;
  &lt;line x1="115" y1="105" x2="115" y2="170" /&gt;
  &lt;line x1="118" y1="108" x2="118" y2="173" /&gt;
  &lt;line x1="121" y1="111" x2="121" y2="176" /&gt;
  &lt;line x1="124" y1="114" x2="124" y2="179" /&gt;
  &lt;line x1="127" y1="117" x2="127" y2="181" style="stroke-width:2" /&gt;
  &lt;!-- Colored Rectangle --&gt;
  &lt;polygon points="10.000000,0.000000 127.647059,117.647059 127.647059,181.975164 10.000000,64.328105" style="fill:#ECB172A0;stroke-width:0"/&gt;
  &lt;!-- Horizontal lines --&gt;
  &lt;line x1="10" y1="0" x2="74" y2="0" style="stroke-width:2" /&gt;
  &lt;line x1="12" y1="2" x2="77" y2="2" /&gt;
  &lt;line x1="15" y1="5" x2="80" y2="5" /&gt;
  &lt;line x1="18" y1="8" x2="83" y2="8" /&gt;
  &lt;line x1="21" y1="11" x2="86" y2="11" /&gt;
  &lt;line x1="24" y1="14" x2="89" y2="14" /&gt;
  &lt;line x1="27" y1="17" x2="91" y2="17" /&gt;
  &lt;line x1="30" y1="20" x2="94" y2="20" /&gt;
  &lt;line x1="33" y1="23" x2="97" y2="23" /&gt;
  &lt;line x1="36" y1="26" x2="100" y2="26" /&gt;
  &lt;line x1="39" y1="29" x2="103" y2="29" /&gt;
  &lt;line x1="42" y1="32" x2="106" y2="32" /&gt;
  &lt;line x1="45" y1="35" x2="109" y2="35" /&gt;
  &lt;line x1="48" y1="38" x2="112" y2="38" /&gt;
  &lt;line x1="51" y1="41" x2="115" y2="41" /&gt;
  &lt;line x1="54" y1="44" x2="118" y2="44" /&gt;
  &lt;line x1="57" y1="47" x2="121" y2="47" /&gt;
  &lt;line x1="60" y1="50" x2="124" y2="50" /&gt;
  &lt;line x1="62" y1="52" x2="127" y2="52" /&gt;
  &lt;line x1="65" y1="55" x2="130" y2="55" /&gt;
  &lt;line x1="68" y1="58" x2="133" y2="58" /&gt;
  &lt;line x1="71" y1="61" x2="136" y2="61" /&gt;
  &lt;line x1="74" y1="64" x2="139" y2="64" /&gt;
  &lt;line x1="77" y1="67" x2="141" y2="67" /&gt;
  &lt;line x1="80" y1="70" x2="144" y2="70" /&gt;
  &lt;line x1="83" y1="73" x2="147" y2="73" /&gt;
  &lt;line x1="86" y1="76" x2="150" y2="76" /&gt;
  &lt;line x1="89" y1="79" x2="153" y2="79" /&gt;
  &lt;line x1="92" y1="82" x2="156" y2="82" /&gt;
  &lt;line x1="95" y1="85" x2="159" y2="85" /&gt;
  &lt;line x1="98" y1="88" x2="162" y2="88" /&gt;
  &lt;line x1="101" y1="91" x2="165" y2="91" /&gt;
  &lt;line x1="104" y1="94" x2="168" y2="94" /&gt;
  &lt;line x1="107" y1="97" x2="171" y2="97" /&gt;
  &lt;line x1="110" y1="100" x2="174" y2="100" /&gt;
  &lt;line x1="112" y1="102" x2="177" y2="102" /&gt;
  &lt;line x1="115" y1="105" x2="180" y2="105" /&gt;
  &lt;line x1="118" y1="108" x2="183" y2="108" /&gt;
  &lt;line x1="121" y1="111" x2="186" y2="111" /&gt;
  &lt;line x1="124" y1="114" x2="189" y2="114" /&gt;
  &lt;line x1="127" y1="117" x2="191" y2="117" style="stroke-width:2" /&gt;
  &lt;!-- Vertical lines --&gt;
  &lt;line x1="10" y1="0" x2="127" y2="117" style="stroke-width:2" /&gt;
  &lt;line x1="26" y1="0" x2="143" y2="117" /&gt;
  &lt;line x1="42" y1="0" x2="159" y2="117" /&gt;
  &lt;line x1="58" y1="0" x2="175" y2="117" /&gt;
  &lt;line x1="74" y1="0" x2="191" y2="117" style="stroke-width:2" /&gt;
  &lt;!-- Colored Rectangle --&gt;
  &lt;polygon points="10.000000,0.000000 74.328105,0.000000 191.975164,117.647059 127.647059,117.647059" style="fill:#ECB172A0;stroke-width:0"/&gt;
  &lt;!-- Horizontal lines --&gt;
  &lt;line x1="127" y1="117" x2="191" y2="117" style="stroke-width:2" /&gt;
  &lt;line x1="127" y1="133" x2="191" y2="133" /&gt;
  &lt;line x1="127" y1="149" x2="191" y2="149" /&gt;
  &lt;line x1="127" y1="165" x2="191" y2="165" /&gt;
  &lt;line x1="127" y1="181" x2="191" y2="181" style="stroke-width:2" /&gt;
  &lt;!-- Vertical lines --&gt;
  &lt;line x1="127" y1="117" x2="127" y2="181" style="stroke-width:2" /&gt;
  &lt;line x1="143" y1="117" x2="143" y2="181" /&gt;
  &lt;line x1="159" y1="117" x2="159" y2="181" /&gt;
  &lt;line x1="175" y1="117" x2="175" y2="181" /&gt;
  &lt;line x1="191" y1="117" x2="191" y2="181" style="stroke-width:2" /&gt;
  &lt;!-- Colored Rectangle --&gt;
  &lt;polygon points="127.647059,117.647059 191.975164,117.647059 191.975164,181.975164 127.647059,181.975164" style="fill:#ECB172A0;stroke-width:0"/&gt;
  &lt;!-- Text --&gt;
&lt;p&gt;&lt;text x="159.811111" y="201.975164" font-size="1.0rem" font-weight="100" text-anchor="middle" &gt;1000&lt;/text&gt;
&lt;text x="211.975164" y="149.811111" font-size="1.0rem" font-weight="100" text-anchor="middle" transform="rotate(-90,211.975164,149.811111)"&gt;1000&lt;/text&gt;
&lt;text x="58.823529" y="143.151634" font-size="1.0rem" font-weight="100" text-anchor="middle" transform="rotate(45,58.823529,143.151634)"&gt;10000&lt;/text&gt;
&lt;/svg&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;
&lt;/section&gt;
&lt;section id="proxy-worker-dashboards-from-the-scheduler-dashboard"&gt;
&lt;h2&gt;Proxy Worker dashboards from the Scheduler dashboard&lt;/h2&gt;
&lt;p&gt;If you’ve used Dask.distributed they you’re probably familiar with Dask’s
scheduler dashboard, which shows the state of computations on the cluster with
a real-time interactive &lt;a class="reference external" href="https://bokeh.org"&gt;Bokeh&lt;/a&gt; dashboard. However you may
not be aware that Dask workers also have their own dashboard, which shows a
completely separate set of plots for the state of that individual worker.&lt;/p&gt;
&lt;p&gt;Historically these worker dashboards haven’t been as commonly used because it’s
hard to connect to them. Users don’t know their address, or network rules
don’t enable direct web connections. Fortunately, the scheduler dashboard is
now able to proxy a connection from the user to the worker dashbaord.&lt;/p&gt;
&lt;p&gt;You can access this by clicking on the “Info” tab and then selecting the
“dashboard” link next to any of the workers. You will need to also install
&lt;a class="reference external" href="https://github.com/jupyterhub/jupyter-server-proxy"&gt;jupyter-server-proxy&lt;/a&gt;&lt;/p&gt;
&lt;div class="highlight-none notranslate"&gt;&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;pip install jupyter-server-proxy
&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;Thanks to &lt;a class="reference external" href="https://github.com/quasiben"&gt;Ben Zaitlen&lt;/a&gt; for this fun addtition.
We hope that now that these plots are made more visible, people will invest
more into developing plots for them.&lt;/p&gt;
&lt;/section&gt;
&lt;section id="black-everywhere"&gt;
&lt;h2&gt;Black everywhere&lt;/h2&gt;
&lt;p&gt;We now use the &lt;a class="reference external" href="https://black.readthedocs.io/"&gt;Black&lt;/a&gt; code formatter throughout
most Dask repositories. These repositories include pre-commit hooks, which we
recommend when developing on the project.&lt;/p&gt;
&lt;div class="highlight-default notranslate"&gt;&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="n"&gt;cd&lt;/span&gt; &lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;path&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;to&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;dask&lt;/span&gt;
&lt;span class="n"&gt;git&lt;/span&gt; &lt;span class="n"&gt;checkout&lt;/span&gt; &lt;span class="n"&gt;master&lt;/span&gt;
&lt;span class="n"&gt;git&lt;/span&gt; &lt;span class="n"&gt;pull&lt;/span&gt; &lt;span class="n"&gt;upstream&lt;/span&gt; &lt;span class="n"&gt;master&lt;/span&gt;

&lt;span class="n"&gt;pip&lt;/span&gt; &lt;span class="n"&gt;install&lt;/span&gt; &lt;span class="n"&gt;pre&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;commit&lt;/span&gt;
&lt;span class="n"&gt;pre&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;commit&lt;/span&gt; &lt;span class="n"&gt;install&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;Git will then call &lt;code class="docutils literal notranslate"&gt;&lt;span class="pre"&gt;black&lt;/span&gt;&lt;/code&gt; and &lt;code class="docutils literal notranslate"&gt;&lt;span class="pre"&gt;flake8&lt;/span&gt;&lt;/code&gt; whenever you attempt to commit code.&lt;/p&gt;
&lt;aside class="system-message"&gt;
&lt;p class="system-message-title"&gt;System Message: WARNING/2 (&lt;span class="docutils literal"&gt;/opt/build/repo/2019/06/22/dask-2.0.md&lt;/span&gt;, line 300)&lt;/p&gt;
&lt;p&gt;Document headings start at H2, not H1 [myst.header]&lt;/p&gt;
&lt;/aside&gt;
&lt;/section&gt;
&lt;/section&gt;
&lt;section id="dask-gateway"&gt;
&lt;h1&gt;Dask Gateway&lt;/h1&gt;
&lt;p&gt;We would also like to inform readers about the somewhat new &lt;a class="reference external" href="https://github.com/jcrist/dask-gateway"&gt;Dask
Gateway&lt;/a&gt; project that enables
institutions and IT to control many Dask clusters for a variety of users.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://jcrist.github.io/dask-gateway/_images/architecture.svg"
     width="70%"
     alt="Dask Gateway"&gt;&lt;/p&gt;
&lt;aside class="system-message"&gt;
&lt;p class="system-message-title"&gt;System Message: WARNING/2 (&lt;span class="docutils literal"&gt;/opt/build/repo/2019/06/22/dask-2.0.md&lt;/span&gt;, line 310)&lt;/p&gt;
&lt;p&gt;Document headings start at H2, not H1 [myst.header]&lt;/p&gt;
&lt;/aside&gt;
&lt;/section&gt;
&lt;section id="acknowledgements"&gt;
&lt;h1&gt;Acknowledgements&lt;/h1&gt;
&lt;p&gt;There have been several releases since the last time we had a release blogpost.
The following people contributed to the following repositories since the 1.1.0
release on January 23rd:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&lt;p&gt;&lt;a class="reference external" href="https://github.com/dask/dask"&gt;dask/dask&lt;/a&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;p&gt;(Rick) Richard J Zamora&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Abhinav Ralhan&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Adam Beberg&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Alistair Miles&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Álvaro Abella Bascarán&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Anderson Banihirwe&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Aploium&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Bart Broere&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Benjamin Zaitlen&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Bouwe Andela&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Brett Naul&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Brian Chu&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Bruce Merry&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Christian Hudon&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Cody Johnson&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Dan O’Donovan&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Daniel Saxton&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Daniel Severo&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Danilo Horta&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Dimplexion&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Elliott Sales de Andrade&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Endre Mark Borza&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Genevieve Buckley&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;George Sakkis&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Guillaume Lemaitre&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;HSR05&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Hameer Abbasi&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Henrique Ribeiro&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Henry Pinkard&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Hugo&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Ian Bolliger&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Ian Rose&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Isaiah Norton&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;James Bourbeau&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Janne Vuorela&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;John Kirkham&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Jim Crist&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Joe Corbett&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Jorge Pessoa&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Julia Signell&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;JulianWgs&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Justin Poehnelt&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Justin Waugh&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Ksenia Bobrova&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Lijo Jose&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Marco Neumann&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Mark Bell&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Martin Durant&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Matthew Rocklin&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Michael Eaton&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Michał Jastrzębski&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Nathan Matare&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Nick Becker&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Paweł Kordek&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Peter Andreas Entschev&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Philipp Rudiger&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Philipp S. Sommer&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Roma Sokolov&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Ross Petchler&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Scott Sievert&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Shyam Saladi&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Søren Fuglede Jørgensen&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Thomas Zilio&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Tom Augspurger&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Yu Feng&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;aaronfowles&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;amerkel2&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;asmith26&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;btw08&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;gregrf&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;mbarkhau&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;mcsoini&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;severo&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;tpanza&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a class="reference external" href="https://github.com/dask/distributed"&gt;dask/distributed&lt;/a&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Adam Beberg&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Benjamin Zaitlen&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Brett Jurman&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Brett Randall&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Brian Chu&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Caleb&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Chris White&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Daniel Farrell&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Elliott Sales de Andrade&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;George Sakkis&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;James Bourbeau&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Jim Crist&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;John Kirkham&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;K.-Michael Aye&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Loïc Estève&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Magnus Nord&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Manuel Garrido&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Marco Neumann&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Martin Durant&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Mathieu Dugré&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Matt Nicolls&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Matthew Rocklin&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Michael Delgado&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Michael Spiegel&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Muammar El Khatib&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Nikos Tsaousis&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Olivier Grisel&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Peter Andreas Entschev&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Sam Grayson&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Scott Sievert&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Tom Augspurger&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Torsten Wörtwein&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;amerkel2&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;condoratberlin&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;deepthirajagopalan7&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;jukent&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;plbertrand&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a class="reference external" href="https://github.com/dask/dask-ml"&gt;dask/dask-ml&lt;/a&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Alejandro&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Florian Rohrer&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;James Bourbeau&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Julien Jerphanion&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Matthew Rocklin&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Nathan Henrie&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Paul Vecchio&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Ryan McCormick&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Saadullah Amin&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Scott Sievert&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Sriharsha Atyam&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Tom Augspurger&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a class="reference external" href="https://github.com/dask/dask-jobqueue"&gt;dask/dask-jobqueue&lt;/a&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Andrea Zonca&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Guillaume Eynard-Bontemps&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Kyle Husmann&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Levi Naden&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Loïc Estève&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Matthew Rocklin&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Matyas Selmeci&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;ocaisa&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a class="reference external" href="https://github.com/dask/dask-kubernetes"&gt;dask/dask-kubernetes&lt;/a&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Brian Phillips&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Jacob Tomlinson&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Jim Crist&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Joe Hamman&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Joseph Hamman&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Matthew Rocklin&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Tom Augspurger&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Yuvi Panda&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;adam&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a class="reference external" href="https://github.com/dask/dask-examples"&gt;dask/dask-examples&lt;/a&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Christoph Deil&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Genevieve Buckley&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Ian Rose&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Martin Durant&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Matthew Rocklin&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Matthias Bussonnier&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Robert Sare&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Tom Augspurger&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Willi Rath&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a class="reference external" href="https://github.com/dask/dask-labextension"&gt;dask/dask-labextension&lt;/a&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Daniel Bast&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Ian Rose&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Matthew Rocklin&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Yuvi Panda&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/section&gt;
</content>
    <link href="https://blog.dask.org/2019/06/22/dask-2.0/"/>
    <summary>Please take the Dask User Survey for 2019.
Your reponse helps to prioritize future work.</summary>
    <category term="release" label="release"/>
    <published>2019-06-22T00:00:00+00:00</published>
  </entry>
</feed>
