Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package python-tqdm for openSUSE:Factory 
checked in at 2022-04-12 21:43:13
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-tqdm (Old)
 and      /work/SRC/openSUSE:Factory/.python-tqdm.new.1900 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-tqdm"

Tue Apr 12 21:43:13 2022 rev:51 rq:967946 version:4.64.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/python-tqdm/python-tqdm.changes  2022-03-31 
17:18:09.837627210 +0200
+++ /work/SRC/openSUSE:Factory/.python-tqdm.new.1900/python-tqdm.changes        
2022-04-12 21:43:15.051742754 +0200
@@ -1,0 +2,12 @@
+Sat Apr  9 01:57:42 UTC 2022 - Arun Persaud <a...@gmx.de>
+
+- update to version 4.64.0:
+  * add contrib.slack (#1313)
+
+- changes from version 4.63.2:
+  * rich: expose options kwargs (#1282)
+  * autonotebook: re-enable VSCode (#1309)
+  * misc docs typos (#1301, #1299)
+  * update dev dependencies (#1311)
+
+-------------------------------------------------------------------

Old:
----
  tqdm-4.63.1.tar.gz

New:
----
  tqdm-4.64.0.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ python-tqdm.spec ++++++
--- /var/tmp/diff_new_pack.6iBh4t/_old  2022-04-12 21:43:15.795734198 +0200
+++ /var/tmp/diff_new_pack.6iBh4t/_new  2022-04-12 21:43:15.799734152 +0200
@@ -28,7 +28,7 @@
 %bcond_with test
 %endif
 Name:           python-tqdm%{pkg_suffix}
-Version:        4.63.1
+Version:        4.64.0
 Release:        0
 Summary:        An extensible progress meter
 License:        MIT AND MPL-2.0

++++++ tqdm-4.63.1.tar.gz -> tqdm-4.64.0.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tqdm-4.63.1/PKG-INFO new/tqdm-4.64.0/PKG-INFO
--- old/tqdm-4.63.1/PKG-INFO    2022-03-24 00:37:15.631581800 +0100
+++ new/tqdm-4.64.0/PKG-INFO    2022-04-04 03:48:42.514477300 +0200
@@ -1,6 +1,6 @@
 Metadata-Version: 2.1
 Name: tqdm
-Version: 4.63.1
+Version: 4.64.0
 Summary: Fast, Extensible Progress Meter
 Home-page: https://tqdm.github.io
 Maintainer: tqdm developers
@@ -71,6 +71,7 @@
 Requires-Python: !=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,>=2.7
 Description-Content-Type: text/x-rst
 Provides-Extra: dev
+Provides-Extra: slack
 Provides-Extra: telegram
 Provides-Extra: notebook
 License-File: LICENCE
@@ -769,11 +770,12 @@
 
 - ``tqdm.contrib.itertools``: Thin wrappers around ``itertools``
 - ``tqdm.contrib.concurrent``: Thin wrappers around ``concurrent.futures``
+- ``tqdm.contrib.slack``: Posts to `Slack <https://slack.com>`__ bots
 - ``tqdm.contrib.discord``: Posts to `Discord <https://discord.com>`__ bots
 - ``tqdm.contrib.telegram``: Posts to `Telegram <https://telegram.org>`__ bots
 - ``tqdm.contrib.bells``: Automagically enables all optional features
 
-  * ``auto``, ``pandas``, ``discord``, ``telegram``
+  * ``auto``, ``pandas``, ``slack``, ``discord``, ``telegram``
 
 Examples and Advanced Usage
 ---------------------------
@@ -1053,7 +1055,7 @@
 
     class TqdmExt(std_tqdm):
         def update(self, n=1):
-            displayed = super(TqdmExt, self).update(n):
+            displayed = super(TqdmExt, self).update(n)
             if displayed:
                 external_callback(**self.format_dict)
             return displayed
@@ -1261,8 +1263,9 @@
 - `tqdm/notebook.py 
<https://github.com/tqdm/tqdm/blob/master/tqdm/notebook.py>`__
 - `tqdm/gui.py <https://github.com/tqdm/tqdm/blob/master/tqdm/gui.py>`__
 - `tqdm/tk.py <https://github.com/tqdm/tqdm/blob/master/tqdm/tk.py>`__
-- `tqdm/contrib/telegram.py 
<https://github.com/tqdm/tqdm/blob/master/tqdm/contrib/telegram.py>`__
+- `tqdm/contrib/slack.py 
<https://github.com/tqdm/tqdm/blob/master/tqdm/contrib/slack.py>`__
 - `tqdm/contrib/discord.py 
<https://github.com/tqdm/tqdm/blob/master/tqdm/contrib/discord.py>`__
+- `tqdm/contrib/telegram.py 
<https://github.com/tqdm/tqdm/blob/master/tqdm/contrib/telegram.py>`__
 
 Dynamic Monitor/Meter
 ~~~~~~~~~~~~~~~~~~~~~
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tqdm-4.63.1/README.rst new/tqdm-4.64.0/README.rst
--- old/tqdm-4.63.1/README.rst  2022-03-24 00:37:11.000000000 +0100
+++ new/tqdm-4.64.0/README.rst  2022-04-04 03:48:38.000000000 +0200
@@ -692,11 +692,12 @@
 
 - ``tqdm.contrib.itertools``: Thin wrappers around ``itertools``
 - ``tqdm.contrib.concurrent``: Thin wrappers around ``concurrent.futures``
+- ``tqdm.contrib.slack``: Posts to `Slack <https://slack.com>`__ bots
 - ``tqdm.contrib.discord``: Posts to `Discord <https://discord.com>`__ bots
 - ``tqdm.contrib.telegram``: Posts to `Telegram <https://telegram.org>`__ bots
 - ``tqdm.contrib.bells``: Automagically enables all optional features
 
-  * ``auto``, ``pandas``, ``discord``, ``telegram``
+  * ``auto``, ``pandas``, ``slack``, ``discord``, ``telegram``
 
 Examples and Advanced Usage
 ---------------------------
@@ -976,7 +977,7 @@
 
     class TqdmExt(std_tqdm):
         def update(self, n=1):
-            displayed = super(TqdmExt, self).update(n):
+            displayed = super(TqdmExt, self).update(n)
             if displayed:
                 external_callback(**self.format_dict)
             return displayed
@@ -1184,8 +1185,9 @@
 - `tqdm/notebook.py 
<https://github.com/tqdm/tqdm/blob/master/tqdm/notebook.py>`__
 - `tqdm/gui.py <https://github.com/tqdm/tqdm/blob/master/tqdm/gui.py>`__
 - `tqdm/tk.py <https://github.com/tqdm/tqdm/blob/master/tqdm/tk.py>`__
-- `tqdm/contrib/telegram.py 
<https://github.com/tqdm/tqdm/blob/master/tqdm/contrib/telegram.py>`__
+- `tqdm/contrib/slack.py 
<https://github.com/tqdm/tqdm/blob/master/tqdm/contrib/slack.py>`__
 - `tqdm/contrib/discord.py 
<https://github.com/tqdm/tqdm/blob/master/tqdm/contrib/discord.py>`__
+- `tqdm/contrib/telegram.py 
<https://github.com/tqdm/tqdm/blob/master/tqdm/contrib/telegram.py>`__
 
 Dynamic Monitor/Meter
 ~~~~~~~~~~~~~~~~~~~~~
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tqdm-4.63.1/environment.yml 
new/tqdm-4.64.0/environment.yml
--- old/tqdm-4.63.1/environment.yml     2022-03-24 00:36:48.000000000 +0100
+++ new/tqdm-4.64.0/environment.yml     2022-04-04 03:48:04.000000000 +0200
@@ -29,6 +29,7 @@
 - numpy              # pandas, keras, contrib.tenumerate
 - pandas
 - tensorflow         # keras
+- slack-sdk          # contrib.slack
 - requests           # contrib.telegram
 - rich               # rich
 - argopt             # `cd wiki && pymake`
@@ -36,10 +37,10 @@
 - wheel              # `setup.py bdist_wheel`
 # `cd docs && pymake`
 - mkdocs-material
-- pydoc-markdown >=3.3.0
+- pydoc-markdown
 - pygments
 - pymdown-extensions
 - pip:
   - py-make >=0.1.0  # `setup.py make/pymake`
-  - mkdocs-minify-plugin                                   # `cd docs && 
pymake`
-  - git+git://github.com/tqdm/jsmin@python3-only#egg=jsmin # `cd docs && 
pymake`
+  - mkdocs-minify-plugin                                     # `cd docs && 
pymake`
+  - git+https://github.com/tqdm/jsmin@python3-only#egg=jsmin # `cd docs && 
pymake`
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tqdm-4.63.1/setup.cfg new/tqdm-4.64.0/setup.cfg
--- old/tqdm-4.63.1/setup.cfg   2022-03-24 00:37:15.631581800 +0100
+++ new/tqdm-4.64.0/setup.cfg   2022-04-04 03:48:42.514477300 +0200
@@ -85,6 +85,7 @@
 
 [options.extras_require]
 dev = py-make>=0.1.0; twine; wheel
+slack = slack-sdk
 telegram = requests
 notebook = ipywidgets>=6
 
@@ -142,6 +143,7 @@
 include = tqdm/*
 omit = 
        tqdm/contrib/bells.py
+       tqdm/contrib/slack.py
        tqdm/contrib/discord.py
        tqdm/contrib/telegram.py
        tqdm/contrib/utils_worker.py
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tqdm-4.63.1/tqdm/_dist_ver.py 
new/tqdm-4.64.0/tqdm/_dist_ver.py
--- old/tqdm-4.63.1/tqdm/_dist_ver.py   2022-03-24 00:37:15.000000000 +0100
+++ new/tqdm-4.64.0/tqdm/_dist_ver.py   2022-04-04 03:48:42.000000000 +0200
@@ -1 +1 @@
-__version__ = '4.63.1'
+__version__ = '4.64.0'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tqdm-4.63.1/tqdm/autonotebook.py 
new/tqdm-4.64.0/tqdm/autonotebook.py
--- old/tqdm-4.63.1/tqdm/autonotebook.py        2022-03-24 00:36:48.000000000 
+0100
+++ new/tqdm-4.64.0/tqdm/autonotebook.py        2022-04-04 03:48:04.000000000 
+0200
@@ -6,7 +6,6 @@
 >>> for i in trange(10):
 ...     ...
 """
-import os
 import sys
 from warnings import warn
 
@@ -14,8 +13,6 @@
     get_ipython = sys.modules['IPython'].get_ipython
     if 'IPKernelApp' not in get_ipython().config:  # pragma: no cover
         raise ImportError("console")
-    if 'VSCODE_PID' in os.environ:  # pragma: no cover
-        raise ImportError("vscode")
     from .notebook import WARN_NOIPYW, IProgress
     if IProgress is None:
         from .std import TqdmWarning
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tqdm-4.63.1/tqdm/contrib/bells.py 
new/tqdm-4.64.0/tqdm/contrib/bells.py
--- old/tqdm-4.63.1/tqdm/contrib/bells.py       2022-03-24 00:36:48.000000000 
+0100
+++ new/tqdm-4.64.0/tqdm/contrib/bells.py       2022-04-04 03:48:04.000000000 
+0200
@@ -12,7 +12,9 @@
 import warnings
 from os import getenv
 
-if getenv("TQDM_TELEGRAM_TOKEN") and getenv("TQDM_TELEGRAM_CHAT_ID"):
+if getenv("TQDM_SLACK_TOKEN") and getenv("TQDM_SLACK_CHANNEL"):
+    from .slack import tqdm, trange
+elif getenv("TQDM_TELEGRAM_TOKEN") and getenv("TQDM_TELEGRAM_CHAT_ID"):
     from .telegram import tqdm, trange
 elif getenv("TQDM_DISCORD_TOKEN") and getenv("TQDM_DISCORD_CHANNEL_ID"):
     from .discord import tqdm, trange
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tqdm-4.63.1/tqdm/contrib/discord.py 
new/tqdm-4.64.0/tqdm/contrib/discord.py
--- old/tqdm-4.63.1/tqdm/contrib/discord.py     2022-03-24 00:36:48.000000000 
+0100
+++ new/tqdm-4.64.0/tqdm/contrib/discord.py     2022-04-04 03:48:04.000000000 
+0200
@@ -3,7 +3,7 @@
 
 Usage:
 >>> from tqdm.contrib.discord import tqdm, trange
->>> for i in tqdm(iterable, token='{token}', channel_id='{channel_id}'):
+>>> for i in trange(10, token='{token}', channel_id='{channel_id}'):
 ...     ...
 
 ![screenshot](https://img.tqdm.ml/screenshot-discord.png)
@@ -39,6 +39,7 @@
             self.message = client.api.channels_messages_create(channel_id, 
self.text)
         except Exception as e:
             tqdm_auto.write(str(e))
+            self.message = None
 
     def write(self, s):
         """Replaces internal `message`'s text with `s`."""
@@ -47,9 +48,12 @@
         s = s.replace('\r', '').strip()
         if s == self.text:
             return  # skip duplicate message
+        message = self.message
+        if message is None:
+            return
         self.text = s
         try:
-            future = self.submit(self.message.edit, '`' + s + '`')
+            future = self.submit(message.edit, '`' + s + '`')
         except Exception as e:
             tqdm_auto.write(str(e))
         else:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tqdm-4.63.1/tqdm/contrib/slack.py 
new/tqdm-4.64.0/tqdm/contrib/slack.py
--- old/tqdm-4.63.1/tqdm/contrib/slack.py       1970-01-01 01:00:00.000000000 
+0100
+++ new/tqdm-4.64.0/tqdm/contrib/slack.py       2022-04-04 03:48:04.000000000 
+0200
@@ -0,0 +1,126 @@
+"""
+Sends updates to a Slack app.
+
+Usage:
+>>> from tqdm.contrib.slack import tqdm, trange
+>>> for i in trange(10, token='{token}', channel='{channel}'):
+...     ...
+
+![screenshot](https://img.tqdm.ml/screenshot-slack.png)
+"""
+from __future__ import absolute_import
+
+import logging
+from os import getenv
+
+try:
+    from slack_sdk import WebClient
+except ImportError:
+    raise ImportError("Please `pip install slack-sdk`")
+
+from ..auto import tqdm as tqdm_auto
+from ..utils import _range
+from .utils_worker import MonoWorker
+
+__author__ = {"github.com/": ["0x2b3bfa0", "casperdcl"]}
+__all__ = ['SlackIO', 'tqdm_slack', 'tsrange', 'tqdm', 'trange']
+
+
+class SlackIO(MonoWorker):
+    """Non-blocking file-like IO using a Slack app."""
+    def __init__(self, token, channel):
+        """Creates a new message in the given `channel`."""
+        super(SlackIO, self).__init__()
+        self.client = WebClient(token=token)
+        self.text = self.__class__.__name__
+        try:
+            self.message = self.client.chat_postMessage(channel=channel, 
text=self.text)
+        except Exception as e:
+            tqdm_auto.write(str(e))
+            self.message = None
+
+    def write(self, s):
+        """Replaces internal `message`'s text with `s`."""
+        if not s:
+            s = "..."
+        s = s.replace('\r', '').strip()
+        if s == self.text:
+            return  # skip duplicate message
+        message = self.message
+        if message is None:
+            return
+        self.text = s
+        try:
+            future = self.submit(self.client.chat_update, 
channel=message['channel'],
+                                 ts=message['ts'], text='`' + s + '`')
+        except Exception as e:
+            tqdm_auto.write(str(e))
+        else:
+            return future
+
+
+class tqdm_slack(tqdm_auto):
+    """
+    Standard `tqdm.auto.tqdm` but also sends updates to a Slack app.
+    May take a few seconds to create (`__init__`).
+
+    - create a Slack app with the `chat:write` scope & invite it to a
+      channel: <https://api.slack.com/authentication/basics>
+    - copy the bot `{token}` & `{channel}` and paste below
+    >>> from tqdm.contrib.slack import tqdm, trange
+    >>> for i in tqdm(iterable, token='{token}', channel='{channel}'):
+    ...     ...
+    """
+    def __init__(self, *args, **kwargs):
+        """
+        Parameters
+        ----------
+        token  : str, required. Slack token
+            [default: ${TQDM_SLACK_TOKEN}].
+        channel  : int, required. Slack channel
+            [default: ${TQDM_SLACK_CHANNEL}].
+        mininterval  : float, optional.
+          Minimum of [default: 1.5] to avoid rate limit.
+
+        See `tqdm.auto.tqdm.__init__` for other parameters.
+        """
+        if not kwargs.get('disable'):
+            kwargs = kwargs.copy()
+            logging.getLogger("HTTPClient").setLevel(logging.WARNING)
+            self.sio = SlackIO(
+                kwargs.pop('token', getenv("TQDM_SLACK_TOKEN")),
+                kwargs.pop('channel', getenv("TQDM_SLACK_CHANNEL")))
+            kwargs['mininterval'] = max(1.5, kwargs.get('mininterval', 1.5))
+        super(tqdm_slack, self).__init__(*args, **kwargs)
+
+    def display(self, **kwargs):
+        super(tqdm_slack, self).display(**kwargs)
+        fmt = self.format_dict
+        if fmt.get('bar_format', None):
+            fmt['bar_format'] = fmt['bar_format'].replace(
+                '<bar/>', '`{bar:10}`').replace('{bar}', '`{bar:10u}`')
+        else:
+            fmt['bar_format'] = '{l_bar}`{bar:10}`{r_bar}'
+        if fmt['ascii'] is False:
+            fmt['ascii'] = [":black_square:", ":small_blue_diamond:", 
":large_blue_diamond:",
+                            ":large_blue_square:"]
+            fmt['ncols'] = 336
+        self.sio.write(self.format_meter(**fmt))
+
+    def clear(self, *args, **kwargs):
+        super(tqdm_slack, self).clear(*args, **kwargs)
+        if not self.disable:
+            self.sio.write("")
+
+
+def tsrange(*args, **kwargs):
+    """
+    A shortcut for `tqdm.contrib.slack.tqdm(xrange(*args), **kwargs)`.
+    On Python3+, `range` is used instead of `xrange`.
+    """
+    return tqdm_slack(_range(*args), **kwargs)
+
+
+# Aliases
+tqdm = tqdm_slack
+trange = tsrange
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tqdm-4.63.1/tqdm/rich.py new/tqdm-4.64.0/tqdm/rich.py
--- old/tqdm-4.63.1/tqdm/rich.py        2022-03-24 00:36:48.000000000 +0100
+++ new/tqdm-4.64.0/tqdm/rich.py        2022-04-04 03:48:04.000000000 +0200
@@ -84,12 +84,15 @@
         ----------
         progress  : tuple, optional
             arguments for `rich.progress.Progress()`.
+        options  : dict, optional
+            keyword arguments for `rich.progress.Progress()`.
         """
         kwargs = kwargs.copy()
         kwargs['gui'] = True
         # convert disable = None to False
         kwargs['disable'] = bool(kwargs.get('disable', False))
         progress = kwargs.pop('progress', None)
+        options = kwargs.pop('options', {}).copy()
         super(tqdm_rich, self).__init__(*args, **kwargs)
 
         if self.disable:
@@ -108,7 +111,8 @@
                 ",", RateColumn(unit=d['unit'], unit_scale=d['unit_scale'],
                                 unit_divisor=d['unit_divisor']), "]"
             )
-        self._prog = Progress(*progress, transient=not self.leave)
+        options.setdefault('transient', not self.leave)
+        self._prog = Progress(*progress, **options)
         self._prog.__enter__()
         self._task_id = self._prog.add_task(self.desc or "", **d)
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tqdm-4.63.1/tqdm/std.py new/tqdm-4.64.0/tqdm/std.py
--- old/tqdm-4.63.1/tqdm/std.py 2022-03-24 00:36:48.000000000 +0100
+++ new/tqdm-4.64.0/tqdm/std.py 2022-04-04 03:48:04.000000000 +0200
@@ -672,7 +672,7 @@
             | groupby.(generic.)SeriesGroupBy
             ).progress_apply
 
-        A new instance will be create every time `progress_apply` is called,
+        A new instance will be created every time `progress_apply` is called,
         and each instance will automatically `close()` upon completion.
 
         Parameters
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tqdm-4.63.1/tqdm.egg-info/PKG-INFO 
new/tqdm-4.64.0/tqdm.egg-info/PKG-INFO
--- old/tqdm-4.63.1/tqdm.egg-info/PKG-INFO      2022-03-24 00:37:15.000000000 
+0100
+++ new/tqdm-4.64.0/tqdm.egg-info/PKG-INFO      2022-04-04 03:48:42.000000000 
+0200
@@ -1,6 +1,6 @@
 Metadata-Version: 2.1
 Name: tqdm
-Version: 4.63.1
+Version: 4.64.0
 Summary: Fast, Extensible Progress Meter
 Home-page: https://tqdm.github.io
 Maintainer: tqdm developers
@@ -71,6 +71,7 @@
 Requires-Python: !=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,>=2.7
 Description-Content-Type: text/x-rst
 Provides-Extra: dev
+Provides-Extra: slack
 Provides-Extra: telegram
 Provides-Extra: notebook
 License-File: LICENCE
@@ -769,11 +770,12 @@
 
 - ``tqdm.contrib.itertools``: Thin wrappers around ``itertools``
 - ``tqdm.contrib.concurrent``: Thin wrappers around ``concurrent.futures``
+- ``tqdm.contrib.slack``: Posts to `Slack <https://slack.com>`__ bots
 - ``tqdm.contrib.discord``: Posts to `Discord <https://discord.com>`__ bots
 - ``tqdm.contrib.telegram``: Posts to `Telegram <https://telegram.org>`__ bots
 - ``tqdm.contrib.bells``: Automagically enables all optional features
 
-  * ``auto``, ``pandas``, ``discord``, ``telegram``
+  * ``auto``, ``pandas``, ``slack``, ``discord``, ``telegram``
 
 Examples and Advanced Usage
 ---------------------------
@@ -1053,7 +1055,7 @@
 
     class TqdmExt(std_tqdm):
         def update(self, n=1):
-            displayed = super(TqdmExt, self).update(n):
+            displayed = super(TqdmExt, self).update(n)
             if displayed:
                 external_callback(**self.format_dict)
             return displayed
@@ -1261,8 +1263,9 @@
 - `tqdm/notebook.py 
<https://github.com/tqdm/tqdm/blob/master/tqdm/notebook.py>`__
 - `tqdm/gui.py <https://github.com/tqdm/tqdm/blob/master/tqdm/gui.py>`__
 - `tqdm/tk.py <https://github.com/tqdm/tqdm/blob/master/tqdm/tk.py>`__
-- `tqdm/contrib/telegram.py 
<https://github.com/tqdm/tqdm/blob/master/tqdm/contrib/telegram.py>`__
+- `tqdm/contrib/slack.py 
<https://github.com/tqdm/tqdm/blob/master/tqdm/contrib/slack.py>`__
 - `tqdm/contrib/discord.py 
<https://github.com/tqdm/tqdm/blob/master/tqdm/contrib/discord.py>`__
+- `tqdm/contrib/telegram.py 
<https://github.com/tqdm/tqdm/blob/master/tqdm/contrib/telegram.py>`__
 
 Dynamic Monitor/Meter
 ~~~~~~~~~~~~~~~~~~~~~
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tqdm-4.63.1/tqdm.egg-info/SOURCES.txt 
new/tqdm-4.64.0/tqdm.egg-info/SOURCES.txt
--- old/tqdm-4.63.1/tqdm.egg-info/SOURCES.txt   2022-03-24 00:37:15.000000000 
+0100
+++ new/tqdm-4.64.0/tqdm.egg-info/SOURCES.txt   2022-04-04 03:48:42.000000000 
+0200
@@ -83,5 +83,6 @@
 tqdm/contrib/discord.py
 tqdm/contrib/itertools.py
 tqdm/contrib/logging.py
+tqdm/contrib/slack.py
 tqdm/contrib/telegram.py
 tqdm/contrib/utils_worker.py
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tqdm-4.63.1/tqdm.egg-info/requires.txt 
new/tqdm-4.64.0/tqdm.egg-info/requires.txt
--- old/tqdm-4.63.1/tqdm.egg-info/requires.txt  2022-03-24 00:37:15.000000000 
+0100
+++ new/tqdm-4.64.0/tqdm.egg-info/requires.txt  2022-04-04 03:48:42.000000000 
+0200
@@ -13,5 +13,8 @@
 [notebook]
 ipywidgets>=6
 
+[slack]
+slack-sdk
+
 [telegram]
 requests

Reply via email to