Hello community, here is the log from the commit of package python-distributed for openSUSE:Factory checked in at 2018-11-26 10:29:30 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/python-distributed (Old) and /work/SRC/openSUSE:Factory/.python-distributed.new.19453 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-distributed" Mon Nov 26 10:29:30 2018 rev:11 rq:651330 version:1.24.2 Changes: -------- --- /work/SRC/openSUSE:Factory/python-distributed/python-distributed.changes 2018-11-12 09:46:45.508706243 +0100 +++ /work/SRC/openSUSE:Factory/.python-distributed.new.19453/python-distributed.changes 2018-11-26 10:29:45.061067052 +0100 @@ -1,0 +2,10 @@ +Thu Nov 22 22:46:56 UTC 2018 - Arun Persaud <[email protected]> + +- update to version 1.24.2: + * Add support for Bokeh 1.0 (GH#2348) (GH#2356) Matthew Rocklin + * Fix regression that dropped support for Tornado 4 (GH#2353) Roy + Wedge + * Avoid deprecation warnings (GH#2355) (GH#2357) Matthew Rocklin + * Fix typo in worker documentation (GH#2349) Tom Rochette + +------------------------------------------------------------------- Old: ---- distributed-1.24.1.tar.gz New: ---- distributed-1.24.2.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ python-distributed.spec ++++++ --- /var/tmp/diff_new_pack.AnCQg6/_old 2018-11-26 10:29:45.573066452 +0100 +++ /var/tmp/diff_new_pack.AnCQg6/_new 2018-11-26 10:29:45.577066447 +0100 @@ -20,7 +20,7 @@ # Test requires network connection %bcond_with test Name: python-distributed -Version: 1.24.1 +Version: 1.24.2 Release: 0 Summary: Library for distributed computing with Python License: BSD-3-Clause ++++++ distributed-1.24.1.tar.gz -> distributed-1.24.2.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/distributed-1.24.1/PKG-INFO new/distributed-1.24.2/PKG-INFO --- old/distributed-1.24.1/PKG-INFO 2018-11-09 19:47:41.000000000 +0100 +++ new/distributed-1.24.2/PKG-INFO 2018-11-15 13:47:19.000000000 +0100 @@ -1,6 +1,6 @@ Metadata-Version: 1.2 Name: distributed -Version: 1.24.1 +Version: 1.24.2 Summary: Distributed scheduler for Dask Home-page: https://distributed.readthedocs.io/en/latest/ Maintainer: Matthew Rocklin diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/distributed-1.24.1/distributed/_version.py new/distributed-1.24.2/distributed/_version.py --- old/distributed-1.24.1/distributed/_version.py 2018-11-09 19:47:41.000000000 +0100 +++ new/distributed-1.24.2/distributed/_version.py 2018-11-15 13:47:19.000000000 +0100 @@ -8,11 +8,11 @@ version_json = ''' { - "date": "2018-11-09T13:46:26-0500", + "date": "2018-11-15T07:46:27-0500", "dirty": false, "error": null, - "full-revisionid": "32341216c9f62e37c2e01c898e26b117e2b872b3", - "version": "1.24.1" + "full-revisionid": "0e33bb295f03ec6a971deea817462534c4cf2c76", + "version": "1.24.2" } ''' # END VERSION_JSON diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/distributed-1.24.1/distributed/bokeh/components.py new/distributed-1.24.2/distributed/bokeh/components.py --- old/distributed-1.24.1/distributed/bokeh/components.py 2018-11-09 19:21:58.000000000 +0100 +++ new/distributed-1.24.2/distributed/bokeh/components.py 2018-11-15 13:41:11.000000000 +0100 @@ -5,6 +5,7 @@ from time import time import weakref +import bokeh from bokeh.layouts import row, column from bokeh.models import ( ColumnDataSource, Plot, DataRange1d, LinearAxis, HoverTool, BoxZoomTool, ResetTool, PanTool, WheelZoomTool, Range1d, @@ -312,7 +313,11 @@ def cb(attr, old, new): with log_errors(): try: - ind = new['1d']['indices'][0] + selected = new.indices + except AttributeError: + selected = new['1d']['indices'] + try: + ind = selected[0] except IndexError: return data = profile.plot_data(self.states[ind], profile_interval) @@ -321,7 +326,10 @@ self.source.data.update(data) self.source.selected = old - self.source.on_change('selected', cb) + if bokeh.__version__ >= '1.0': + self.source.selected.on_change('indices', cb) + else: + self.source.on_change('selected', cb) self.root = figure(tools='tap', **kwargs) self.root.quad('left', 'right', 'top', 'bottom', color='color', @@ -407,8 +415,12 @@ if changing[0]: return with log_errors(): + if isinstance(new, list): # bokeh >= 1.0 + selected = new + else: + selected = new['1d']['indices'] try: - ind = new['1d']['indices'][0] + ind = selected[0] except IndexError: return data = profile.plot_data(self.states[ind], profile_interval) @@ -416,10 +428,16 @@ self.states.extend(data.pop('states')) changing[0] = True # don't recursively trigger callback self.source.data.update(data) - self.source.selected = old + if isinstance(new, list): # bokeh >= 1.0 + self.source.selected.indices = old + else: + self.source.selected = old changing[0] = False - self.source.on_change('selected', cb) + if bokeh.__version__ >= '1.0': + self.source.selected.on_change('indices', cb) + else: + self.source.on_change('selected', cb) self.profile_plot = figure(tools='tap', height=400, **kwargs) r = self.profile_plot.quad('left', 'right', 'top', 'bottom', color='color', @@ -488,7 +506,10 @@ self.start = self.stop = None self.trigger_update(update_metadata=False) - self.ts_source.on_change('selected', ts_change) + if bokeh.__version__ >= '1.0': + self.ts_source.selected.on_change('indices', ts_change) + else: + self.ts_source.on_change('selected', ts_change) self.reset_button = Button(label="Reset", button_type="success") self.reset_button.on_click(lambda: self.update(self.state) ) @@ -570,8 +591,12 @@ if changing[0]: return with log_errors(): + if isinstance(new, list): # bokeh >= 1.0 + selected = new + else: + selected = new['1d']['indices'] try: - ind = new['1d']['indices'][0] + ind = selected[0] except IndexError: return data = profile.plot_data(self.states[ind], profile_interval) @@ -579,10 +604,16 @@ self.states.extend(data.pop('states')) changing[0] = True # don't recursively trigger callback self.source.data.update(data) - self.source.selected = old + if isinstance(new, list): # bokeh >= 1.0 + self.source.selected.indices = old + else: + self.source.selected = old changing[0] = False - self.source.on_change('selected', cb) + if bokeh.__version__ >= '1.0': + self.source.selected.on_change('indices', cb) + else: + self.source.on_change('selected', cb) self.profile_plot = figure(tools='tap', height=400, **kwargs) r = self.profile_plot.quad('left', 'right', 'top', 'bottom', color='color', @@ -651,7 +682,10 @@ self.start = self.stop = None self.trigger_update() - self.ts_source.on_change('selected', ts_change) + if bokeh.__version__ >= '1.0': + self.ts_source.selected.on_change('indices', ts_change) + else: + self.ts_source.on_change('selected', ts_change) self.reset_button = Button(label="Reset", button_type="success") self.reset_button.on_click(lambda: self.update(self.state)) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/distributed-1.24.1/distributed/compatibility.py new/distributed-1.24.2/distributed/compatibility.py --- old/distributed-1.24.1/distributed/compatibility.py 2018-10-26 00:54:57.000000000 +0200 +++ new/distributed-1.24.2/distributed/compatibility.py 2018-11-15 13:41:11.000000000 +0100 @@ -12,6 +12,7 @@ from inspect import getargspec from cgi import escape as html_escape from collections import Iterator, Mapping, Set, MutableMapping + from fractions import gcd reload = reload unicode = unicode @@ -67,6 +68,7 @@ from importlib.util import cache_from_source from inspect import getfullargspec as getargspec from html import escape as html_escape + from math import gcd PY2 = False PY3 = True diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/distributed-1.24.1/distributed/diagnostics/progressbar.py new/distributed-1.24.2/distributed/diagnostics/progressbar.py --- old/distributed-1.24.1/distributed/diagnostics/progressbar.py 2018-10-12 15:35:59.000000000 +0200 +++ new/distributed-1.24.2/distributed/diagnostics/progressbar.py 2018-11-15 13:41:11.000000000 +0100 @@ -145,8 +145,8 @@ from ipywidgets import FloatProgress, HBox, VBox, HTML self.elapsed_time = HTML('') - self.bar = FloatProgress(min=0, max=1, description='', height='10px') - self.bar_text = HTML('', width="140px") + self.bar = FloatProgress(min=0, max=1, description='') + self.bar_text = HTML('') self.bar_widget = HBox([self.bar_text, self.bar]) self.widget = VBox([self.elapsed_time, self.bar_widget]) @@ -269,10 +269,9 @@ def make_widget(self, all): from ipywidgets import FloatProgress, HBox, VBox, HTML self.elapsed_time = HTML('') - self.bars = {key: FloatProgress(min=0, max=1, description='', - height='10px') + self.bars = {key: FloatProgress(min=0, max=1, description='') for key in all} - self.bar_texts = {key: HTML('', width="140px") for key in all} + self.bar_texts = {key: HTML('') for key in all} self.bar_labels = {key: HTML('<div style=\"padding: 0px 10px 0px 10px;' ' text-align:left; word-wrap: ' 'break-word;\">' + diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/distributed-1.24.1/distributed/protocol/numpy.py new/distributed-1.24.2/distributed/protocol/numpy.py --- old/distributed-1.24.1/distributed/protocol/numpy.py 2018-11-09 17:47:35.000000000 +0100 +++ new/distributed-1.24.2/distributed/protocol/numpy.py 2018-11-15 13:41:11.000000000 +0100 @@ -1,13 +1,12 @@ from __future__ import print_function, division, absolute_import -import fractions - import numpy as np from .utils import frame_split_size, merge_frames from .serialize import dask_serialize, dask_deserialize from . import pickle +from ..compatibility import gcd from ..utils import log_errors @@ -61,13 +60,13 @@ data = x.ravel() if data.dtype.fields or data.dtype.itemsize > 8: - data = data.view('u%d' % fractions.gcd(x.dtype.itemsize, 8)) + data = data.view('u%d' % gcd(x.dtype.itemsize, 8)) try: data = data.data except ValueError: # "ValueError: cannot include dtype 'M' in a buffer" - data = data.view('u%d' % fractions.gcd(x.dtype.itemsize, 8)).data + data = data.view('u%d' % gcd(x.dtype.itemsize, 8)).data header = {'dtype': dt, 'shape': x.shape, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/distributed-1.24.1/distributed/protocol/tests/test_numpy.py new/distributed-1.24.2/distributed/protocol/tests/test_numpy.py --- old/distributed-1.24.1/distributed/protocol/tests/test_numpy.py 2018-11-09 17:47:35.000000000 +0100 +++ new/distributed-1.24.2/distributed/protocol/tests/test_numpy.py 2018-11-15 13:41:11.000000000 +0100 @@ -168,7 +168,7 @@ frames = dumps({'x': to_serialize(x)}) assert sum(map(nbytes, frames)) < x.nbytes - header = msgpack.loads(frames[2], encoding='utf8', use_list=False) + header = msgpack.loads(frames[2], raw=False, use_list=False) try: import blosc # noqa: F401 except ImportError: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/distributed-1.24.1/distributed/scheduler.py new/distributed-1.24.2/distributed/scheduler.py --- old/distributed-1.24.1/distributed/scheduler.py 2018-10-26 00:54:57.000000000 +0200 +++ new/distributed-1.24.2/distributed/scheduler.py 2018-11-15 13:41:09.000000000 +0100 @@ -4307,8 +4307,8 @@ now = time() for ws in self.workers.values(): if ws.last_seen < now - self.worker_ttl: - logger.warn("Worker failed to heartbeat within %s seconds. " - "Closing: %s", self.worker_ttl, ws) + logger.warning("Worker failed to heartbeat within %s seconds. " + "Closing: %s", self.worker_ttl, ws) self.remove_worker(address=ws.address) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/distributed-1.24.1/distributed/utils.py new/distributed-1.24.2/distributed/utils.py --- old/distributed-1.24.1/distributed/utils.py 2018-11-09 17:47:35.000000000 +0100 +++ new/distributed-1.24.2/distributed/utils.py 2018-11-15 13:41:11.000000000 +0100 @@ -1372,7 +1372,7 @@ # Only bother if asyncio has been loaded by Tornado -if 'asyncio' in sys.modules: +if 'asyncio' in sys.modules and tornado.version_info[0] >= 5: jupyter_event_loop_initialized = False diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/distributed-1.24.1/distributed/utils_perf.py new/distributed-1.24.2/distributed/utils_perf.py --- old/distributed-1.24.1/distributed/utils_perf.py 2018-10-12 15:35:59.000000000 +0200 +++ new/distributed-1.24.2/distributed/utils_perf.py 2018-11-15 13:41:09.000000000 +0100 @@ -192,8 +192,9 @@ self._fractional_timer.stop_timing() frac = self._fractional_timer.running_fraction if frac is not None and frac >= self._warn_over_frac: - logger.warn("full garbage collections took %d%% CPU time recently " - "(threshold: %d%%)", 100 * frac, 100 * self._warn_over_frac) + logger.warning("full garbage collections took %d%% CPU time " + "recently (threshold: %d%%)", + 100 * frac, 100 * self._warn_over_frac) rss_saved = self._gc_rss_before - rss if rss_saved >= self._info_over_rss_win: logger.info("full garbage collection released %s " @@ -202,8 +203,8 @@ format_bytes(self._info_over_rss_win)) if info['uncollectable'] > 0: # This should ideally never happen on Python 3, but who knows? - logger.warn("garbage collector couldn't collect %d objects, " - "please look in gc.garbage", info['uncollectable']) + logger.warning("garbage collector couldn't collect %d objects, " + "please look in gc.garbage", info['uncollectable']) _gc_diagnosis = GCDiagnosis() diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/distributed-1.24.1/distributed/worker.py new/distributed-1.24.2/distributed/worker.py --- old/distributed-1.24.1/distributed/worker.py 2018-11-09 17:47:35.000000000 +0100 +++ new/distributed-1.24.2/distributed/worker.py 2018-11-15 13:41:09.000000000 +0100 @@ -278,7 +278,7 @@ self.scheduler_delay = response['time'] - middle self.periodic_callbacks['heartbeat'].callback_time = response['heartbeat-interval'] * 1000 except CommClosedError: - logger.warn("Heartbeat to scheduler failed") + logger.warning("Heartbeat to scheduler failed") finally: self.heartbeat_active = False else: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/distributed-1.24.1/distributed.egg-info/PKG-INFO new/distributed-1.24.2/distributed.egg-info/PKG-INFO --- old/distributed-1.24.1/distributed.egg-info/PKG-INFO 2018-11-09 19:47:41.000000000 +0100 +++ new/distributed-1.24.2/distributed.egg-info/PKG-INFO 2018-11-15 13:47:19.000000000 +0100 @@ -1,6 +1,6 @@ Metadata-Version: 1.2 Name: distributed -Version: 1.24.1 +Version: 1.24.2 Summary: Distributed scheduler for Dask Home-page: https://distributed.readthedocs.io/en/latest/ Maintainer: Matthew Rocklin diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/distributed-1.24.1/docs/source/changelog.rst new/distributed-1.24.2/docs/source/changelog.rst --- old/distributed-1.24.1/docs/source/changelog.rst 2018-11-09 19:37:42.000000000 +0100 +++ new/distributed-1.24.2/docs/source/changelog.rst 2018-11-15 13:45:52.000000000 +0100 @@ -1,6 +1,14 @@ Changelog ========= +1.24.2 - 2018-11-15 +------------------- + +- Add support for Bokeh 1.0 (:pr:`2348`) (:pr:`2356`) `Matthew Rocklin`_ +- Fix regression that dropped support for Tornado 4 (:pr:`2353`) `Roy Wedge`_ +- Avoid deprecation warnings (:pr:`2355`) (:pr:`2357`) `Matthew Rocklin`_ +- Fix typo in worker documentation (:pr:`2349`) `Tom Rochette`_ + 1.24.1 - 2018-11-09 ------------------- @@ -836,3 +844,5 @@ .. _`Eric Ma`: https://github.com/ericmjl .. _`Peter Killick`: https://github.com/dkillick .. _`NotSqrt`: https://github.com/NotSqrt +.. _`Tom Rochette`: https://github.com/tomzx +.. _`Roy Wedge`: https://github.com/rwedge diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/distributed-1.24.1/docs/source/worker.rst new/distributed-1.24.2/docs/source/worker.rst --- old/distributed-1.24.1/docs/source/worker.rst 2018-10-13 16:31:16.000000000 +0200 +++ new/distributed-1.24.2/docs/source/worker.rst 2018-11-14 21:01:09.000000000 +0100 @@ -147,7 +147,7 @@ Workers are given a target memory limit to stay under with the command line ``--memory-limit`` keyword or the ``memory_limit=`` Python keyword argument, which sets the memory limit per worker processes launched -by dask-workder :: +by dask-worker :: $ dask-worker tcp://scheduler:port --memory-limit=auto # total available RAM on the machine $ dask-worker tcp://scheduler:port --memory-limit=4e9 # four gigabytes per worker process.
