Mon Aug 3 09:15:00 2020 UTC ()
py-ipython: updated to 7.17.0

IPython 7.17
============

IPython 7.17 brings a couple of new improvements to API and a couple of user
facing changes to make the terminal experience more user friendly.

:ghpull:`12407` introduces the ability to pass extra argument to the IPython
debugger class; this is to help a new project from ``kmaork``
(https://github.com/kmaork/madbg) to feature a fully remote debugger.

:ghpull:`12410` finally remove support for 3.6, while the codebase is still
technically compatible; IPython will not install on Python 3.6.

lots of work on the debugger and hidden frames from ``@impact27`` in
:ghpull:`12437`, :ghpull:`12445`, :ghpull:`12460` and in particular
:ghpull:`12453` which make the debug magic more robust at handling spaces.

Biggest API addition is code transformation which is done before code execution;
IPython allows a number of hooks to catch non-valid Python syntax (magic, prompt
stripping...etc). Transformers are usually called many time; typically:

 - When trying to figure out whether the code is complete and valid (should we
   insert a new line or execute ?)
 - During actual code execution pass before giving the code to Python's
   ``exec``.

This lead to issues when transformer might have had side effects; or do external
queries. Starting with IPython 7.17 you can expect your transformer to be called
less time.

Input transformers are now called only once in the execution path of
`InteractiveShell`, allowing to register transformer that potentially have side
effects (note that this is not recommended). Internal methods `should_run_async`, and
`run_cell_async` now take a recommended optional `transformed_cell`, and
`preprocessing_exc_tuple` parameters that will become mandatory at some point in
the future; that is to say cells need to be explicitly transformed to be valid
Python syntax ahead of trying to run them. :ghpull:`12440`;

``input_transformers`` can now also have an attribute ``has_side_effects`` set
to `True`, when this attribute is present; this  will prevent the transformers
from being ran when IPython is trying to guess whether the user input is
complete. Note that this may means you will need to explicitly execute in some
case where your transformations are now not ran; but will not affect users with
no custom extensions.


(adam)
diff -r1.51 -r1.52 pkgsrc/devel/py-ipython/Makefile
diff -r1.30 -r1.31 pkgsrc/devel/py-ipython/distinfo

cvs diff -r1.51 -r1.52 pkgsrc/devel/py-ipython/Makefile (expand / switch to unified diff)

--- pkgsrc/devel/py-ipython/Makefile 2020/07/01 14:05:04 1.51
+++ pkgsrc/devel/py-ipython/Makefile 2020/08/03 09:15:00 1.52
@@ -1,16 +1,16 @@ @@ -1,16 +1,16 @@
1# $NetBSD: Makefile,v 1.51 2020/07/01 14:05:04 adam Exp $ 1# $NetBSD: Makefile,v 1.52 2020/08/03 09:15:00 adam Exp $
2 2
3DISTNAME= ipython-7.16.1 3DISTNAME= ipython-7.17.0
4PKGNAME= ${PYPKGPREFIX}-${DISTNAME} 4PKGNAME= ${PYPKGPREFIX}-${DISTNAME}
5CATEGORIES= devel python 5CATEGORIES= devel python
6MASTER_SITES= ${MASTER_SITE_PYPI:=i/ipython/} 6MASTER_SITES= ${MASTER_SITE_PYPI:=i/ipython/}
7 7
8MAINTAINER= pkgsrc-users@NetBSD.org 8MAINTAINER= pkgsrc-users@NetBSD.org
9HOMEPAGE= https://ipython.org/ 9HOMEPAGE= https://ipython.org/
10COMMENT= Interactive computing environment for Python 10COMMENT= Interactive computing environment for Python
11LICENSE= modified-bsd 11LICENSE= modified-bsd
12 12
13DEPENDS+= ${PYPKGPREFIX}-backcall-[0-9]*:../../devel/py-backcall 13DEPENDS+= ${PYPKGPREFIX}-backcall-[0-9]*:../../devel/py-backcall
14DEPENDS+= ${PYPKGPREFIX}-decorator-[0-9]*:../../devel/py-decorator 14DEPENDS+= ${PYPKGPREFIX}-decorator-[0-9]*:../../devel/py-decorator
15DEPENDS+= ${PYPKGPREFIX}-jedi>=0.10:../../editors/py-jedi 15DEPENDS+= ${PYPKGPREFIX}-jedi>=0.10:../../editors/py-jedi
16DEPENDS+= ${PYPKGPREFIX}-pexpect-[0-9]*:../../devel/py-pexpect 16DEPENDS+= ${PYPKGPREFIX}-pexpect-[0-9]*:../../devel/py-pexpect

cvs diff -r1.30 -r1.31 pkgsrc/devel/py-ipython/distinfo (expand / switch to unified diff)

--- pkgsrc/devel/py-ipython/distinfo 2020/07/01 14:05:04 1.30
+++ pkgsrc/devel/py-ipython/distinfo 2020/08/03 09:15:00 1.31
@@ -1,7 +1,7 @@ @@ -1,7 +1,7 @@
1$NetBSD: distinfo,v 1.30 2020/07/01 14:05:04 adam Exp $ 1$NetBSD: distinfo,v 1.31 2020/08/03 09:15:00 adam Exp $
2 2
3SHA1 (ipython-7.16.1.tar.gz) = a4e6d466eac2703dfcfa541e375d349c2033776c 3SHA1 (ipython-7.17.0.tar.gz) = a675703b0b8b385350620a4cfe2f637ad0ba566f
4RMD160 (ipython-7.16.1.tar.gz) = a1c8d7b5d6cf0c82b9e59cbaf4062bbb58486942 4RMD160 (ipython-7.17.0.tar.gz) = c0c039f4505bf172d3578202d55d1dcdfd9cdd83
5SHA512 (ipython-7.16.1.tar.gz) = 60259fd6270b0355be67b4f620a58b56ae86e69e14debe2df86df6118548f2290ab3927b8dfab20db1ebd675df697d05eb6994b93625a7b8b6ea07112ddf63bd 5SHA512 (ipython-7.17.0.tar.gz) = 0dabc6f4079719d2dd75c5ee92e4523b016b4a790776ccc7130a60bdd4ca1b88bcdcfb9ddd192f9c1a4397c27a27e7f7297540275d06832f870af347e2f14dd9
6Size (ipython-7.16.1.tar.gz) = 5136303 bytes 6Size (ipython-7.17.0.tar.gz) = 5139470 bytes
7SHA1 (patch-setupbase.py) = 241463d5368a4c80c8194244f5c3895196b44da5 7SHA1 (patch-setupbase.py) = 241463d5368a4c80c8194244f5c3895196b44da5