Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package python-ipython for openSUSE:Factory 
checked in at 2021-04-10 15:25:50
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-ipython (Old)
 and      /work/SRC/openSUSE:Factory/.python-ipython.new.2401 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-ipython"

Sat Apr 10 15:25:50 2021 rev:20 rq:882364 version:7.22.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/python-ipython/python-ipython.changes    
2021-03-16 15:43:42.156969796 +0100
+++ /work/SRC/openSUSE:Factory/.python-ipython.new.2401/python-ipython.changes  
2021-04-10 15:25:51.478271219 +0200
@@ -1,0 +2,12 @@
+Sun Mar 28 16:53:58 UTC 2021 - Arun Persaud <[email protected]>
+
+- update to version 7.22.0:
+  * Fix some sys.excepthook shenanigan when embedding with qt,
+    recommended if you ??? for example ??? use napari. :ghpull:`12842`.
+  * Fix bug when using the new ipdb %context magic :ghpull:`12844`
+  * Couples of deprecation cleanup :ghpull:`12868`
+  * Update for new dpast.com api if you use the %pastbin
+    magic. :ghpull:`12712`
+  * Remove support for numpy before 1.16. :ghpull:`12836`
+
+-------------------------------------------------------------------

Old:
----
  ipython-7.21.0.tar.gz

New:
----
  ipython-7.22.0.tar.gz

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

Other differences:
------------------
++++++ python-ipython.spec ++++++
--- /var/tmp/diff_new_pack.kcnGeR/_old  2021-04-10 15:25:52.674272626 +0200
+++ /var/tmp/diff_new_pack.kcnGeR/_new  2021-04-10 15:25:52.674272626 +0200
@@ -1,5 +1,5 @@
 #
-# spec file for package python-ipython
+# spec file for package python-ipython-test
 #
 # Copyright (c) 2021 SUSE LLC
 #
@@ -24,15 +24,13 @@
 %define psuffix %{nil}
 %bcond_with test
 %endif
-
 %{?!python_module:%define python_module() python-%{**} python3-%{**}}
 %define         skip_python2 1
 # Python 3.6 was officiallay supported with IPython up to 7.15
 %define         skip_python36 1
-
 %bcond_without  iptest
 Name:           python-ipython%{psuffix}
-Version:        7.21.0
+Version:        7.22.0
 Release:        0
 Summary:        Rich architecture for interactive computing with Python
 License:        BSD-3-Clause
@@ -85,7 +83,7 @@
 BuildRequires:  hicolor-icon-theme
 BuildRequires:  update-desktop-files
 Requires(post): update-alternatives
-Requires(postun): update-alternatives
+Requires(postun):update-alternatives
 %if %{with ico}
 BuildRequires:  icoutils
 %endif


++++++ ipython-7.21.0.tar.gz -> ipython-7.22.0.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ipython-7.21.0/IPython/core/debugger.py 
new/ipython-7.22.0/IPython/core/debugger.py
--- old/ipython-7.21.0/IPython/core/debugger.py 2021-02-26 23:09:23.000000000 
+0100
+++ new/ipython-7.22.0/IPython/core/debugger.py 2021-03-27 01:47:57.000000000 
+0100
@@ -805,9 +805,9 @@
             new_context = int(context)
             if new_context <= 0:
                 raise ValueError()
+            self.context = new_context
         except ValueError:
             self.error("The 'context' command requires a positive integer 
argument.")
-        self.context = new_context
 
 
 class InterruptiblePdb(Pdb):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ipython-7.21.0/IPython/core/magics/code.py 
new/ipython-7.22.0/IPython/core/magics/code.py
--- old/ipython-7.21.0/IPython/core/magics/code.py      2021-02-26 
23:08:22.000000000 +0100
+++ new/ipython-7.22.0/IPython/core/magics/code.py      2021-03-27 
01:47:57.000000000 +0100
@@ -20,7 +20,7 @@
 import sys
 import ast
 from itertools import chain
-from urllib.request import urlopen
+from urllib.request import Request, urlopen
 from urllib.parse import urlencode
 
 # Our own packages
@@ -28,6 +28,7 @@
 from IPython.core.macro import Macro
 from IPython.core.magic import Magics, magics_class, line_magic
 from IPython.core.oinspect import find_file, find_source_lines
+from IPython.core.release import version
 from IPython.testing.skipdoctest import skip_doctest
 from IPython.utils.contexts import preserve_keys
 from IPython.utils.path import get_py_filename
@@ -244,7 +245,7 @@
 
     @line_magic
     def pastebin(self, parameter_s=''):
-        """Upload code to dpaste's paste bin, returning the URL.
+        """Upload code to dpaste.com, returning the URL.
 
         Usage:\\
           %pastebin [-d "Custom description"] 1-7
@@ -254,7 +255,7 @@
 
         Options:
 
-          -d: Pass a custom description for the gist. The default will say
+          -d: Pass a custom description. The default will say
               "Pasted from IPython".
         """
         opts, args = self.parse_options(parameter_s, 'd:')
@@ -265,13 +266,19 @@
             print(e.args[0])
             return
 
-        post_data = urlencode({
-          "title": opts.get('d', "Pasted from IPython"),
-          "syntax": "python3",
-          "content": code
-        }).encode('utf-8')
-
-        response = urlopen("http://dpaste.com/api/v2/";, post_data)
+        post_data = urlencode(
+            {
+                "title": opts.get("d", "Pasted from IPython"),
+                "syntax": "python",
+                "content": code,
+            }
+        ).encode("utf-8")
+
+        request = Request(
+            "http://dpaste.com/api/v2/";,
+            headers={"User-Agent": "IPython v{}".format(version)},
+        )
+        response = urlopen(request, post_data)
         return response.headers.get('Location')
 
     @line_magic
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ipython-7.21.0/IPython/core/release.py 
new/ipython-7.22.0/IPython/core/release.py
--- old/ipython-7.21.0/IPython/core/release.py  2021-02-26 23:10:26.000000000 
+0100
+++ new/ipython-7.22.0/IPython/core/release.py  2021-03-27 01:48:52.000000000 
+0100
@@ -20,7 +20,7 @@
 # release.  'dev' as a _version_extra string means this is a development
 # version
 _version_major = 7
-_version_minor = 21
+_version_minor = 22
 _version_patch = 0
 _version_extra = '.dev'
 # _version_extra = 'b1'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ipython-7.21.0/IPython/core/tests/test_display.py 
new/ipython-7.22.0/IPython/core/tests/test_display.py
--- old/ipython-7.21.0/IPython/core/tests/test_display.py       2021-02-26 
23:08:22.000000000 +0100
+++ new/ipython-7.22.0/IPython/core/tests/test_display.py       2021-03-27 
01:47:57.000000000 +0100
@@ -183,7 +183,7 @@
     ip = get_ipython()
     cfg = _get_inline_config()
     cfg.print_figure_kwargs.update(dict(foo='bar'))
-    kwargs = dict(quality=10)
+    kwargs = dict(dpi=150)
     display.set_matplotlib_formats('png', **kwargs)
     formatter = ip.display_formatter.formatters['image/png']
     f = formatter.lookup_by_type(Figure)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ipython-7.21.0/IPython/core/tests/test_iplib.py 
new/ipython-7.22.0/IPython/core/tests/test_iplib.py
--- old/ipython-7.21.0/IPython/core/tests/test_iplib.py 2021-02-26 
23:08:22.000000000 +0100
+++ new/ipython-7.22.0/IPython/core/tests/test_iplib.py 2021-03-27 
01:47:57.000000000 +0100
@@ -123,94 +123,101 @@
 ZeroDivisionError: ...
       """
 
-def doctest_tb_sysexit():
-    """
-In [17]: %xmode plain
-Exception reporting mode: Plain
-
-In [18]: %run simpleerr.py exit
-An exception has occurred, use %tb to see the full traceback.
-SystemExit: (1, 'Mode = exit')
-
-In [19]: %run simpleerr.py exit 2
-An exception has occurred, use %tb to see the full traceback.
-SystemExit: (2, 'Mode = exit')
-
-In [20]: %tb
-Traceback (most recent call last):
-  File ... in <module>
-    bar(mode)
-  File ... line 22, in bar
-    sysexit(stat, mode)
-  File ... line 11, in sysexit
-    raise SystemExit(stat, 'Mode = %s' % mode)
-SystemExit: (2, 'Mode = exit')
-
-In [21]: %xmode context
-Exception reporting mode: Context
-
-In [22]: %tb
----------------------------------------------------------------------------
-SystemExit                                Traceback (most recent call last)
-<BLANKLINE>
-...<module>
-     30         mode = 'div'
-     31 
----> 32     bar(mode)
-<BLANKLINE>
-...bar(mode)
-     20         except:
-     21             stat = 1
----> 22         sysexit(stat, mode)
-     23     else:
-     24         raise ValueError('Unknown mode')
-<BLANKLINE>
-...sysexit(stat, mode)
-      9 
-     10 def sysexit(stat, mode):
----> 11     raise SystemExit(stat, 'Mode = %s' % mode)
-     12 
-     13 def bar(mode):
-<BLANKLINE>
-SystemExit: (2, 'Mode = exit')
-
-In [23]: %xmode verbose
-Exception reporting mode: Verbose
-
-In [24]: %tb
----------------------------------------------------------------------------
-SystemExit                                Traceback (most recent call last)
-<BLANKLINE>
-... in <module>
-     30         mode = 'div'
-     31 
----> 32     bar(mode)
-        global bar = <function bar at ...>
-        global mode = 'exit'
-<BLANKLINE>
-... in bar(mode='exit')
-     20         except:
-     21             stat = 1
----> 22         sysexit(stat, mode)
-        global sysexit = <function sysexit at ...>
-        stat = 2
-        mode = 'exit'
-     23     else:
-     24         raise ValueError('Unknown mode')
-<BLANKLINE>
-... in sysexit(stat=2, mode='exit')
-      9 
-     10 def sysexit(stat, mode):
----> 11     raise SystemExit(stat, 'Mode = %s' % mode)
-        global SystemExit = undefined
-        stat = 2
-        mode = 'exit'
-     12 
-     13 def bar(mode):
-<BLANKLINE>
-SystemExit: (2, 'Mode = exit')
-    """
-
+# TODO : Marc 2021 ?????this seem to fail due
+# to upstream changes in CI for whatever reason.
+# Commenting for now, to revive someday (maybe?)
+# nose won't work in 3.10 anyway and we'll have to disable iptest.
+# thus this likely need to bemigrated to pytest.
+
+# warning this test differs between 7.x and 8+ branch.
+
+# def doctest_tb_sysexit():
+#     """
+# In [17]: %xmode plain
+# Exception reporting mode: Plain
+#
+# In [18]: %run simpleerr.py exit
+# An exception has occurred, use %tb to see the full traceback.
+# SystemExit: (1, 'Mode = exit')
+#
+# In [19]: %run simpleerr.py exit 2
+# An exception has occurred, use %tb to see the full traceback.
+# SystemExit: (2, 'Mode = exit')
+#
+# In [20]: %tb
+# Traceback (most recent call last):
+#   File ... in <module>
+#     bar(mode)
+#   File ... line 22, in bar
+#     sysexit(stat, mode)
+#   File ... line 11, in sysexit
+#     raise SystemExit(stat, 'Mode = %s' % mode)
+# SystemExit: (2, 'Mode = exit')
+#
+# In [21]: %xmode context
+# Exception reporting mode: Context
+#
+# In [22]: %tb
+# ---------------------------------------------------------------------------
+# SystemExit                                Traceback (most recent call last)
+# <BLANKLINE>
+# ...<module>
+#      30         mode = 'div'
+#      31
+# ---> 32     bar(mode)
+# <BLANKLINE>
+# ...bar(mode)
+#      20         except:
+#      21             stat = 1
+# ---> 22         sysexit(stat, mode)
+#      23     else:
+#      24         raise ValueError('Unknown mode')
+# <BLANKLINE>
+# ...sysexit(stat, mode)
+#       9
+#      10 def sysexit(stat, mode):
+# ---> 11     raise SystemExit(stat, 'Mode = %s' % mode)
+#      12
+#      13 def bar(mode):
+# <BLANKLINE>
+# SystemExit: (2, 'Mode = exit')
+#
+# In [23]: %xmode verbose
+# Exception reporting mode: Verbose
+#
+# In [24]: %tb
+# ---------------------------------------------------------------------------
+# SystemExit                                Traceback (most recent call last)
+# <BLANKLINE>
+# ... in <module>
+#      30         mode = 'div'
+#      31
+# ---> 32     bar(mode)
+#         global bar = <function bar at ...>
+#         global mode = 'exit'
+# <BLANKLINE>
+# ... in bar(mode='exit')
+#      20         except:
+#      21             stat = 1
+# ---> 22         sysexit(stat, mode)
+#         global sysexit = <function sysexit at ...>
+#         stat = 2
+#         mode = 'exit'
+#      23     else:
+#      24         raise ValueError('Unknown mode')
+# <BLANKLINE>
+# ... in sysexit(stat=2, mode='exit')
+#       9
+#      10 def sysexit(stat, mode):
+# ---> 11     raise SystemExit(stat, 'Mode = %s' % mode)
+#         global SystemExit = undefined
+#         stat = 2
+#         mode = 'exit'
+#      12
+#      13 def bar(mode):
+# <BLANKLINE>
+# SystemExit: (2, 'Mode = exit')
+#     """
 
 def test_run_cell():
     import textwrap
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ipython-7.21.0/IPython/lib/display.py 
new/ipython-7.22.0/IPython/lib/display.py
--- old/ipython-7.21.0/IPython/lib/display.py   2021-02-26 23:08:22.000000000 
+0100
+++ new/ipython-7.22.0/IPython/lib/display.py   2021-03-27 01:47:57.000000000 
+0100
@@ -8,6 +8,8 @@
 
 from IPython.core.display import DisplayObject, TextDisplayObject
 
+from typing import Tuple
+
 __all__ = ['Audio', 'IFrame', 'YouTubeVideo', 'VimeoVideo', 'ScribdDocument',
            'FileLink', 'FileLinks', 'Code']
 
@@ -151,7 +153,7 @@
         return val
 
     @staticmethod
-    def _validate_and_normalize_with_numpy(data, normalize):
+    def _validate_and_normalize_with_numpy(data, normalize) -> Tuple[bytes, 
int]:
         import numpy as np
 
         data = np.array(data, dtype=float)
@@ -170,8 +172,7 @@
         max_abs_value = np.max(np.abs(data))
         normalization_factor = Audio._get_normalization_factor(max_abs_value, 
normalize)
         scaled = data / normalization_factor * 32767
-        return scaled.astype('<h').tostring(), nchan
-
+        return scaled.astype("<h").tobytes(), nchan
 
     @staticmethod
     def _validate_and_normalize_without_numpy(data, normalize):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ipython-7.21.0/IPython/terminal/pt_inputhooks/qt.py 
new/ipython-7.22.0/IPython/terminal/pt_inputhooks/qt.py
--- old/ipython-7.21.0/IPython/terminal/pt_inputhooks/qt.py     2021-02-26 
23:08:23.000000000 +0100
+++ new/ipython-7.22.0/IPython/terminal/pt_inputhooks/qt.py     2021-03-27 
01:47:57.000000000 +0100
@@ -1,6 +1,7 @@
 import sys
 import os
 from IPython.external.qt_for_kernel import QtCore, QtGui
+from IPython import get_ipython
 
 # If we create a QApplication, keep a reference to it so that it doesn't get
 # garbage collected.
@@ -8,6 +9,12 @@
 _already_warned = False
 
 
+def _reclaim_excepthook():
+    shell = get_ipython()
+    if shell is not None:
+        sys.excepthook = shell.excepthook
+
+
 def inputhook(context):
     global _appref
     app = QtCore.QCoreApplication.instance()
@@ -27,6 +34,13 @@
                 return
         QtCore.QCoreApplication.setAttribute(QtCore.Qt.AA_EnableHighDpiScaling)
         _appref = app = QtGui.QApplication([" "])
+
+        # "reclaim" IPython sys.excepthook after event loop starts
+        # without this, it defaults back to BaseIPythonApplication.excepthook
+        # and exceptions in the Qt event loop are rendered without traceback
+        # formatting and look like "bug in IPython".
+        QtCore.QTimer.singleShot(0, _reclaim_excepthook)
+
     event_loop = QtCore.QEventLoop(app)
 
     if sys.platform == 'win32':
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ipython-7.21.0/IPython/utils/_sysinfo.py 
new/ipython-7.22.0/IPython/utils/_sysinfo.py
--- old/ipython-7.21.0/IPython/utils/_sysinfo.py        2021-02-26 
23:10:26.000000000 +0100
+++ new/ipython-7.22.0/IPython/utils/_sysinfo.py        2021-03-27 
01:48:52.000000000 +0100
@@ -1,2 +1,2 @@
 # GENERATED BY setup.py
-commit = u"0dcb1debc"
+commit = u"8648ed8d7"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ipython-7.21.0/PKG-INFO new/ipython-7.22.0/PKG-INFO
--- old/ipython-7.21.0/PKG-INFO 2021-02-26 23:10:26.000000000 +0100
+++ new/ipython-7.22.0/PKG-INFO 2021-03-27 01:48:52.000000000 +0100
@@ -1,6 +1,6 @@
 Metadata-Version: 1.1
 Name: ipython
-Version: 7.21.0
+Version: 7.22.0
 Summary: IPython: Productive Interactive Computing
 Home-page: https://ipython.org
 Author: The IPython Development Team
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ipython-7.21.0/docs/source/whatsnew/version7.rst 
new/ipython-7.22.0/docs/source/whatsnew/version7.rst
--- old/ipython-7.21.0/docs/source/whatsnew/version7.rst        2021-02-26 
23:09:23.000000000 +0100
+++ new/ipython-7.22.0/docs/source/whatsnew/version7.rst        2021-03-27 
01:47:57.000000000 +0100
@@ -2,6 +2,38 @@
  7.x Series
 ============
 
+.. _version 7.22:
+
+IPython 7.22
+============
+
+Second release of IPython for 2021, mostly containing bug fixes. Here is a 
quick
+rundown of the few changes.
+
+- Fix some ``sys.excepthook`` shenanigan when embedding with qt, recommended if
+  you ??? for example ??? use `napari <https://napari.org>`__. :ghpull:`12842`.
+- Fix bug when using the new ipdb ``%context`` magic :ghpull:`12844`
+- Couples of deprecation cleanup :ghpull:`12868`
+- Update for new dpast.com api if you use the ``%pastbin`` magic. 
:ghpull:`12712`
+- Remove support for numpy before 1.16. :ghpull:`12836`
+
+
+Thanks
+------
+
+We have a new team member that you should see more often on the IPython
+repository, B??a??ej Michalik (@MrMino) have been doing regular contributions 
to
+IPython, and spent time replying to many issues and guiding new users to the
+codebase; they now have triage permissions to the IPython repository and we'll
+work toward giving them more permission in the future.
+
+Many thanks to all the contributors to this release you can find all individual
+contributions to this milestone `on github 
<https://github.com/ipython/ipython/milestone/84>`__.
+
+Thanks as well to organisations, QuantStack for working on debugger
+compatibility for Xeus_python, and the `D. E. Shaw group
+<https://deshaw.com/>` for sponsoring work on IPython and related libraries.
+
 .. _version 721:
 
 IPython 7.21
@@ -33,7 +65,7 @@
 ------
 
 Many thanks to all the contributors to this release you can find all individual
-contribution to this milestone `on github 
<https://github.com/ipython/ipython/milestone/83>`_.
+contribution to this milestone `on github 
<https://github.com/ipython/ipython/milestone/83>`__.
 
 
 .. _version 720:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ipython-7.21.0/setup.py new/ipython-7.22.0/setup.py
--- old/ipython-7.21.0/setup.py 2021-02-26 23:08:23.000000000 +0100
+++ new/ipython-7.22.0/setup.py 2021-03-27 01:47:57.000000000 +0100
@@ -174,15 +174,23 @@
 # setuptools requirements
 
 extras_require = dict(
-    parallel = ['ipyparallel'],
-    qtconsole = ['qtconsole'],
-    doc = ['Sphinx>=1.3'],
-    test = ['nose>=0.10.1', 'requests', 'testpath', 'pygments', 'nbformat', 
'ipykernel', 'numpy>=1.14'],
-    terminal = [],
-    kernel = ['ipykernel'],
-    nbformat = ['nbformat'],
-    notebook = ['notebook', 'ipywidgets'],
-    nbconvert = ['nbconvert'],
+    parallel=["ipyparallel"],
+    qtconsole=["qtconsole"],
+    doc=["Sphinx>=1.3"],
+    test=[
+        "nose>=0.10.1",
+        "requests",
+        "testpath",
+        "pygments",
+        "nbformat",
+        "ipykernel",
+        "numpy>=1.16",
+    ],
+    terminal=[],
+    kernel=["ipykernel"],
+    nbformat=["nbformat"],
+    notebook=["notebook", "ipywidgets"],
+    nbconvert=["nbconvert"],
 )
 
 install_requires = [

Reply via email to