Hello community,
here is the log from the commit of package python-jupyter_ipykernel for
openSUSE:Factory checked in at 2016-02-18 11:07:28
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-jupyter_ipykernel (Old)
and /work/SRC/openSUSE:Factory/.python-jupyter_ipykernel.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-jupyter_ipykernel"
Changes:
--------
---
/work/SRC/openSUSE:Factory/python-jupyter_ipykernel/python-jupyter_ipykernel.changes
2015-10-12 10:02:11.000000000 +0200
+++
/work/SRC/openSUSE:Factory/.python-jupyter_ipykernel.new/python-jupyter_ipykernel.changes
2016-02-18 12:36:44.000000000 +0100
@@ -1,0 +2,18 @@
+Wed Feb 17 13:35:39 UTC 2016 - [email protected]
+
+- Update to version 4.2.2
+ * Don't show interactive debugging info when kernel crashes
+ * Fix handling of numerical types in json_clean
+ * Testing fixes for output capturing
+- update to version 4.2.1:
+ * Fix default display name back to "Python X" instead of "pythonX"
+- update to version 4.2.0:
+ * Support sending a full message in initial opening of comms
+ (metadata, buffers were not previously allowed)
+ * When using "ipython kernel install --name" to install the IPython
+ kernelspec, default display-name to the same value as "--name".
+- update to version 4.1.1:
+ * Fix missing "ipykernel.__version__" on Python 2.
+ * Fix missing "target_name" when opening comms from the frontend.
+
+-------------------------------------------------------------------
Old:
----
ipykernel-4.1.0.tar.gz
New:
----
ipykernel-4.2.2.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-jupyter_ipykernel.spec ++++++
--- /var/tmp/diff_new_pack.6Wr8M0/_old 2016-02-18 12:36:45.000000000 +0100
+++ /var/tmp/diff_new_pack.6Wr8M0/_new 2016-02-18 12:36:45.000000000 +0100
@@ -17,7 +17,7 @@
Name: python-jupyter_ipykernel
-Version: 4.1.0
+Version: 4.2.2
Release: 0
Summary: IPython Kernel for Jupyter
License: BSD-3-Clause
++++++ ipykernel-4.1.0.tar.gz -> ipykernel-4.2.2.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ipykernel-4.1.0/PKG-INFO new/ipykernel-4.2.2/PKG-INFO
--- old/ipykernel-4.1.0/PKG-INFO 2015-10-07 13:33:48.000000000 +0200
+++ new/ipykernel-4.2.2/PKG-INFO 2016-01-02 14:18:13.000000000 +0100
@@ -1,6 +1,6 @@
Metadata-Version: 1.1
Name: ipykernel
-Version: 4.1.0
+Version: 4.2.2
Summary: IPython Kernel for Jupyter
Home-page: http://ipython.org
Author: IPython Development Team
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ipykernel-4.1.0/docs/changelog.rst
new/ipykernel-4.2.2/docs/changelog.rst
--- old/ipykernel-4.1.0/docs/changelog.rst 2015-10-07 13:27:53.000000000
+0200
+++ new/ipykernel-4.2.2/docs/changelog.rst 2016-01-02 14:17:21.000000000
+0100
@@ -1,11 +1,50 @@
Changes in IPython kernel
=========================
+4.2
+---
+
+4.2.2
+*****
+
+`4.2.2 on GitHub <https://github.com/ipython/ipykernel/milestones/4.2.2>`__
+
+- Don't show interactive debugging info when kernel crashes
+- Fix handling of numerical types in json_clean
+- Testing fixes for output capturing
+
+4.2.1
+*****
+
+`4.2.1 on GitHub <https://github.com/ipython/ipykernel/milestones/4.2.1>`__
+
+- Fix default display name back to "Python X" instead of "pythonX"
+
+4.2.0
+*****
+
+`4.2 on GitHub <https://github.com/ipython/ipykernel/milestones/4.2>`_
+
+- Support sending a full message in initial opening of comms (metadata,
buffers were not previously allowed)
+- When using ``ipython kernel install --name`` to install the IPython
kernelspec, default display-name to the same value as ``--name``.
+
4.1
---
+4.1.1
+*****
+
+`4.1.1 on GitHub <https://github.com/ipython/ipykernel/milestones/4.1.1>`_
+
+- Fix missing ``ipykernel.__version__`` on Python 2.
+- Fix missing ``target_name`` when opening comms from the frontend.
+
+4.1.0
+*****
+
`4.1 on GitHub <https://github.com/ipython/ipykernel/milestones/4.1>`_
+
- add ``ipython kernel install`` entrypoint for installing the IPython
kernelspec
- provisional implementation of ``comm_info`` request/reply for msgspec
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ipykernel-4.1.0/ipykernel/__init__.py
new/ipykernel-4.2.2/ipykernel/__init__.py
--- old/ipykernel-4.1.0/ipykernel/__init__.py 2015-09-24 11:30:15.000000000
+0200
+++ new/ipykernel-4.2.2/ipykernel/__init__.py 2015-11-13 10:25:37.000000000
+0100
@@ -1,2 +1,2 @@
-from ._version import *
+from ._version import version_info, __version__, kernel_protocol_version_info,
kernel_protocol_version
from .connect import *
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ipykernel-4.1.0/ipykernel/_version.py
new/ipykernel-4.2.2/ipykernel/_version.py
--- old/ipykernel-4.1.0/ipykernel/_version.py 2015-10-07 13:28:31.000000000
+0200
+++ new/ipykernel-4.2.2/ipykernel/_version.py 2016-01-02 14:17:50.000000000
+0100
@@ -1,4 +1,4 @@
-version_info = (4, 1, 0)
+version_info = (4, 2, 2)
__version__ = '.'.join(map(str, version_info))
kernel_protocol_version_info = (5, 0)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ipykernel-4.1.0/ipykernel/comm/comm.py
new/ipykernel-4.2.2/ipykernel/comm/comm.py
--- old/ipykernel-4.1.0/ipykernel/comm/comm.py 2015-05-08 22:15:04.000000000
+0200
+++ new/ipykernel-4.2.2/ipykernel/comm/comm.py 2015-11-13 10:25:37.000000000
+0100
@@ -54,13 +54,13 @@
primary = Bool(True, help="Am I the primary or secondary Comm?")
- def __init__(self, target_name='', data=None, **kwargs):
+ def __init__(self, target_name='', data=None, metadata=None, buffers=None,
**kwargs):
if target_name:
kwargs['target_name'] = target_name
super(Comm, self).__init__(**kwargs)
if self.primary:
# I am primary, open my peer.
- self.open(data)
+ self.open(data=data, metadata=metadata, buffers=buffers)
else:
self._closed = False
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ipykernel-4.1.0/ipykernel/comm/manager.py
new/ipykernel-4.2.2/ipykernel/comm/manager.py
--- old/ipykernel-4.1.0/ipykernel/comm/manager.py 2015-09-04
17:46:03.000000000 +0200
+++ new/ipykernel-4.2.2/ipykernel/comm/manager.py 2015-11-13
10:25:37.000000000 +0100
@@ -106,6 +106,7 @@
kernel=self.kernel,
iopub_socket=self.iopub_socket,
primary=False,
+ target_name=target_name,
)
self.register_comm(comm)
if f is None:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ipykernel-4.1.0/ipykernel/jsonutil.py
new/ipykernel-4.2.2/ipykernel/jsonutil.py
--- old/ipykernel-4.1.0/ipykernel/jsonutil.py 2015-05-29 20:06:47.000000000
+0200
+++ new/ipykernel-4.2.2/ipykernel/jsonutil.py 2016-01-02 14:15:12.000000000
+0100
@@ -7,6 +7,7 @@
import re
import types
from datetime import datetime
+import numbers
try:
# base64.encodestring is deprecated in Python 3.x
@@ -122,19 +123,22 @@
# containers that we need to convert into lists
container_to_list = (tuple, set, types.GeneratorType)
- if isinstance(obj, float):
+ # Since bools are a subtype of Integrals, which are a subtype of Reals,
+ # we have to check them in that order.
+
+ if isinstance(obj, bool):
+ return obj
+
+ if isinstance(obj, numbers.Integral):
+ # cast int to int, in case subclasses override __str__ (e.g. boost
enum, #4598)
+ return int(obj)
+
+ if isinstance(obj, numbers.Real):
# cast out-of-range floats to their reprs
if math.isnan(obj) or math.isinf(obj):
return repr(obj)
return float(obj)
- if isinstance(obj, int):
- # cast int to int, in case subclasses override __str__ (e.g. boost
enum, #4598)
- if isinstance(obj, bool):
- # bools are ints, but we don't want to cast them to 0,1
- return obj
- return int(obj)
-
if isinstance(obj, atomic_ok):
return obj
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ipykernel-4.1.0/ipykernel/kernelapp.py
new/ipykernel-4.2.2/ipykernel/kernelapp.py
--- old/ipykernel-4.1.0/ipykernel/kernelapp.py 2015-09-17 13:36:50.000000000
+0200
+++ new/ipykernel-4.2.2/ipykernel/kernelapp.py 2016-01-02 14:15:14.000000000
+0100
@@ -9,12 +9,12 @@
import os
import sys
import signal
+import traceback
import zmq
from zmq.eventloop import ioloop
from zmq.eventloop.zmqstream import ZMQStream
-from IPython.core.ultratb import FormattedTB
from IPython.core.application import (
BaseIPythonApplication, base_flags, base_aliases, catch_config_error
)
@@ -149,11 +149,13 @@
help="""ONLY USED ON WINDOWS
Interrupt this process when the parent is signaled.
""")
-
+
def init_crash_handler(self):
- # Install minimal exception handling
- sys.excepthook = FormattedTB(mode='Verbose', color_scheme='NoColor',
- ostream=sys.__stdout__)
+ sys.excepthook = self.excepthook
+
+ def excepthook(self, etype, evalue, tb):
+ # write uncaught traceback to 'real' stderr, not zmq-forwarder
+ traceback.print_exception(etype, evalue, tb, file=sys.__stderr__)
def init_poller(self):
if sys.platform == 'win32':
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ipykernel-4.1.0/ipykernel/kernelspec.py
new/ipykernel-4.2.2/ipykernel/kernelspec.py
--- old/ipykernel-4.1.0/ipykernel/kernelspec.py 2015-09-22 09:39:51.000000000
+0200
+++ new/ipykernel-4.2.2/ipykernel/kernelspec.py 2015-12-08 22:50:06.000000000
+0100
@@ -81,7 +81,7 @@
return path
-def install(kernel_spec_manager=None, user=False, kernel_name=None,
display_name=None, prefix=None):
+def install(kernel_spec_manager=None, user=False, kernel_name=KERNEL_NAME,
display_name=None, prefix=None):
"""Install the IPython kernelspec for Jupyter
Parameters
@@ -108,8 +108,11 @@
"""
if kernel_spec_manager is None:
kernel_spec_manager = KernelSpecManager()
- if kernel_name is None:
- kernel_name = KERNEL_NAME
+
+ if (kernel_name != KERNEL_NAME) and (display_name is None):
+ # kernel_name is specified and display_name is not
+ # default display_name to kernel_name
+ display_name = kernel_name
if display_name:
overrides = dict(display_name=display_name)
else:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ipykernel-4.1.0/ipykernel/tests/test_jsonutil.py
new/ipykernel-4.2.2/ipykernel/tests/test_jsonutil.py
--- old/ipykernel-4.1.0/ipykernel/tests/test_jsonutil.py 2015-05-29
20:06:47.000000000 +0200
+++ new/ipykernel-4.2.2/ipykernel/tests/test_jsonutil.py 2016-01-02
14:15:12.000000000 +0100
@@ -7,6 +7,7 @@
import json
from base64 import decodestring
from datetime import datetime
+import numbers
import nose.tools as nt
@@ -14,10 +15,16 @@
from ..jsonutil import json_clean, encode_images
from ipython_genutils.py3compat import unicode_to_str, str_to_bytes, iteritems
+class MyInt(object):
+ def __int__(self):
+ return 389
+numbers.Integral.register(MyInt)
+
+class MyFloat(object):
+ def __float__(self):
+ return 3.14
+numbers.Real.register(MyFloat)
-class Int(int):
- def __str__(self):
- return 'Int(%i)' % self
def test():
# list of input/expected output. Use None for the expected output if it
@@ -37,8 +44,9 @@
# More exotic objects
((x for x in range(3)), [0, 1, 2]),
(iter([1, 2]), [1, 2]),
- (Int(5), 5),
(datetime(1991, 7, 3, 12, 00), "1991-07-03T12:00:00.000000"),
+ (MyFloat(), 3.14),
+ (MyInt(), 389)
]
for val, jval in pairs:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ipykernel-4.1.0/ipykernel/tests/test_kernel.py
new/ipykernel-4.2.2/ipykernel/tests/test_kernel.py
--- old/ipykernel-4.1.0/ipykernel/tests/test_kernel.py 2015-05-08
22:15:04.000000000 +0200
+++ new/ipykernel-4.2.2/ipykernel/tests/test_kernel.py 2016-01-02
14:15:14.000000000 +0100
@@ -12,7 +12,7 @@
from IPython.testing import decorators as dec, tools as tt
from ipython_genutils import py3compat
-from IPython.utils.path import locate_profile
+from IPython.paths import locate_profile
from ipython_genutils.tempdir import TemporaryDirectory
from .utils import (new_kernel, kernel, TIMEOUT, assemble_output, execute,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ipykernel-4.1.0/ipykernel/tests/utils.py
new/ipykernel-4.2.2/ipykernel/tests/utils.py
--- old/ipykernel-4.1.0/ipykernel/tests/utils.py 2015-05-08
22:15:04.000000000 +0200
+++ new/ipykernel-4.2.2/ipykernel/tests/utils.py 2016-01-02
14:15:12.000000000 +0100
@@ -36,7 +36,10 @@
Integrates with our output capturing for tests.
"""
- stdout = getattr(nose, 'iptest_stdstreams_fileno', open(os.devnull))
+ try:
+ stdout = nose.iptest_stdstreams_fileno()
+ except AttributeError:
+ stdout = open(os.devnull)
kwargs.update(dict(stdout=stdout, stderr=STDOUT))
return manager.start_new_kernel(startup_timeout=STARTUP_TIMEOUT, **kwargs)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ipykernel-4.1.0/ipykernel/zmqshell.py
new/ipykernel-4.2.2/ipykernel/zmqshell.py
--- old/ipykernel-4.1.0/ipykernel/zmqshell.py 2015-10-05 11:27:35.000000000
+0200
+++ new/ipykernel-4.2.2/ipykernel/zmqshell.py 2015-12-08 22:50:06.000000000
+0100
@@ -302,12 +302,9 @@
"""
# %qtconsole should imply bind_kernel for engines:
- try:
- from IPython.parallel import bind_kernel
- except ImportError:
- # technically possible, because parallel has higher pyzmq
min-version
- pass
- else:
+ # FIXME: move to ipyparallel Kernel subclass
+ if 'ipyparallel' in sys.modules:
+ from ipyparallel import bind_kernel
bind_kernel()
try: