==> Building on minun ==> Checking for remote environment... ==> Syncing package to remote host... sending incremental file list ./ .SRCINFO 700 39% 0.00kB/s 0:00:00 1,787 100% 1.04MB/s 0:00:00 (xfr#1, to-chk=11/13) .nvchecker.toml 72 100% 70.31kB/s 0:00:00 72 100% 70.31kB/s 0:00:00 (xfr#2, to-chk=10/13) LICENSE 646 100% 630.86kB/s 0:00:00 646 100% 630.86kB/s 0:00:00 (xfr#3, to-chk=9/13) PKGBUILD 700 26% 683.59kB/s 0:00:00 2,640 100% 2.52MB/s 0:00:00 (xfr#4, to-chk=8/13) REUSE.toml 375 100% 366.21kB/s 0:00:00 375 100% 366.21kB/s 0:00:00 (xfr#5, to-chk=7/13) ipython-9.17.0-1.log 698 100% 681.64kB/s 0:00:00 698 100% 681.64kB/s 0:00:00 (xfr#6, to-chk=6/13) LICENSES/ keys/ keys/pgp/ keys/pgp/4D9D285A538F7C2E16D13ACE57982D11F0EA2247.asc 677 100% 661.13kB/s 0:00:00 677 100% 661.13kB/s 0:00:00 (xfr#7, to-chk=1/13) keys/pgp/99B17F64FD5C94692E9EF8064968B2CC0208DCC8.asc 700 22% 683.59kB/s 0:00:00 3,122 100% 2.98MB/s 0:00:00 (xfr#8, to-chk=0/13) sent 1,070 bytes received 302 bytes 2,744.00 bytes/sec total size is 9,521 speedup is 6.94 ==> Ensuring required PGP keys are present...  -> Checking for 99B17F64FD5C94692E9EF8064968B2CC0208DCC8...  -> Checking for 4D9D285A538F7C2E16D13ACE57982D11F0EA2247... pub ed25519 2025-09-18 [SC] 4D9D 285A 538F 7C2E 16D1 3ACE 5798 2D11 F0EA 2247 uid [ unknown] krassowski <5832902+krassowski@users.noreply.github.com> sub cv25519 2025-09-18 [E] ==> Running pkgctl build --arch riscv64 on remote host... ==> WARNING: invalid architecture: riscv64 ==> Updating pacman database cache [?25l:: Synchronizing package databases... core downloading... extra downloading... multilib downloading... [?25h==> Building ipython -> repo: extra -> arch: riscv64 -> worker: felix-0 ==> Building ipython for [extra] (riscv64) Note: in a future version of systemd-nspawn the default set of permitted socket address families will be restricted to AF_INET, AF_INET6 and AF_UNIX. Use --restrict-address-families= to configure the set of permitted socket address families, or set RestrictAddressFamilies= in a .nspawn file. [?25l:: Synchronizing package databases... core downloading... extra downloading... :: Starting full system upgrade... there is nothing to do [?25h==> Building in chroot for [extra] (riscv64)... ==> Synchronizing chroot copy [/var/lib/archbuild/extra-riscv64/root] -> [felix-0]...done ==> Making package: ipython 9.17.0-1 (Mon Aug 31 01:54:50 2026) ==> Retrieving sources...  -> Updating ipython git repo...  -> Found IPython-icon.png ==> Validating source files with b2sums... ipython ... Passed IPython-icon.png ... Passed Note: in a future version of systemd-nspawn the default set of permitted socket address families will be restricted to AF_INET, AF_INET6 and AF_UNIX. Use --restrict-address-families= to configure the set of permitted socket address families, or set RestrictAddressFamilies= in a .nspawn file. ==> Making package: ipython 9.17.0-1 (Sun Aug 30 23:55:06 2026) ==> Checking runtime dependencies... ==> Installing missing dependencies... [?25lresolving dependencies... looking for conflicting packages... Package (18) New Version Net Change extra/python-argcomplete 3.7.2-1 0.33 MiB extra/python-asttokens 3.0.1-1 0.20 MiB extra/python-executing 2.2.1-3.1 0.29 MiB extra/python-parso 1:0.8.6-1 1.03 MiB extra/python-ptyprocess 0.7.0-9 0.12 MiB extra/python-pure-eval 0.2.3-3 0.11 MiB extra/python-typing_extensions 4.16.0-1 0.53 MiB extra/python-wcwidth 0.8.2-1 6.63 MiB extra/python-decorator 5.3.1-1 0.07 MiB extra/python-ipython-pygments-lexers 1.1.1-3.1 0.05 MiB extra/python-jedi 0.19.2-4 6.47 MiB extra/python-matplotlib-inline 0.2.2-1 0.06 MiB extra/python-pexpect 4.9.0-7.1 0.61 MiB extra/python-prompt_toolkit 3.0.53-1 5.10 MiB extra/python-psutil 7.2.2-1 1.14 MiB extra/python-pygments 2.20.0-1 15.36 MiB extra/python-stack-data 0.6.3-5 0.24 MiB extra/python-traitlets 5.16.1-1 1.14 MiB Total Installed Size: 39.47 MiB :: Proceed with installation? [Y/n] checking keyring... checking package integrity... loading package files... checking for file conflicts... :: Processing package changes... installing python-decorator... installing python-pygments... installing python-ipython-pygments-lexers... installing python-parso... installing python-jedi... installing python-argcomplete... installing python-typing_extensions... installing python-traitlets... installing python-matplotlib-inline... Optional dependencies for python-matplotlib-inline python-matplotlib installing python-ptyprocess... installing python-pexpect... installing python-wcwidth... installing python-prompt_toolkit... Optional dependencies for python-prompt_toolkit python-pygments: for color schemes and lexers [installed] installing python-psutil... installing python-asttokens... installing python-executing... installing python-pure-eval... installing python-stack-data... :: Running post-transaction hooks... (1/1) Arming ConditionNeedsUpdate... [?25h==> Checking buildtime dependencies... ==> Installing missing dependencies... [?25lresolving dependencies... looking for conflicting packages... warning: insufficient columns available for table display Packages (144) aom-3.15.0-1 avahi-1:0.9rc5-1 blas-3.12.1-2 bubblewrap-0.12.0-1 cairo-1.18.4-1 cblas-3.12.1-2 dav1d-1.5.4-1 dvisvgm-3.6.1-1 ffcall-2.5-1 fontconfig-2:2.18.3-2 freetype2-2.14.3-1 fribidi-1.0.16-2 gd-2.3.3-9 gdk-pixbuf2-2.44.7-1 ghostscript-10.07.1-1 giflib-6.1.3-2 glycin-2.1.5-2 gperftools-2.18.1-1 graphite-1:1.3.15-1 gtest-1.17.0-2 harfbuzz-14.4.0-1 highway-1.4.0-1 ijs-0.35-7 ipython-9.16.1-1 jbig2dec-0.20-2 jbigkit-2.1-8 l-smash-2.14.5-4 lapack-3.12.1-2 lcms2-2.19.1-1 libavif-1.4.2-1 libcups-2:2.4.19-1 libdaemon-0.14-6 libdatrie-0.2.14-1 libde265-1.1.1-1 libdeflate-1.26-1 libheif-1.23.2-1 libice-1.1.2-1 libidn-1.44-1 libimagequant-4.4.1-2 libjpeg-turbo-3.2.0-2 libjxl-0.12.0-1 libpaper-2.2.8-1 libpgm-5.3.128-4 libpng-1.6.58-2 libraqm-0.11.0-1 librsvg-2:2.62.3-1 libsigsegv-2.15-1 libsm-1.2.6-1 libsodium-1.0.22-1 libsynctex-2026.0-2 libthai-0.1.30-1 libtiff-4.7.2-1 libunwind-1.8.2-1 libwebp-1.6.0-2 libx11-1.8.13-1 libxau-1.0.12-1 libxaw-1.0.16-2 libxcb-1.17.0-1 libxdmcp-1.1.5-2 libxext-1.3.7-1 libxft-2.3.9-1 libxmu-1.3.1-1 libxpm-3.5.19-1 libxrender-0.9.12-1 libxt-1.3.1-1 libyuv-r2921+644251f25-1 lzo-2.10-5 openh264-2.6.0-2 openjpeg2-2.5.4-1 pango-1:1.58.2-1 perl-error-0.17030-3 perl-mailtools-2.22-3 perl-timedate-2.35-1 pixman-0.46.4-1 poppler-data-0.4.12-2 potrace-1.16-5 python-attrs-26.1.0-1 python-autocommand-2.2.2-9 python-comm-0.2.3-2 python-contourpy-1.3.3-4 python-cycler-0.12.1-4 python-dateutil-2.9.0-8.1 python-fastjsonschema-2.21.2-2 python-fonttools-4.63.0-1 python-idna-3.19-1 python-iniconfig-2.3.0-1 python-jaraco.collections-5.1.0-3 python-jaraco.context-6.1.2-1 python-jaraco.functools-4.1.0-3 python-jaraco.text-4.0.0-4 python-jsonschema-4.26.0-1 python-jsonschema-specifications-2025.9.1-2 python-jupyter-client-8.10.0-1 python-jupyter-core-5.9.1-2 python-kiwisolver-1.5.1-1 python-more-itertools-11.1.0-1 python-nest-asyncio-1.6.0-5 python-outcome-1.3.0.post0-7 python-packaging-26.3-1 python-pillow-12.3.0-1 python-pkg_resources-81.0.0-1 python-platformdirs-4.11.5-1 python-pluggy-1.6.0-3.1 python-pyparsing-3.3.2-1.1 python-pyproject-hooks-1.2.0-6 python-pytz-2026.1-1 python-pyzmq-27.2.0-1 python-referencing-0.37.0-3.1 python-rpds-py-2026.6.3-1 python-six-1.17.0-3 python-sniffio-1.3.1-5 python-sortedcontainers-2.4.0-8 python-tornado-6.5.8-1 qhull-2020.2-5 rav1e-0.8.1-3 shared-mime-info-2.5.1-2 svt-av1-4.2.0-1 texlive-basic-2026.1-1 woff2-1.0.2-6 x264-3:0.165.r3222.b35605a-2 x265-4.3-1 xcb-proto-1.17.0-4 xorgproto-2025.1-1 zeromq-4.3.5-3 zlib-ng-2.3.3-1 zziplib-0.13.80-1 git-2.55.0-1 jupyter-nbformat-5.11.1-1 python-build-1.4.3-1 python-curio-1.6-7.1 python-installer-1.0.0-1 python-ipykernel-7.3.0-1 python-matplotlib-3.11.1-1 python-numpy-2.5.2-1 python-pandas-2.3.3-2 python-pytest-1:9.0.3-1 python-pytest-asyncio-1.4.0-1 python-setuptools-1:82.0.1-1 python-testpath-0.6.0-5 python-trio-0.33.0-1 python-wheel-0.48.0-1 tcsh-6.24.16-1 texlive-bin-2026.0-2 texlive-latex-2026.1-1 Total Download Size: 0.48 MiB Total Installed Size: 612.62 MiB :: Proceed with installation? [Y/n] :: Retrieving packages... python-packaging-26.3-1-any downloading... python-more-itertools-11.1.0-1-any downloading... python-wheel-0.48.0-1-any downloading... python-jaraco.context-6.1.2-1-any downloading... python-sniffio-1.3.1-5-any downloading... checking keyring... checking package integrity... loading package files... checking for file conflicts... :: Processing package changes... installing perl-error... installing perl-timedate... installing perl-mailtools... installing zlib-ng... installing git... Optional dependencies for git git-zsh-completion: upstream zsh completion tk: gitk and git gui openssh: ssh transport and crypto man: show help with `git command --help` perl-libwww: git svn perl-term-readkey: git svn and interactive.singlekey setting perl-io-socket-ssl: git send-email TLS support perl-authen-sasl: git send-email TLS support perl-cgi: gitweb (web interface) support python: git svn & git p4 [installed] subversion: git svn org.freedesktop.secrets: keyring credential helper libsecret: libsecret credential helper [installed] less: the default pager for git installing python-packaging... installing python-pyproject-hooks... installing python-build... Optional dependencies for python-build python-pip: to use as the Python package installer (default) python-uv: to use as the Python package installer python-virtualenv: to use virtualenv for build isolation installing python-installer... installing python-more-itertools... installing python-jaraco.functools... installing python-jaraco.context... installing python-autocommand... installing python-jaraco.text... Optional dependencies for python-jaraco.text python-inflect: for show-newlines script installing python-jaraco.collections... installing python-platformdirs... installing python-wheel... Optional dependencies for python-wheel python-keyring: for wheel.signatures python-xdg: for wheel.signatures python-setuptools: for legacy bdist_wheel subcommand [pending] installing python-pkg_resources... installing python-setuptools... installing python-fastjsonschema... installing python-attrs... installing python-rpds-py... installing python-referencing... installing python-jsonschema-specifications... installing python-jsonschema... Optional dependencies for python-jsonschema python-isoduration: for duration format python-fqdn: for hostname format python-idna: for idn-hostname format [pending] python-jsonpointer: for json-pointer & relative-json-pointer format python-rfc3339-validator: for date-time format python-rfc3987: for iri, iri-reference, uri & uri-reference format python-uri-template: for uri-template format python-webcolors: for color format installing python-jupyter-core... installing jupyter-nbformat... installing python-curio... installing ipython... Optional dependencies for ipython python-black: to auto format with Black python-pickleshare: for the ip.db database yapf: to auto format with YAPF installing python-comm... installing python-six... installing python-dateutil... installing libsodium... installing libpgm... installing zeromq... Optional dependencies for zeromq cppzmq: C++ binding for libzmq installing python-pyzmq... installing python-tornado... Optional dependencies for python-tornado python-pycurl: for tornado.curl_httpclient python-twisted: for tornado.platform.twisted installing python-jupyter-client... installing python-nest-asyncio... installing python-ipykernel... Optional dependencies for python-ipykernel python-debugpy: debugger support installing libpng... installing freetype2... Optional dependencies for freetype2 harfbuzz: Improved autohinting [pending] installing blas... installing cblas... installing lapack... installing python-numpy... Optional dependencies for python-numpy blas-openblas: faster linear algebra installing python-contourpy... Optional dependencies for python-contourpy python-matplotlib: matplotlib renderer [pending] installing python-cycler... installing python-fonttools... Optional dependencies for python-fonttools python-brotli: to compress/decompress WOFF 2.0 web fonts python-fs: to read/write UFO source files python-lxml: faster backend for XML files reading/writing python-lz4: for graphite type tables in ttLib/tables python-matplotlib: for visualizing DesignSpaceDocument and resulting VariationModel [pending] python-pyqt5: for drawing glyphs with Qt’s QPainterPath python-reportlab: to drawing glyphs as PNG images python-scipy: for finding wrong contour/component order between different masters python-sympy: for symbolic font statistics analysis python-uharfbuzz: to use the Harfbuzz Repacker for packing GSUB/GPOS tables python-unicodedata2: for displaying the Unicode character names when dumping the cmap table with ttx python-zopfli: faster backend fom WOFF 1.0 web fonts compression installing python-kiwisolver... installing libjpeg-turbo... installing jbigkit... installing libdeflate... installing libwebp... Optional dependencies for libwebp libwebp-utils: WebP conversion and inspection tools installing libtiff... Optional dependencies for libtiff freeglut: for using tiffgt installing lcms2... installing aom... installing dav1d... Optional dependencies for dav1d dav1d-doc: HTML documentation installing libyuv... installing rav1e... installing svt-av1... installing libavif... installing fribidi... installing graphite... Optional dependencies for graphite graphite-docs: Documentation installing harfbuzz... Optional dependencies for harfbuzz harfbuzz-utils: utilities installing libraqm... installing openjpeg2... installing libimagequant... installing xcb-proto... installing xorgproto... installing libxdmcp... installing libxau... installing libxcb... installing python-pillow... Optional dependencies for python-pillow libwebp: for webp images [installed] tk: for the ImageTK module python-olefile: OLE2 file support python-pyqt6: for the ImageQt module python-defusedxml: for reading XMP tags installing python-pyparsing... Optional dependencies for python-pyparsing python-railroad-diagrams: for generating Railroad Diagrams python-jinja: for generating Railroad Diagrams installing qhull... installing python-matplotlib... Optional dependencies for python-matplotlib tk: Tk{Agg,Cairo} backends pyside6: alternative for Qt6{Agg,Cairo} backends python-pyqt6: Qt6{Agg,Cairo} backends python-gobject: for GTK{3,4}{Agg,Cairo} backend python-wxpython: WX{Agg,Cairo} backend python-cairo: {GTK{3,4},Qt{5,6},Tk,WX}Cairo backends python-cairocffi: alternative for Cairo backends python-tornado: WebAgg backend [installed] ffmpeg: for saving movies imagemagick: for saving animated gifs ghostscript: usetex dependencies [pending] texlive-binextra: usetex dependencies texlive-fontsrecommended: usetex dependencies texlive-latexrecommended: usetex usage with pdflatex python-certifi: https support installing python-pytz... installing python-pandas... Optional dependencies for python-pandas python-pandas-datareader: pandas.io.data replacement (recommended) python-numexpr: accelerating certain numerical operations (recommended) python-bottleneck: accelerating certain types of nan evaluations (recommended) python-matplotlib: plotting [installed] python-jinja: conditional formatting with DataFrame.style python-tabulate: printing in Markdown-friendly format python-scipy: miscellaneous statistical functions python-numba: alternative execution engine python-xarray: pandas-like API for N-dimensional data python-xlrd: Excel XLS input python-xlwt: Excel XLS output python-openpyxl: Excel XLSX input/output python-xlsxwriter: alternative Excel XLSX output python-beautifulsoup4: read_html function (in any case) python-html5lib: read_html function (and/or python-lxml) python-lxml: read_xml, to_xml and read_html function (and/or python-html5lib) python-sqlalchemy: SQL database support python-psycopg2: PostgreSQL engine for sqlalchemy python-pymysql: MySQL engine for sqlalchemy python-pytables: HDF5-based reading / writing python-blosc: for msgpack compression using blosc zlib: compression for msgpack [installed] python-pyarrow: Parquet, ORC and feather reading/writing python-fsspec: handling files aside from local and HTTP python-qtpy: read_clipboard function (only one needed) xclip: read_clipboard function (only one needed) xsel: read_clipboard function (only one needed) python-brotli: Brotli compression python-snappy: Snappy compression python-zstandard: Zstandard (zstd) compression installing python-iniconfig... installing python-pluggy... installing python-pytest... installing python-pytest-asyncio... installing python-testpath... installing python-idna... installing python-outcome... installing python-sniffio... installing python-sortedcontainers... installing python-trio... installing tcsh... installing fontconfig... Creating fontconfig configuration... Rebuilding fontconfig cache... installing libx11... installing libxext... installing libxrender... installing lzo... installing pixman... installing cairo... installing ffcall... installing libice... installing libsm... installing libxt... installing libxpm... installing libde265... Optional dependencies for libde265 sdl2-compat: for the decoder tool installing openh264... installing l-smash... installing x264... installing x265... installing libheif... Optional dependencies for libheif libjpeg-turbo: for heif-dec and heif-enc [installed] libpng: for heif-dec and heif-enc [installed] libtiff: for heif-dec and heif-enc [installed] dav1d: dav1d encoder [installed] ffmpeg: hardware decode openjpeg2: JPEG2000 decoder [installed] rav1e: rav1e encoder [installed] svt-av1: svt-av1 encoder [installed] installing gd... Optional dependencies for gd perl: bdftogd script [installed] installing libpaper... installing libsigsegv... installing libsynctex... installing libxmu... installing libxaw... installing potrace... installing zziplib... installing texlive-bin... Optional dependencies for texlive-bin psutils: to manipulate the output of dvips installing texlive-basic... Optional dependencies for texlive-basic perl-tk: for the tlmgr GUI biber: for bibliography processing installing libdaemon... installing avahi... Optional dependencies for avahi gtk3: avahi-discover, avahi-discover-standalone, bshell, bssh, bvnc libevent: libevent bindings [installed] nss-mdns: NSS support for mDNS python-dbus: avahi-bookmarks, avahi-discover python-gobject: avahi-bookmarks, avahi-discover python-twisted: avahi-bookmarks installing libcups... installing jbig2dec... installing ijs... installing libidn... installing poppler-data... installing bubblewrap... installing giflib... installing libunwind... installing gperftools... installing gtest... Optional dependencies for gtest python: gmock generator [installed] installing highway... installing libjxl... Optional dependencies for libjxl java-runtime: for JNI bindings installing libdatrie... installing libthai... installing libxft... installing pango... installing librsvg... installing glycin... Optional dependencies for glycin libheif: Load .avif, .heic and .heif [installed] installing shared-mime-info... installing gdk-pixbuf2... Optional dependencies for gdk-pixbuf2 libheif: Load .avif, .heic and .heif [installed] libopenraw: Load .arw, .cr2, .crw, .dng, .erf, .mrw, .nef, .orf, .pef and .raf libwmf: Load .apm and .wmf installing ghostscript... Optional dependencies for ghostscript gtk3: needed for gsx installing woff2... installing dvisvgm... Optional dependencies for dvisvgm mupdf-tools: to process PDF files installing texlive-latex... :: Running post-transaction hooks... ( 1/12) Creating system user accounts... Creating group 'avahi' with GID 968. Creating user 'avahi' (Avahi mDNS/DNS-SD daemon) with UID 968 and GID 968. Creating group 'git' with GID 967. Creating user 'git' (git daemon user) with UID 967 and GID 967. ( 2/12) Reloading system manager configuration... Skipped: Current root is not booted. ( 3/12) Updating the MIME type database... ( 4/12) Arming ConditionNeedsUpdate... ( 5/12) Updating fontconfig configuration... ( 6/12) Updating TeXLive filename database... ( 7/12) Updating TeXLive format files... ( 8/12) Updating TeXLive font maps... ( 9/12) Reloading system bus configuration... Skipped: Current root is not booted. (10/12) Checking for old perl modules... (11/12) Updating fontconfig cache... (12/12) Updating the info directory file... [?25h==> Retrieving sources...  -> Found IPython-icon.png ==> WARNING: Skipping all source file integrity checks. ==> Extracting sources...  -> Creating working copy of ipython git repo... Cloning into 'ipython'... done. Switched to a new branch 'makepkg' ==> Starting build()... * Building wheel... /usr/lib/python3.14/site-packages/setuptools/config/_apply_pyprojecttoml.py:82: SetuptoolsWarning: `license` overwritten by `pyproject.toml` corresp(dist, value, root_dir) running bdist_wheel running build running build_py checking package data check version number creating build/lib/IPython copying IPython/__init__.py -> build/lib/IPython copying IPython/__main__.py -> build/lib/IPython copying IPython/display.py -> build/lib/IPython copying IPython/paths.py -> build/lib/IPython creating build/lib/IPython/core copying IPython/core/__init__.py -> build/lib/IPython/core copying IPython/core/_dunder_ops.py -> build/lib/IPython/core copying IPython/core/alias.py -> build/lib/IPython/core copying IPython/core/application.py -> build/lib/IPython/core copying IPython/core/async_helpers.py -> build/lib/IPython/core copying IPython/core/autocall.py -> build/lib/IPython/core copying IPython/core/builtin_trap.py -> build/lib/IPython/core copying IPython/core/compilerop.py -> build/lib/IPython/core copying IPython/core/completer.py -> build/lib/IPython/core copying IPython/core/completerlib.py -> build/lib/IPython/core copying IPython/core/crashhandler.py -> build/lib/IPython/core copying IPython/core/debugger.py -> build/lib/IPython/core copying IPython/core/debugger_backport.py -> build/lib/IPython/core copying IPython/core/display.py -> build/lib/IPython/core copying IPython/core/display_functions.py -> build/lib/IPython/core copying IPython/core/display_trap.py -> build/lib/IPython/core copying IPython/core/displayhook.py -> build/lib/IPython/core copying IPython/core/displaypub.py -> build/lib/IPython/core copying IPython/core/doctb.py -> build/lib/IPython/core copying IPython/core/error.py -> build/lib/IPython/core copying IPython/core/events.py -> build/lib/IPython/core copying IPython/core/extensions.py -> build/lib/IPython/core copying IPython/core/formatters.py -> build/lib/IPython/core copying IPython/core/getipython.py -> build/lib/IPython/core copying IPython/core/guarded_eval.py -> build/lib/IPython/core copying IPython/core/history.py -> build/lib/IPython/core copying IPython/core/historyapp.py -> build/lib/IPython/core copying IPython/core/hooks.py -> build/lib/IPython/core copying IPython/core/inputtransformer2.py -> build/lib/IPython/core copying IPython/core/interactiveshell.py -> build/lib/IPython/core copying IPython/core/kitty.py -> build/lib/IPython/core copying IPython/core/latex_symbols.py -> build/lib/IPython/core copying IPython/core/logger.py -> build/lib/IPython/core copying IPython/core/macro.py -> build/lib/IPython/core copying IPython/core/magic.py -> build/lib/IPython/core copying IPython/core/magic_arguments.py -> build/lib/IPython/core copying IPython/core/oinspect.py -> build/lib/IPython/core copying IPython/core/page.py -> build/lib/IPython/core copying IPython/core/payload.py -> build/lib/IPython/core copying IPython/core/payloadpage.py -> build/lib/IPython/core copying IPython/core/prefilter.py -> build/lib/IPython/core copying IPython/core/profileapp.py -> build/lib/IPython/core copying IPython/core/profiledir.py -> build/lib/IPython/core copying IPython/core/pylabtools.py -> build/lib/IPython/core copying IPython/core/shellapp.py -> build/lib/IPython/core copying IPython/core/splitinput.py -> build/lib/IPython/core copying IPython/core/tbtools.py -> build/lib/IPython/core copying IPython/core/tips.py -> build/lib/IPython/core copying IPython/core/ultratb.py -> build/lib/IPython/core copying IPython/core/usage.py -> build/lib/IPython/core copying IPython/core/release.py -> build/lib/IPython/core creating build/lib/IPython/extensions copying IPython/extensions/__init__.py -> build/lib/IPython/extensions copying IPython/extensions/autoreload.py -> build/lib/IPython/extensions copying IPython/extensions/storemagic.py -> build/lib/IPython/extensions creating build/lib/IPython/external copying IPython/external/__init__.py -> build/lib/IPython/external copying IPython/external/pickleshare.py -> build/lib/IPython/external copying IPython/external/qt_for_kernel.py -> build/lib/IPython/external copying IPython/external/qt_loaders.py -> build/lib/IPython/external creating build/lib/IPython/lib copying IPython/lib/__init__.py -> build/lib/IPython/lib copying IPython/lib/backgroundjobs.py -> build/lib/IPython/lib copying IPython/lib/clipboard.py -> build/lib/IPython/lib copying IPython/lib/deepreload.py -> build/lib/IPython/lib copying IPython/lib/demo.py -> build/lib/IPython/lib copying IPython/lib/display.py -> build/lib/IPython/lib copying IPython/lib/editorhooks.py -> build/lib/IPython/lib copying IPython/lib/guisupport.py -> build/lib/IPython/lib copying IPython/lib/latextools.py -> build/lib/IPython/lib copying IPython/lib/lexers.py -> build/lib/IPython/lib copying IPython/lib/pretty.py -> build/lib/IPython/lib creating build/lib/IPython/sphinxext copying IPython/sphinxext/__init__.py -> build/lib/IPython/sphinxext copying IPython/sphinxext/custom_doctests.py -> build/lib/IPython/sphinxext copying IPython/sphinxext/ipython_console_highlighting.py -> build/lib/IPython/sphinxext copying IPython/sphinxext/ipython_directive.py -> build/lib/IPython/sphinxext creating build/lib/IPython/terminal copying IPython/terminal/__init__.py -> build/lib/IPython/terminal copying IPython/terminal/debugger.py -> build/lib/IPython/terminal copying IPython/terminal/embed.py -> build/lib/IPython/terminal copying IPython/terminal/interactiveshell.py -> build/lib/IPython/terminal copying IPython/terminal/ipapp.py -> build/lib/IPython/terminal copying IPython/terminal/magics.py -> build/lib/IPython/terminal copying IPython/terminal/prompts.py -> build/lib/IPython/terminal copying IPython/terminal/ptutils.py -> build/lib/IPython/terminal creating build/lib/IPython/testing copying IPython/testing/__init__.py -> build/lib/IPython/testing copying IPython/testing/decorators.py -> build/lib/IPython/testing copying IPython/testing/globalipapp.py -> build/lib/IPython/testing copying IPython/testing/ipunittest.py -> build/lib/IPython/testing copying IPython/testing/skipdoctest.py -> build/lib/IPython/testing copying IPython/testing/tools.py -> build/lib/IPython/testing creating build/lib/IPython/utils copying IPython/utils/PyColorize.py -> build/lib/IPython/utils copying IPython/utils/__init__.py -> build/lib/IPython/utils copying IPython/utils/_process_common.py -> build/lib/IPython/utils copying IPython/utils/_process_emscripten.py -> build/lib/IPython/utils copying IPython/utils/_process_posix.py -> build/lib/IPython/utils copying IPython/utils/_process_win32.py -> build/lib/IPython/utils copying IPython/utils/_sysinfo.py -> build/lib/IPython/utils copying IPython/utils/capture.py -> build/lib/IPython/utils copying IPython/utils/coloransi.py -> build/lib/IPython/utils copying IPython/utils/contexts.py -> build/lib/IPython/utils copying IPython/utils/data.py -> build/lib/IPython/utils copying IPython/utils/decorators.py -> build/lib/IPython/utils copying IPython/utils/dir2.py -> build/lib/IPython/utils copying IPython/utils/docs.py -> build/lib/IPython/utils copying IPython/utils/encoding.py -> build/lib/IPython/utils copying IPython/utils/frame.py -> build/lib/IPython/utils copying IPython/utils/generics.py -> build/lib/IPython/utils copying IPython/utils/importstring.py -> build/lib/IPython/utils copying IPython/utils/io.py -> build/lib/IPython/utils copying IPython/utils/ipstruct.py -> build/lib/IPython/utils copying IPython/utils/module_paths.py -> build/lib/IPython/utils copying IPython/utils/openpy.py -> build/lib/IPython/utils copying IPython/utils/path.py -> build/lib/IPython/utils copying IPython/utils/process.py -> build/lib/IPython/utils copying IPython/utils/sentinel.py -> build/lib/IPython/utils copying IPython/utils/strdispatch.py -> build/lib/IPython/utils copying IPython/utils/sysinfo.py -> build/lib/IPython/utils copying IPython/utils/syspathcontext.py -> build/lib/IPython/utils copying IPython/utils/tempdir.py -> build/lib/IPython/utils copying IPython/utils/terminal.py -> build/lib/IPython/utils copying IPython/utils/text.py -> build/lib/IPython/utils copying IPython/utils/timing.py -> build/lib/IPython/utils copying IPython/utils/tokenutil.py -> build/lib/IPython/utils copying IPython/utils/wildcard.py -> build/lib/IPython/utils creating build/lib/IPython/core/magics copying IPython/core/magics/__init__.py -> build/lib/IPython/core/magics copying IPython/core/magics/_table.py -> build/lib/IPython/core/magics copying IPython/core/magics/ast_mod.py -> build/lib/IPython/core/magics copying IPython/core/magics/auto.py -> build/lib/IPython/core/magics copying IPython/core/magics/basic.py -> build/lib/IPython/core/magics copying IPython/core/magics/code.py -> build/lib/IPython/core/magics copying IPython/core/magics/config.py -> build/lib/IPython/core/magics copying IPython/core/magics/display.py -> build/lib/IPython/core/magics copying IPython/core/magics/execution.py -> build/lib/IPython/core/magics copying IPython/core/magics/extension.py -> build/lib/IPython/core/magics copying IPython/core/magics/history.py -> build/lib/IPython/core/magics copying IPython/core/magics/logging.py -> build/lib/IPython/core/magics copying IPython/core/magics/namespace.py -> build/lib/IPython/core/magics copying IPython/core/magics/osm.py -> build/lib/IPython/core/magics copying IPython/core/magics/packaging.py -> build/lib/IPython/core/magics copying IPython/core/magics/pylab.py -> build/lib/IPython/core/magics copying IPython/core/magics/script.py -> build/lib/IPython/core/magics creating build/lib/IPython/extensions/deduperreload copying IPython/extensions/deduperreload/__init__.py -> build/lib/IPython/extensions/deduperreload copying IPython/extensions/deduperreload/deduperreload.py -> build/lib/IPython/extensions/deduperreload copying IPython/extensions/deduperreload/deduperreload_patching.py -> build/lib/IPython/extensions/deduperreload creating build/lib/IPython/sphinxext/tests copying IPython/sphinxext/tests/__init__.py -> build/lib/IPython/sphinxext/tests copying IPython/sphinxext/tests/test_ansi_stripping.py -> build/lib/IPython/sphinxext/tests creating build/lib/IPython/terminal/pt_inputhooks copying IPython/terminal/pt_inputhooks/__init__.py -> build/lib/IPython/terminal/pt_inputhooks copying IPython/terminal/pt_inputhooks/asyncio.py -> build/lib/IPython/terminal/pt_inputhooks copying IPython/terminal/pt_inputhooks/glut.py -> build/lib/IPython/terminal/pt_inputhooks copying IPython/terminal/pt_inputhooks/gtk.py -> build/lib/IPython/terminal/pt_inputhooks copying IPython/terminal/pt_inputhooks/gtk3.py -> build/lib/IPython/terminal/pt_inputhooks copying IPython/terminal/pt_inputhooks/gtk4.py -> build/lib/IPython/terminal/pt_inputhooks copying IPython/terminal/pt_inputhooks/osx.py -> build/lib/IPython/terminal/pt_inputhooks copying IPython/terminal/pt_inputhooks/pyglet.py -> build/lib/IPython/terminal/pt_inputhooks copying IPython/terminal/pt_inputhooks/qt.py -> build/lib/IPython/terminal/pt_inputhooks copying IPython/terminal/pt_inputhooks/tk.py -> build/lib/IPython/terminal/pt_inputhooks copying IPython/terminal/pt_inputhooks/wx.py -> build/lib/IPython/terminal/pt_inputhooks creating build/lib/IPython/terminal/shortcuts copying IPython/terminal/shortcuts/__init__.py -> build/lib/IPython/terminal/shortcuts copying IPython/terminal/shortcuts/auto_match.py -> build/lib/IPython/terminal/shortcuts copying IPython/terminal/shortcuts/auto_suggest.py -> build/lib/IPython/terminal/shortcuts copying IPython/terminal/shortcuts/filters.py -> build/lib/IPython/terminal/shortcuts creating build/lib/IPython/terminal/tests copying IPython/terminal/tests/__init__.py -> build/lib/IPython/terminal/tests copying IPython/terminal/tests/test_ptutils.py -> build/lib/IPython/terminal/tests creating build/lib/IPython/testing/plugin copying IPython/testing/plugin/__init__.py -> build/lib/IPython/testing/plugin copying IPython/testing/plugin/dtexample.py -> build/lib/IPython/testing/plugin copying IPython/testing/plugin/ipdoctest.py -> build/lib/IPython/testing/plugin copying IPython/testing/plugin/pytest_ipdoctest.py -> build/lib/IPython/testing/plugin copying IPython/testing/plugin/setup.py -> build/lib/IPython/testing/plugin copying IPython/testing/plugin/simple.py -> build/lib/IPython/testing/plugin copying IPython/testing/plugin/simplevars.py -> build/lib/IPython/testing/plugin copying IPython/testing/plugin/test_ipdoctest.py -> build/lib/IPython/testing/plugin copying IPython/testing/plugin/test_refs.py -> build/lib/IPython/testing/plugin copying IPython/py.typed -> build/lib/IPython creating build/lib/IPython/core/profile copying IPython/core/profile/README_STARTUP -> build/lib/IPython/core/profile copying IPython/testing/plugin/test_combo.txt -> build/lib/IPython/testing/plugin copying IPython/testing/plugin/test_example.txt -> build/lib/IPython/testing/plugin copying IPython/testing/plugin/test_exampleip.txt -> build/lib/IPython/testing/plugin writing git commit '3278f6f5b' to build/lib/IPython/utils/_sysinfo.py installing to build/bdist.linux-riscv64/wheel running install running install_lib creating build/bdist.linux-riscv64/wheel creating build/bdist.linux-riscv64/wheel/IPython copying build/lib/IPython/__init__.py -> build/bdist.linux-riscv64/wheel/./IPython copying build/lib/IPython/__main__.py -> build/bdist.linux-riscv64/wheel/./IPython copying build/lib/IPython/display.py -> build/bdist.linux-riscv64/wheel/./IPython copying build/lib/IPython/paths.py -> build/bdist.linux-riscv64/wheel/./IPython creating build/bdist.linux-riscv64/wheel/IPython/core copying build/lib/IPython/core/__init__.py -> build/bdist.linux-riscv64/wheel/./IPython/core copying build/lib/IPython/core/_dunder_ops.py -> build/bdist.linux-riscv64/wheel/./IPython/core copying build/lib/IPython/core/alias.py -> build/bdist.linux-riscv64/wheel/./IPython/core copying build/lib/IPython/core/application.py -> build/bdist.linux-riscv64/wheel/./IPython/core copying build/lib/IPython/core/async_helpers.py -> build/bdist.linux-riscv64/wheel/./IPython/core copying build/lib/IPython/core/autocall.py -> build/bdist.linux-riscv64/wheel/./IPython/core copying build/lib/IPython/core/builtin_trap.py -> build/bdist.linux-riscv64/wheel/./IPython/core copying build/lib/IPython/core/compilerop.py -> build/bdist.linux-riscv64/wheel/./IPython/core copying build/lib/IPython/core/completer.py -> build/bdist.linux-riscv64/wheel/./IPython/core copying build/lib/IPython/core/completerlib.py -> build/bdist.linux-riscv64/wheel/./IPython/core copying build/lib/IPython/core/crashhandler.py -> build/bdist.linux-riscv64/wheel/./IPython/core copying build/lib/IPython/core/debugger.py -> build/bdist.linux-riscv64/wheel/./IPython/core copying build/lib/IPython/core/debugger_backport.py -> build/bdist.linux-riscv64/wheel/./IPython/core copying build/lib/IPython/core/display.py -> build/bdist.linux-riscv64/wheel/./IPython/core copying build/lib/IPython/core/display_functions.py -> build/bdist.linux-riscv64/wheel/./IPython/core copying build/lib/IPython/core/display_trap.py -> build/bdist.linux-riscv64/wheel/./IPython/core copying build/lib/IPython/core/displayhook.py -> build/bdist.linux-riscv64/wheel/./IPython/core copying build/lib/IPython/core/displaypub.py -> build/bdist.linux-riscv64/wheel/./IPython/core copying build/lib/IPython/core/doctb.py -> build/bdist.linux-riscv64/wheel/./IPython/core copying build/lib/IPython/core/error.py -> build/bdist.linux-riscv64/wheel/./IPython/core copying build/lib/IPython/core/events.py -> build/bdist.linux-riscv64/wheel/./IPython/core copying build/lib/IPython/core/extensions.py -> build/bdist.linux-riscv64/wheel/./IPython/core copying build/lib/IPython/core/formatters.py -> build/bdist.linux-riscv64/wheel/./IPython/core copying build/lib/IPython/core/getipython.py -> build/bdist.linux-riscv64/wheel/./IPython/core copying build/lib/IPython/core/guarded_eval.py -> build/bdist.linux-riscv64/wheel/./IPython/core copying build/lib/IPython/core/history.py -> build/bdist.linux-riscv64/wheel/./IPython/core copying build/lib/IPython/core/historyapp.py -> build/bdist.linux-riscv64/wheel/./IPython/core copying build/lib/IPython/core/hooks.py -> build/bdist.linux-riscv64/wheel/./IPython/core copying build/lib/IPython/core/inputtransformer2.py -> build/bdist.linux-riscv64/wheel/./IPython/core copying build/lib/IPython/core/interactiveshell.py -> build/bdist.linux-riscv64/wheel/./IPython/core copying build/lib/IPython/core/kitty.py -> build/bdist.linux-riscv64/wheel/./IPython/core copying build/lib/IPython/core/latex_symbols.py -> build/bdist.linux-riscv64/wheel/./IPython/core copying build/lib/IPython/core/logger.py -> build/bdist.linux-riscv64/wheel/./IPython/core copying build/lib/IPython/core/macro.py -> build/bdist.linux-riscv64/wheel/./IPython/core copying build/lib/IPython/core/magic.py -> build/bdist.linux-riscv64/wheel/./IPython/core copying build/lib/IPython/core/magic_arguments.py -> build/bdist.linux-riscv64/wheel/./IPython/core copying build/lib/IPython/core/oinspect.py -> build/bdist.linux-riscv64/wheel/./IPython/core copying build/lib/IPython/core/page.py -> build/bdist.linux-riscv64/wheel/./IPython/core copying build/lib/IPython/core/payload.py -> build/bdist.linux-riscv64/wheel/./IPython/core copying build/lib/IPython/core/payloadpage.py -> build/bdist.linux-riscv64/wheel/./IPython/core copying build/lib/IPython/core/prefilter.py -> build/bdist.linux-riscv64/wheel/./IPython/core copying build/lib/IPython/core/profileapp.py -> build/bdist.linux-riscv64/wheel/./IPython/core copying build/lib/IPython/core/profiledir.py -> build/bdist.linux-riscv64/wheel/./IPython/core copying build/lib/IPython/core/pylabtools.py -> build/bdist.linux-riscv64/wheel/./IPython/core copying build/lib/IPython/core/shellapp.py -> build/bdist.linux-riscv64/wheel/./IPython/core copying build/lib/IPython/core/splitinput.py -> build/bdist.linux-riscv64/wheel/./IPython/core copying build/lib/IPython/core/tbtools.py -> build/bdist.linux-riscv64/wheel/./IPython/core copying build/lib/IPython/core/tips.py -> build/bdist.linux-riscv64/wheel/./IPython/core copying build/lib/IPython/core/ultratb.py -> build/bdist.linux-riscv64/wheel/./IPython/core copying build/lib/IPython/core/usage.py -> build/bdist.linux-riscv64/wheel/./IPython/core copying build/lib/IPython/core/release.py -> build/bdist.linux-riscv64/wheel/./IPython/core creating build/bdist.linux-riscv64/wheel/IPython/core/magics copying build/lib/IPython/core/magics/__init__.py -> build/bdist.linux-riscv64/wheel/./IPython/core/magics copying build/lib/IPython/core/magics/_table.py -> build/bdist.linux-riscv64/wheel/./IPython/core/magics copying build/lib/IPython/core/magics/ast_mod.py -> build/bdist.linux-riscv64/wheel/./IPython/core/magics copying build/lib/IPython/core/magics/auto.py -> build/bdist.linux-riscv64/wheel/./IPython/core/magics copying build/lib/IPython/core/magics/basic.py -> build/bdist.linux-riscv64/wheel/./IPython/core/magics copying build/lib/IPython/core/magics/code.py -> build/bdist.linux-riscv64/wheel/./IPython/core/magics copying build/lib/IPython/core/magics/config.py -> build/bdist.linux-riscv64/wheel/./IPython/core/magics copying build/lib/IPython/core/magics/display.py -> build/bdist.linux-riscv64/wheel/./IPython/core/magics copying build/lib/IPython/core/magics/execution.py -> build/bdist.linux-riscv64/wheel/./IPython/core/magics copying build/lib/IPython/core/magics/extension.py -> build/bdist.linux-riscv64/wheel/./IPython/core/magics copying build/lib/IPython/core/magics/history.py -> build/bdist.linux-riscv64/wheel/./IPython/core/magics copying build/lib/IPython/core/magics/logging.py -> build/bdist.linux-riscv64/wheel/./IPython/core/magics copying build/lib/IPython/core/magics/namespace.py -> build/bdist.linux-riscv64/wheel/./IPython/core/magics copying build/lib/IPython/core/magics/osm.py -> build/bdist.linux-riscv64/wheel/./IPython/core/magics copying build/lib/IPython/core/magics/packaging.py -> build/bdist.linux-riscv64/wheel/./IPython/core/magics copying build/lib/IPython/core/magics/pylab.py -> build/bdist.linux-riscv64/wheel/./IPython/core/magics copying build/lib/IPython/core/magics/script.py -> build/bdist.linux-riscv64/wheel/./IPython/core/magics creating build/bdist.linux-riscv64/wheel/IPython/core/profile copying build/lib/IPython/core/profile/README_STARTUP -> build/bdist.linux-riscv64/wheel/./IPython/core/profile creating build/bdist.linux-riscv64/wheel/IPython/extensions copying build/lib/IPython/extensions/__init__.py -> build/bdist.linux-riscv64/wheel/./IPython/extensions copying build/lib/IPython/extensions/autoreload.py -> build/bdist.linux-riscv64/wheel/./IPython/extensions copying build/lib/IPython/extensions/storemagic.py -> build/bdist.linux-riscv64/wheel/./IPython/extensions creating build/bdist.linux-riscv64/wheel/IPython/extensions/deduperreload copying build/lib/IPython/extensions/deduperreload/__init__.py -> build/bdist.linux-riscv64/wheel/./IPython/extensions/deduperreload copying build/lib/IPython/extensions/deduperreload/deduperreload.py -> build/bdist.linux-riscv64/wheel/./IPython/extensions/deduperreload copying build/lib/IPython/extensions/deduperreload/deduperreload_patching.py -> build/bdist.linux-riscv64/wheel/./IPython/extensions/deduperreload creating build/bdist.linux-riscv64/wheel/IPython/external copying build/lib/IPython/external/__init__.py -> build/bdist.linux-riscv64/wheel/./IPython/external copying build/lib/IPython/external/pickleshare.py -> build/bdist.linux-riscv64/wheel/./IPython/external copying build/lib/IPython/external/qt_for_kernel.py -> build/bdist.linux-riscv64/wheel/./IPython/external copying build/lib/IPython/external/qt_loaders.py -> build/bdist.linux-riscv64/wheel/./IPython/external creating build/bdist.linux-riscv64/wheel/IPython/lib copying build/lib/IPython/lib/__init__.py -> build/bdist.linux-riscv64/wheel/./IPython/lib copying build/lib/IPython/lib/backgroundjobs.py -> build/bdist.linux-riscv64/wheel/./IPython/lib copying build/lib/IPython/lib/clipboard.py -> build/bdist.linux-riscv64/wheel/./IPython/lib copying build/lib/IPython/lib/deepreload.py -> build/bdist.linux-riscv64/wheel/./IPython/lib copying build/lib/IPython/lib/demo.py -> build/bdist.linux-riscv64/wheel/./IPython/lib copying build/lib/IPython/lib/display.py -> build/bdist.linux-riscv64/wheel/./IPython/lib copying build/lib/IPython/lib/editorhooks.py -> build/bdist.linux-riscv64/wheel/./IPython/lib copying build/lib/IPython/lib/guisupport.py -> build/bdist.linux-riscv64/wheel/./IPython/lib copying build/lib/IPython/lib/latextools.py -> build/bdist.linux-riscv64/wheel/./IPython/lib copying build/lib/IPython/lib/lexers.py -> build/bdist.linux-riscv64/wheel/./IPython/lib copying build/lib/IPython/lib/pretty.py -> build/bdist.linux-riscv64/wheel/./IPython/lib creating build/bdist.linux-riscv64/wheel/IPython/sphinxext copying build/lib/IPython/sphinxext/__init__.py -> build/bdist.linux-riscv64/wheel/./IPython/sphinxext copying build/lib/IPython/sphinxext/custom_doctests.py -> build/bdist.linux-riscv64/wheel/./IPython/sphinxext copying build/lib/IPython/sphinxext/ipython_console_highlighting.py -> build/bdist.linux-riscv64/wheel/./IPython/sphinxext copying build/lib/IPython/sphinxext/ipython_directive.py -> build/bdist.linux-riscv64/wheel/./IPython/sphinxext creating build/bdist.linux-riscv64/wheel/IPython/sphinxext/tests copying build/lib/IPython/sphinxext/tests/__init__.py -> build/bdist.linux-riscv64/wheel/./IPython/sphinxext/tests copying build/lib/IPython/sphinxext/tests/test_ansi_stripping.py -> build/bdist.linux-riscv64/wheel/./IPython/sphinxext/tests creating build/bdist.linux-riscv64/wheel/IPython/terminal copying build/lib/IPython/terminal/__init__.py -> build/bdist.linux-riscv64/wheel/./IPython/terminal copying build/lib/IPython/terminal/debugger.py -> build/bdist.linux-riscv64/wheel/./IPython/terminal copying build/lib/IPython/terminal/embed.py -> build/bdist.linux-riscv64/wheel/./IPython/terminal copying build/lib/IPython/terminal/interactiveshell.py -> build/bdist.linux-riscv64/wheel/./IPython/terminal copying build/lib/IPython/terminal/ipapp.py -> build/bdist.linux-riscv64/wheel/./IPython/terminal copying build/lib/IPython/terminal/magics.py -> build/bdist.linux-riscv64/wheel/./IPython/terminal copying build/lib/IPython/terminal/prompts.py -> build/bdist.linux-riscv64/wheel/./IPython/terminal copying build/lib/IPython/terminal/ptutils.py -> build/bdist.linux-riscv64/wheel/./IPython/terminal creating build/bdist.linux-riscv64/wheel/IPython/terminal/pt_inputhooks copying build/lib/IPython/terminal/pt_inputhooks/__init__.py -> build/bdist.linux-riscv64/wheel/./IPython/terminal/pt_inputhooks copying build/lib/IPython/terminal/pt_inputhooks/asyncio.py -> build/bdist.linux-riscv64/wheel/./IPython/terminal/pt_inputhooks copying build/lib/IPython/terminal/pt_inputhooks/glut.py -> build/bdist.linux-riscv64/wheel/./IPython/terminal/pt_inputhooks copying build/lib/IPython/terminal/pt_inputhooks/gtk.py -> build/bdist.linux-riscv64/wheel/./IPython/terminal/pt_inputhooks copying build/lib/IPython/terminal/pt_inputhooks/gtk3.py -> build/bdist.linux-riscv64/wheel/./IPython/terminal/pt_inputhooks copying build/lib/IPython/terminal/pt_inputhooks/gtk4.py -> build/bdist.linux-riscv64/wheel/./IPython/terminal/pt_inputhooks copying build/lib/IPython/terminal/pt_inputhooks/osx.py -> build/bdist.linux-riscv64/wheel/./IPython/terminal/pt_inputhooks copying build/lib/IPython/terminal/pt_inputhooks/pyglet.py -> build/bdist.linux-riscv64/wheel/./IPython/terminal/pt_inputhooks copying build/lib/IPython/terminal/pt_inputhooks/qt.py -> build/bdist.linux-riscv64/wheel/./IPython/terminal/pt_inputhooks copying build/lib/IPython/terminal/pt_inputhooks/tk.py -> build/bdist.linux-riscv64/wheel/./IPython/terminal/pt_inputhooks copying build/lib/IPython/terminal/pt_inputhooks/wx.py -> build/bdist.linux-riscv64/wheel/./IPython/terminal/pt_inputhooks creating build/bdist.linux-riscv64/wheel/IPython/terminal/shortcuts copying build/lib/IPython/terminal/shortcuts/__init__.py -> build/bdist.linux-riscv64/wheel/./IPython/terminal/shortcuts copying build/lib/IPython/terminal/shortcuts/auto_match.py -> build/bdist.linux-riscv64/wheel/./IPython/terminal/shortcuts copying build/lib/IPython/terminal/shortcuts/auto_suggest.py -> build/bdist.linux-riscv64/wheel/./IPython/terminal/shortcuts copying build/lib/IPython/terminal/shortcuts/filters.py -> build/bdist.linux-riscv64/wheel/./IPython/terminal/shortcuts creating build/bdist.linux-riscv64/wheel/IPython/terminal/tests copying build/lib/IPython/terminal/tests/__init__.py -> build/bdist.linux-riscv64/wheel/./IPython/terminal/tests copying build/lib/IPython/terminal/tests/test_ptutils.py -> build/bdist.linux-riscv64/wheel/./IPython/terminal/tests creating build/bdist.linux-riscv64/wheel/IPython/testing copying build/lib/IPython/testing/__init__.py -> build/bdist.linux-riscv64/wheel/./IPython/testing copying build/lib/IPython/testing/decorators.py -> build/bdist.linux-riscv64/wheel/./IPython/testing copying build/lib/IPython/testing/globalipapp.py -> build/bdist.linux-riscv64/wheel/./IPython/testing copying build/lib/IPython/testing/ipunittest.py -> build/bdist.linux-riscv64/wheel/./IPython/testing copying build/lib/IPython/testing/skipdoctest.py -> build/bdist.linux-riscv64/wheel/./IPython/testing copying build/lib/IPython/testing/tools.py -> build/bdist.linux-riscv64/wheel/./IPython/testing creating build/bdist.linux-riscv64/wheel/IPython/testing/plugin copying build/lib/IPython/testing/plugin/__init__.py -> build/bdist.linux-riscv64/wheel/./IPython/testing/plugin copying build/lib/IPython/testing/plugin/dtexample.py -> build/bdist.linux-riscv64/wheel/./IPython/testing/plugin copying build/lib/IPython/testing/plugin/ipdoctest.py -> build/bdist.linux-riscv64/wheel/./IPython/testing/plugin copying build/lib/IPython/testing/plugin/pytest_ipdoctest.py -> build/bdist.linux-riscv64/wheel/./IPython/testing/plugin copying build/lib/IPython/testing/plugin/setup.py -> build/bdist.linux-riscv64/wheel/./IPython/testing/plugin copying build/lib/IPython/testing/plugin/simple.py -> build/bdist.linux-riscv64/wheel/./IPython/testing/plugin copying build/lib/IPython/testing/plugin/simplevars.py -> build/bdist.linux-riscv64/wheel/./IPython/testing/plugin copying build/lib/IPython/testing/plugin/test_ipdoctest.py -> build/bdist.linux-riscv64/wheel/./IPython/testing/plugin copying build/lib/IPython/testing/plugin/test_refs.py -> build/bdist.linux-riscv64/wheel/./IPython/testing/plugin copying build/lib/IPython/testing/plugin/test_combo.txt -> build/bdist.linux-riscv64/wheel/./IPython/testing/plugin copying build/lib/IPython/testing/plugin/test_example.txt -> build/bdist.linux-riscv64/wheel/./IPython/testing/plugin copying build/lib/IPython/testing/plugin/test_exampleip.txt -> build/bdist.linux-riscv64/wheel/./IPython/testing/plugin creating build/bdist.linux-riscv64/wheel/IPython/utils copying build/lib/IPython/utils/PyColorize.py -> build/bdist.linux-riscv64/wheel/./IPython/utils copying build/lib/IPython/utils/__init__.py -> build/bdist.linux-riscv64/wheel/./IPython/utils copying build/lib/IPython/utils/_process_common.py -> build/bdist.linux-riscv64/wheel/./IPython/utils copying build/lib/IPython/utils/_process_emscripten.py -> build/bdist.linux-riscv64/wheel/./IPython/utils copying build/lib/IPython/utils/_process_posix.py -> build/bdist.linux-riscv64/wheel/./IPython/utils copying build/lib/IPython/utils/_process_win32.py -> build/bdist.linux-riscv64/wheel/./IPython/utils copying build/lib/IPython/utils/capture.py -> build/bdist.linux-riscv64/wheel/./IPython/utils copying build/lib/IPython/utils/coloransi.py -> build/bdist.linux-riscv64/wheel/./IPython/utils copying build/lib/IPython/utils/contexts.py -> build/bdist.linux-riscv64/wheel/./IPython/utils copying build/lib/IPython/utils/data.py -> build/bdist.linux-riscv64/wheel/./IPython/utils copying build/lib/IPython/utils/decorators.py -> build/bdist.linux-riscv64/wheel/./IPython/utils copying build/lib/IPython/utils/dir2.py -> build/bdist.linux-riscv64/wheel/./IPython/utils copying build/lib/IPython/utils/docs.py -> build/bdist.linux-riscv64/wheel/./IPython/utils copying build/lib/IPython/utils/encoding.py -> build/bdist.linux-riscv64/wheel/./IPython/utils copying build/lib/IPython/utils/frame.py -> build/bdist.linux-riscv64/wheel/./IPython/utils copying build/lib/IPython/utils/generics.py -> build/bdist.linux-riscv64/wheel/./IPython/utils copying build/lib/IPython/utils/importstring.py -> build/bdist.linux-riscv64/wheel/./IPython/utils copying build/lib/IPython/utils/io.py -> build/bdist.linux-riscv64/wheel/./IPython/utils copying build/lib/IPython/utils/ipstruct.py -> build/bdist.linux-riscv64/wheel/./IPython/utils copying build/lib/IPython/utils/module_paths.py -> build/bdist.linux-riscv64/wheel/./IPython/utils copying build/lib/IPython/utils/openpy.py -> build/bdist.linux-riscv64/wheel/./IPython/utils copying build/lib/IPython/utils/path.py -> build/bdist.linux-riscv64/wheel/./IPython/utils copying build/lib/IPython/utils/process.py -> build/bdist.linux-riscv64/wheel/./IPython/utils copying build/lib/IPython/utils/sentinel.py -> build/bdist.linux-riscv64/wheel/./IPython/utils copying build/lib/IPython/utils/strdispatch.py -> build/bdist.linux-riscv64/wheel/./IPython/utils copying build/lib/IPython/utils/sysinfo.py -> build/bdist.linux-riscv64/wheel/./IPython/utils copying build/lib/IPython/utils/syspathcontext.py -> build/bdist.linux-riscv64/wheel/./IPython/utils copying build/lib/IPython/utils/tempdir.py -> build/bdist.linux-riscv64/wheel/./IPython/utils copying build/lib/IPython/utils/terminal.py -> build/bdist.linux-riscv64/wheel/./IPython/utils copying build/lib/IPython/utils/text.py -> build/bdist.linux-riscv64/wheel/./IPython/utils copying build/lib/IPython/utils/timing.py -> build/bdist.linux-riscv64/wheel/./IPython/utils copying build/lib/IPython/utils/tokenutil.py -> build/bdist.linux-riscv64/wheel/./IPython/utils copying build/lib/IPython/utils/wildcard.py -> build/bdist.linux-riscv64/wheel/./IPython/utils copying build/lib/IPython/utils/_sysinfo.py -> build/bdist.linux-riscv64/wheel/./IPython/utils copying build/lib/IPython/py.typed -> build/bdist.linux-riscv64/wheel/./IPython running install_data creating build/bdist.linux-riscv64/wheel/ipython-9.17.0.data/data creating build/bdist.linux-riscv64/wheel/ipython-9.17.0.data/data/share/man/man1 copying docs/man/ipython.1 -> build/bdist.linux-riscv64/wheel/ipython-9.17.0.data/data/share/man/man1 running install_egg_info running egg_info creating ipython.egg-info writing ipython.egg-info/PKG-INFO writing dependency_links to ipython.egg-info/dependency_links.txt writing entry points to ipython.egg-info/entry_points.txt writing requirements to ipython.egg-info/requires.txt writing top-level names to ipython.egg-info/top_level.txt writing manifest file 'ipython.egg-info/SOURCES.txt' reading manifest file 'ipython.egg-info/SOURCES.txt' reading manifest template 'MANIFEST.in' warning: no previously-included files matching '*' found under directory 'tools' warning: no previously-included files found matching 'tools' warning: no previously-included files found matching 'CONTRIBUTING.md' warning: no previously-included files found matching '.editorconfig' warning: no previously-included files found matching 'SECURITY.md' warning: no previously-included files found matching '.readthedocs.yaml' warning: no previously-included files found matching 'docs/#*' warning: no previously-included files found matching 'docs/man/*.1.gz' warning: no previously-included files found matching '.git-blame-ignore-revs' no previously-included directories found matching 'docs/build' no previously-included directories found matching 'docs/gh-pages' no previously-included directories found matching 'docs/dist' warning: no previously-included files matching '*~' found anywhere in distribution warning: no previously-included files matching '*.flc' found anywhere in distribution warning: no previously-included files matching '*.yml' found anywhere in distribution warning: no previously-included files matching '*.pyo' found anywhere in distribution warning: no previously-included files matching '.dircopy.log' found anywhere in distribution warning: no previously-included files matching '.git' found anywhere in distribution warning: no previously-included files matching '.ipynb_checkpoints' found anywhere in distribution adding license file 'LICENSE' adding license file 'COPYING.rst' writing manifest file 'ipython.egg-info/SOURCES.txt' Copying ipython.egg-info to build/bdist.linux-riscv64/wheel/./ipython-9.17.0-py3.14.egg-info running install_scripts creating build/bdist.linux-riscv64/wheel/ipython-9.17.0.dist-info/WHEEL creating '/build/ipython/src/ipython/dist/.tmp-us0pybhr/ipython-9.17.0-py3-none-any.whl' and adding 'build/bdist.linux-riscv64/wheel' to it adding 'IPython/__init__.py' adding 'IPython/__main__.py' adding 'IPython/display.py' adding 'IPython/paths.py' adding 'IPython/py.typed' adding 'IPython/core/__init__.py' adding 'IPython/core/_dunder_ops.py' adding 'IPython/core/alias.py' adding 'IPython/core/application.py' adding 'IPython/core/async_helpers.py' adding 'IPython/core/autocall.py' adding 'IPython/core/builtin_trap.py' adding 'IPython/core/compilerop.py' adding 'IPython/core/completer.py' adding 'IPython/core/completerlib.py' adding 'IPython/core/crashhandler.py' adding 'IPython/core/debugger.py' adding 'IPython/core/debugger_backport.py' adding 'IPython/core/display.py' adding 'IPython/core/display_functions.py' adding 'IPython/core/display_trap.py' adding 'IPython/core/displayhook.py' adding 'IPython/core/displaypub.py' adding 'IPython/core/doctb.py' adding 'IPython/core/error.py' adding 'IPython/core/events.py' adding 'IPython/core/extensions.py' adding 'IPython/core/formatters.py' adding 'IPython/core/getipython.py' adding 'IPython/core/guarded_eval.py' adding 'IPython/core/history.py' adding 'IPython/core/historyapp.py' adding 'IPython/core/hooks.py' adding 'IPython/core/inputtransformer2.py' adding 'IPython/core/interactiveshell.py' adding 'IPython/core/kitty.py' adding 'IPython/core/latex_symbols.py' adding 'IPython/core/logger.py' adding 'IPython/core/macro.py' adding 'IPython/core/magic.py' adding 'IPython/core/magic_arguments.py' adding 'IPython/core/oinspect.py' adding 'IPython/core/page.py' adding 'IPython/core/payload.py' adding 'IPython/core/payloadpage.py' adding 'IPython/core/prefilter.py' adding 'IPython/core/profileapp.py' adding 'IPython/core/profiledir.py' adding 'IPython/core/pylabtools.py' adding 'IPython/core/release.py' adding 'IPython/core/shellapp.py' adding 'IPython/core/splitinput.py' adding 'IPython/core/tbtools.py' adding 'IPython/core/tips.py' adding 'IPython/core/ultratb.py' adding 'IPython/core/usage.py' adding 'IPython/core/magics/__init__.py' adding 'IPython/core/magics/_table.py' adding 'IPython/core/magics/ast_mod.py' adding 'IPython/core/magics/auto.py' adding 'IPython/core/magics/basic.py' adding 'IPython/core/magics/code.py' adding 'IPython/core/magics/config.py' adding 'IPython/core/magics/display.py' adding 'IPython/core/magics/execution.py' adding 'IPython/core/magics/extension.py' adding 'IPython/core/magics/history.py' adding 'IPython/core/magics/logging.py' adding 'IPython/core/magics/namespace.py' adding 'IPython/core/magics/osm.py' adding 'IPython/core/magics/packaging.py' adding 'IPython/core/magics/pylab.py' adding 'IPython/core/magics/script.py' adding 'IPython/core/profile/README_STARTUP' adding 'IPython/extensions/__init__.py' adding 'IPython/extensions/autoreload.py' adding 'IPython/extensions/storemagic.py' adding 'IPython/extensions/deduperreload/__init__.py' adding 'IPython/extensions/deduperreload/deduperreload.py' adding 'IPython/extensions/deduperreload/deduperreload_patching.py' adding 'IPython/external/__init__.py' adding 'IPython/external/pickleshare.py' adding 'IPython/external/qt_for_kernel.py' adding 'IPython/external/qt_loaders.py' adding 'IPython/lib/__init__.py' adding 'IPython/lib/backgroundjobs.py' adding 'IPython/lib/clipboard.py' adding 'IPython/lib/deepreload.py' adding 'IPython/lib/demo.py' adding 'IPython/lib/display.py' adding 'IPython/lib/editorhooks.py' adding 'IPython/lib/guisupport.py' adding 'IPython/lib/latextools.py' adding 'IPython/lib/lexers.py' adding 'IPython/lib/pretty.py' adding 'IPython/sphinxext/__init__.py' adding 'IPython/sphinxext/custom_doctests.py' adding 'IPython/sphinxext/ipython_console_highlighting.py' adding 'IPython/sphinxext/ipython_directive.py' adding 'IPython/sphinxext/tests/__init__.py' adding 'IPython/sphinxext/tests/test_ansi_stripping.py' adding 'IPython/terminal/__init__.py' adding 'IPython/terminal/debugger.py' adding 'IPython/terminal/embed.py' adding 'IPython/terminal/interactiveshell.py' adding 'IPython/terminal/ipapp.py' adding 'IPython/terminal/magics.py' adding 'IPython/terminal/prompts.py' adding 'IPython/terminal/ptutils.py' adding 'IPython/terminal/pt_inputhooks/__init__.py' adding 'IPython/terminal/pt_inputhooks/asyncio.py' adding 'IPython/terminal/pt_inputhooks/glut.py' adding 'IPython/terminal/pt_inputhooks/gtk.py' adding 'IPython/terminal/pt_inputhooks/gtk3.py' adding 'IPython/terminal/pt_inputhooks/gtk4.py' adding 'IPython/terminal/pt_inputhooks/osx.py' adding 'IPython/terminal/pt_inputhooks/pyglet.py' adding 'IPython/terminal/pt_inputhooks/qt.py' adding 'IPython/terminal/pt_inputhooks/tk.py' adding 'IPython/terminal/pt_inputhooks/wx.py' adding 'IPython/terminal/shortcuts/__init__.py' adding 'IPython/terminal/shortcuts/auto_match.py' adding 'IPython/terminal/shortcuts/auto_suggest.py' adding 'IPython/terminal/shortcuts/filters.py' adding 'IPython/terminal/tests/__init__.py' adding 'IPython/terminal/tests/test_ptutils.py' adding 'IPython/testing/__init__.py' adding 'IPython/testing/decorators.py' adding 'IPython/testing/globalipapp.py' adding 'IPython/testing/ipunittest.py' adding 'IPython/testing/skipdoctest.py' adding 'IPython/testing/tools.py' adding 'IPython/testing/plugin/__init__.py' adding 'IPython/testing/plugin/dtexample.py' adding 'IPython/testing/plugin/ipdoctest.py' adding 'IPython/testing/plugin/pytest_ipdoctest.py' adding 'IPython/testing/plugin/setup.py' adding 'IPython/testing/plugin/simple.py' adding 'IPython/testing/plugin/simplevars.py' adding 'IPython/testing/plugin/test_combo.txt' adding 'IPython/testing/plugin/test_example.txt' adding 'IPython/testing/plugin/test_exampleip.txt' adding 'IPython/testing/plugin/test_ipdoctest.py' adding 'IPython/testing/plugin/test_refs.py' adding 'IPython/utils/PyColorize.py' adding 'IPython/utils/__init__.py' adding 'IPython/utils/_process_common.py' adding 'IPython/utils/_process_emscripten.py' adding 'IPython/utils/_process_posix.py' adding 'IPython/utils/_process_win32.py' adding 'IPython/utils/_sysinfo.py' adding 'IPython/utils/capture.py' adding 'IPython/utils/coloransi.py' adding 'IPython/utils/contexts.py' adding 'IPython/utils/data.py' adding 'IPython/utils/decorators.py' adding 'IPython/utils/dir2.py' adding 'IPython/utils/docs.py' adding 'IPython/utils/encoding.py' adding 'IPython/utils/frame.py' adding 'IPython/utils/generics.py' adding 'IPython/utils/importstring.py' adding 'IPython/utils/io.py' adding 'IPython/utils/ipstruct.py' adding 'IPython/utils/module_paths.py' adding 'IPython/utils/openpy.py' adding 'IPython/utils/path.py' adding 'IPython/utils/process.py' adding 'IPython/utils/sentinel.py' adding 'IPython/utils/strdispatch.py' adding 'IPython/utils/sysinfo.py' adding 'IPython/utils/syspathcontext.py' adding 'IPython/utils/tempdir.py' adding 'IPython/utils/terminal.py' adding 'IPython/utils/text.py' adding 'IPython/utils/timing.py' adding 'IPython/utils/tokenutil.py' adding 'IPython/utils/wildcard.py' adding 'ipython-9.17.0.data/data/share/man/man1/ipython.1' adding 'ipython-9.17.0.dist-info/licenses/COPYING.rst' adding 'ipython-9.17.0.dist-info/licenses/LICENSE' adding 'ipython-9.17.0.dist-info/METADATA' adding 'ipython-9.17.0.dist-info/WHEEL' adding 'ipython-9.17.0.dist-info/entry_points.txt' adding 'ipython-9.17.0.dist-info/top_level.txt' adding 'ipython-9.17.0.dist-info/RECORD' removing build/bdist.linux-riscv64/wheel Successfully built ipython-9.17.0-py3-none-any.whl ==> Starting check()... ============================= test session starts ============================== platform linux -- Python 3.14.7, pytest-9.0.3, pluggy-1.6.0 -- /build/ipython/src/ipython/test-env/bin/python cachedir: .pytest_cache rootdir: /build/ipython/src/ipython configfile: pyproject.toml plugins: asyncio-1.4.0 asyncio: mode=Mode.STRICT, debug=False, asyncio_default_fixture_loop_scope=None, asyncio_default_test_loop_scope=function collecting ... collected 2945 items / 2 skipped IPython/core/completer.py::IPython.core.completer SKIPPED (all docst...) [ 0%] IPython/core/completer.py::IPython.core.completer.provisionalcompleter SKIPPED [ 0%] IPython/core/debugger.py::IPython.core.debugger SKIPPED (all docstes...) [ 0%] IPython/core/display.py::IPython.core.display.GeoJSON.__init__ PASSED [ 0%] IPython/core/display.py::IPython.core.display.Image.__init__ PASSED [ 0%] IPython/core/display_functions.py::IPython.core.display_functions.display PASSED [ 0%] IPython/core/formatters.py::IPython.core.formatters PASSED [ 0%] IPython/core/history.py::IPython.core.history.extract_hist_ranges PASSED [ 0%] IPython/core/interactiveshell.py::IPython.core.interactiveshell.InteractiveShell.clear_main_mod_cache PASSED [ 0%] IPython/core/interactiveshell.py::IPython.core.interactiveshell.InteractiveShell.complete SKIPPED [ 0%] IPython/core/interactiveshell.py::IPython.core.interactiveshell.InteractiveShell.get_path_links PASSED [ 0%] IPython/core/interactiveshell.py::IPython.core.interactiveshell.InteractiveShell.set_next_input SKIPPED [ 0%] IPython/core/magics/ast_mod.py::IPython.core.magics.ast_mod SKIPPED [ 0%] IPython/core/magics/auto.py::IPython.core.magics.auto.AutoMagics.autocall SKIPPED [ 0%] IPython/core/magics/basic.py::IPython.core.magics.basic.BasicMagics.alias_magic SKIPPED [ 0%] IPython/core/magics/basic.py::IPython.core.magics.basic.BasicMagics.precision SKIPPED [ 0%] IPython/core/magics/code.py::IPython.core.magics.code.CodeMagics.edit SKIPPED [ 0%] IPython/core/magics/code.py::IPython.core.magics.code.extract_symbols PASSED [ 0%] IPython/core/magics/config.py::IPython.core.magics.config.ConfigMagics.config PASSED [ 0%] IPython/core/magics/execution.py::IPython.core.magics.execution.ExecutionMagics.code_wrap SKIPPED [ 0%] IPython/core/magics/execution.py::IPython.core.magics.execution.ExecutionMagics.macro SKIPPED [ 0%] IPython/core/magics/execution.py::IPython.core.magics.execution.ExecutionMagics.prun SKIPPED [ 0%] IPython/core/magics/execution.py::IPython.core.magics.execution.ExecutionMagics.run SKIPPED [ 0%] IPython/core/magics/execution.py::IPython.core.magics.execution.ExecutionMagics.time SKIPPED [ 0%] IPython/core/magics/execution.py::IPython.core.magics.execution.ExecutionMagics.timeit SKIPPED [ 0%] IPython/core/magics/history.py::IPython.core.magics.history.HistoryMagics.history SKIPPED [ 0%] IPython/core/magics/namespace.py::IPython.core.magics.namespace.NamespaceMagics.pdef SKIPPED [ 0%] IPython/core/magics/namespace.py::IPython.core.magics.namespace.NamespaceMagics.reset PASSED [ 0%] IPython/core/magics/namespace.py::IPython.core.magics.namespace.NamespaceMagics.reset_selective PASSED [ 0%] IPython/core/magics/namespace.py::IPython.core.magics.namespace.NamespaceMagics.who SKIPPED [ 1%] IPython/core/magics/namespace.py::IPython.core.magics.namespace.NamespaceMagics.who_ls SKIPPED [ 1%] IPython/core/magics/namespace.py::IPython.core.magics.namespace.NamespaceMagics.whos SKIPPED [ 1%] IPython/core/magics/osm.py::IPython.core.magics.osm.OSMagics.alias SKIPPED [ 1%] IPython/core/magics/osm.py::IPython.core.magics.osm.OSMagics.cd SKIPPED [ 1%] IPython/core/magics/osm.py::IPython.core.magics.osm.OSMagics.pwd SKIPPED [ 1%] IPython/core/magics/osm.py::IPython.core.magics.osm.OSMagics.sc SKIPPED [ 1%] IPython/core/magics/pylab.py::IPython.core.magics.pylab.PylabMagics.matplotlib SKIPPED [ 1%] IPython/core/magics/script.py::IPython.core.magics.script.ScriptMagics.shebang PASSED [ 1%] IPython/core/oinspect.py::IPython.core.oinspect.Inspector.pdoc SKIPPED [ 1%] IPython/extensions/autoreload.py::IPython.extensions.autoreload SKIPPED [ 1%] IPython/extensions/storemagic.py::IPython.extensions.storemagic.StoreMagics.store SKIPPED [ 1%] IPython/extensions/tests/test_deduperreload.py::test_compare_ast PASSED [ 1%] IPython/extensions/tests/test_deduperreload.py::test_compare_ast2 PASSED [ 1%] IPython/extensions/tests/test_deduperreload.py::test_autoreload_no_changes PASSED [ 1%] IPython/extensions/tests/test_deduperreload.py::test_autoreload_static_assign_change_outside_function PASSED [ 1%] IPython/extensions/tests/test_deduperreload.py::test_autoreload_changes_inside_function PASSED [ 1%] IPython/extensions/tests/test_deduperreload.py::test_autoreload_changes_inside_and_outside_function PASSED [ 1%] IPython/extensions/tests/test_deduperreload.py::test_autoreload_changes_inner_function PASSED [ 1%] IPython/extensions/tests/test_deduperreload.py::test_autoreload_changes_multiple_function PASSED [ 1%] IPython/extensions/tests/test_deduperreload.py::test_autoreload_change_one_function_of_multiple PASSED [ 1%] IPython/extensions/tests/test_deduperreload.py::test_autoreload_handling_moves PASSED [ 1%] IPython/extensions/tests/test_deduperreload.py::test_autoreload_handling_function_moves_success PASSED [ 1%] IPython/extensions/tests/test_deduperreload.py::test_autoreload_handling_function_moves_only PASSED [ 1%] IPython/extensions/tests/test_deduperreload.py::test_autoreload_handles_new_imports PASSED [ 1%] IPython/extensions/tests/test_deduperreload.py::test_autoreload_async_function PASSED [ 1%] IPython/extensions/tests/test_deduperreload.py::test_autoreload_add_function PASSED [ 1%] IPython/extensions/tests/test_deduperreload.py::test_autoreload_add_function_ellipsis PASSED [ 1%] IPython/extensions/tests/test_deduperreload.py::test_patching PASSED [ 1%] IPython/extensions/tests/test_deduperreload.py::test_patching_parameters PASSED [ 2%] IPython/extensions/tests/test_deduperreload.py::test_add_function PASSED [ 2%] IPython/extensions/tests/test_deduperreload.py::test_two_operations PASSED [ 2%] IPython/extensions/tests/test_deduperreload.py::test_using_outside_param PASSED [ 2%] IPython/extensions/tests/test_deduperreload.py::test_importing_func PASSED [ 2%] IPython/extensions/tests/test_deduperreload.py::test_deduperreloader_basic[before_import] PASSED [ 2%] IPython/extensions/tests/test_deduperreload.py::test_deduperreloader_basic[after_import] PASSED [ 2%] IPython/extensions/tests/test_deduperreload.py::test_deduperreloader_basic[after_first_pass] PASSED [ 2%] IPython/extensions/tests/test_deduperreload.py::test_super PASSED [ 2%] IPython/extensions/tests/test_deduperreload.py::test_deduperreloader_need_to_default_back PASSED [ 2%] IPython/extensions/tests/test_deduperreload.py::test_deduperreloader_failure PASSED [ 2%] IPython/extensions/tests/test_deduperreload.py::test_deduperreloader_imported_mod PASSED [ 2%] IPython/extensions/tests/test_deduperreload.py::test_autoreload_method PASSED [ 2%] IPython/extensions/tests/test_deduperreload.py::test_autoreload_no_changes_class PASSED [ 2%] IPython/extensions/tests/test_deduperreload.py::test_autoreload_add_function_class PASSED [ 2%] IPython/extensions/tests/test_deduperreload.py::test_autoreload_remove_method PASSED [ 2%] IPython/extensions/tests/test_deduperreload.py::test_autoreload_remove_class PASSED [ 2%] IPython/extensions/tests/test_deduperreload.py::test_autoreload_add_class_in_class PASSED [ 2%] IPython/extensions/tests/test_deduperreload.py::test_autoreload_add_method_in_class_in_class PASSED [ 2%] IPython/extensions/tests/test_deduperreload.py::test_autoreload_add_var_and_method_in_class_in_class PASSED [ 2%] IPython/extensions/tests/test_deduperreload.py::test_autoreload_add_method_in_class_in_class_pass PASSED [ 2%] IPython/extensions/tests/test_deduperreload.py::test_autoreload_add_method_in_class_in_class_more PASSED [ 2%] IPython/extensions/tests/test_deduperreload.py::test_autoreload_add_method_in_class_in_class_with_members PASSED [ 2%] IPython/extensions/tests/test_deduperreload.py::test_autoreload_class_basic PASSED [ 2%] IPython/extensions/tests/test_deduperreload.py::test_remove_overridden_method PASSED [ 2%] IPython/extensions/tests/test_deduperreload.py::test_autoreload_class_use_outside_func PASSED [ 2%] IPython/extensions/tests/test_deduperreload.py::test_autoreload_class_use_class_member PASSED [ 2%] IPython/extensions/tests/test_deduperreload.py::test_autoreload_class_pass PASSED [ 2%] IPython/extensions/tests/test_deduperreload.py::test_autoreload_class_ellipsis PASSED [ 2%] IPython/extensions/tests/test_deduperreload.py::test_autoreload_class_default_autoreload PASSED [ 2%] IPython/extensions/tests/test_deduperreload.py::test_autoreload_class_nested PASSED [ 3%] IPython/extensions/tests/test_deduperreload.py::test_autoreload_class_nested2 PASSED [ 3%] IPython/extensions/tests/test_deduperreload.py::test_autoreload_class_nested3 PASSED [ 3%] IPython/extensions/tests/test_deduperreload.py::test_autoreload_new_class_added PASSED [ 3%] IPython/extensions/tests/test_deduperreload.py::test_autoreload_class_nested_default PASSED [ 3%] IPython/extensions/tests/test_deduperreload.py::test_autoreload_class_nested_using_members PASSED [ 3%] IPython/extensions/tests/test_deduperreload.py::test_autoreload_class_nested_using_members_ellipsis PASSED [ 3%] IPython/extensions/tests/test_deduperreload.py::test_method_decorators_no_changes PASSED [ 3%] IPython/extensions/tests/test_deduperreload.py::test_method_decorators_no_changes1 PASSED [ 3%] IPython/extensions/tests/test_deduperreload.py::test_method_classmethod_one_change PASSED [ 3%] IPython/extensions/tests/test_deduperreload.py::test_method_staticmethod_one_change PASSED [ 3%] IPython/extensions/tests/test_deduperreload.py::test_autoreload_class_default_args PASSED [ 3%] IPython/extensions/tests/test_deduperreload.py::test_autoreload_class_change_default_args PASSED [ 3%] IPython/extensions/tests/test_deduperreload.py::test_autoreload_class_new_class PASSED [ 3%] IPython/extensions/tests/test_deduperreload.py::test_autoreload_overloaded_vars PASSED [ 3%] IPython/extensions/tests/test_deduperreload.py::test_autoreload_overloaded_vars2 PASSED [ 3%] IPython/extensions/tests/test_deduperreload.py::test_modify_property PASSED [ 3%] IPython/extensions/tests/test_deduperreload.py::test_method_decorator PASSED [ 3%] IPython/extensions/tests/test_deduperreload.py::test_method_modified_decorator PASSED [ 3%] IPython/extensions/tests/test_deduperreload.py::test_function_decorators PASSED [ 3%] IPython/extensions/tests/test_deduperreload.py::test_method_decorators_again PASSED [ 3%] IPython/extensions/tests/test_deduperreload.py::test_function_decorator_from_other_module PASSED [ 3%] IPython/extensions/tests/test_deduperreload.py::test_decorators_with_freevars PASSED [ 3%] IPython/extensions/tests/test_deduperreload.py::test_reload_enums PASSED [ 3%] IPython/lib/display.py::IPython.lib.display.Audio PASSED [ 3%] IPython/terminal/magics.py::IPython.terminal.magics.TerminalMagics.cpaste SKIPPED [ 3%] IPython/terminal/shortcuts/auto_suggest.py::IPython.terminal.shortcuts.auto_suggest.AppendAutoSuggestionInAnyLine PASSED [ 3%] IPython/terminal/tests/test_ptutils.py::test_elide_point_disabled_for_nonpositive_min_elide[0] PASSED [ 3%] IPython/terminal/tests/test_ptutils.py::test_elide_point_disabled_for_nonpositive_min_elide[-1] PASSED [ 3%] IPython/terminal/tests/test_ptutils.py::test_elide_point_disabled_for_nonpositive_min_elide[-10] PASSED [ 4%] IPython/terminal/tests/test_ptutils.py::test_elide_point_short_strings_unchanged[short.path] PASSED [ 4%] IPython/terminal/tests/test_ptutils.py::test_elide_point_short_strings_unchanged[a.b.c] PASSED [ 4%] IPython/terminal/tests/test_ptutils.py::test_elide_point_short_strings_unchanged[tiny] PASSED [ 4%] IPython/terminal/tests/test_ptutils.py::test_elide_point_long_dotted_path_is_elided[module.submodule.component.function] PASSED [ 4%] IPython/terminal/tests/test_ptutils.py::test_elide_point_long_dotted_path_is_elided[IPython.core.interactiveshell.InteractiveShell] PASSED [ 4%] IPython/terminal/tests/test_ptutils.py::test_elide_point_long_file_path_is_elided PASSED [ 4%] IPython/terminal/tests/test_ptutils.py::test_elide_typed_disabled_for_nonpositive_min_elide[0] PASSED [ 4%] IPython/terminal/tests/test_ptutils.py::test_elide_typed_disabled_for_nonpositive_min_elide[-1] PASSED [ 4%] IPython/terminal/tests/test_ptutils.py::test_elide_typed_disabled_for_nonpositive_min_elide[-10] PASSED [ 4%] IPython/terminal/tests/test_ptutils.py::test_elide_typed_short_strings_unchanged[short-sh] PASSED [ 4%] IPython/terminal/tests/test_ptutils.py::test_elide_typed_short_strings_unchanged[abc-a] PASSED [ 4%] IPython/terminal/tests/test_ptutils.py::test_elide_typed_long_string_not_starting_with_typed_unchanged PASSED [ 4%] IPython/terminal/tests/test_ptutils.py::test_elide_typed_typed_too_short_unchanged PASSED [ 4%] IPython/terminal/tests/test_ptutils.py::test_elide_typed_long_string_is_elided PASSED [ 4%] IPython/testing/plugin/dtexample.py::IPython.testing.plugin.dtexample.ipfunc PASSED [ 4%] IPython/testing/plugin/dtexample.py::IPython.testing.plugin.dtexample.ipos PASSED [ 4%] IPython/testing/plugin/dtexample.py::IPython.testing.plugin.dtexample.iprand PASSED [ 4%] IPython/testing/plugin/dtexample.py::IPython.testing.plugin.dtexample.iprand_all PASSED [ 4%] IPython/testing/plugin/dtexample.py::IPython.testing.plugin.dtexample.pyfunc PASSED [ 4%] IPython/testing/plugin/dtexample.py::IPython.testing.plugin.dtexample.random_all PASSED [ 4%] IPython/testing/plugin/dtexample.py::IPython.testing.plugin.dtexample.ranfunc PASSED [ 4%] IPython/testing/plugin/simple.py::IPython.testing.plugin.simple.ipyfunc PASSED [ 4%] IPython/testing/plugin/simple.py::IPython.testing.plugin.simple.pyfunc PASSED [ 4%] IPython/testing/plugin/test_combo.txt::test_combo.txt PASSED [ 4%] IPython/testing/plugin/test_example.txt::test_example.txt PASSED [ 4%] IPython/testing/plugin/test_example.txt::test_example.txt PASSED [ 4%] IPython/testing/plugin/test_exampleip.txt::test_exampleip.txt PASSED [ 4%] IPython/testing/plugin/test_ipdoctest.py::IPython.testing.plugin.test_ipdoctest.doctest_builtin_underscore PASSED [ 4%] IPython/testing/plugin/test_ipdoctest.py::IPython.testing.plugin.test_ipdoctest.doctest_multiline1 PASSED [ 4%] IPython/testing/plugin/test_ipdoctest.py::IPython.testing.plugin.test_ipdoctest.doctest_multiline2 PASSED [ 4%] IPython/testing/plugin/test_ipdoctest.py::IPython.testing.plugin.test_ipdoctest.doctest_multiline3 PASSED [ 5%] IPython/testing/plugin/test_ipdoctest.py::IPython.testing.plugin.test_ipdoctest.doctest_simple PASSED [ 5%] IPython/testing/plugin/test_refs.py::IPython.testing.plugin.test_refs.doctest_ivars PASSED [ 5%] IPython/testing/plugin/test_refs.py::IPython.testing.plugin.test_refs.doctest_run PASSED [ 5%] IPython/testing/plugin/test_refs.py::IPython.testing.plugin.test_refs.doctest_runvars PASSED [ 5%] IPython/testing/plugin/test_refs.py::test_trivial PASSED [ 5%] IPython/testing/tools.py::IPython.testing.tools.AssertPrints PASSED [ 5%] IPython/testing/tools.py::IPython.testing.tools.full_path PASSED [ 5%] IPython/utils/contexts.py::IPython.utils.contexts.preserve_keys PASSED [ 5%] IPython/utils/ipstruct.py::IPython.utils.ipstruct.Struct.__add__ PASSED [ 5%] IPython/utils/ipstruct.py::IPython.utils.ipstruct.Struct.__getattr__ PASSED [ 5%] IPython/utils/ipstruct.py::IPython.utils.ipstruct.Struct.__iadd__ PASSED [ 5%] IPython/utils/ipstruct.py::IPython.utils.ipstruct.Struct.__init__ PASSED [ 5%] IPython/utils/ipstruct.py::IPython.utils.ipstruct.Struct.__isub__ PASSED [ 5%] IPython/utils/ipstruct.py::IPython.utils.ipstruct.Struct.__setattr__ PASSED [ 5%] IPython/utils/ipstruct.py::IPython.utils.ipstruct.Struct.__setitem__ PASSED [ 5%] IPython/utils/ipstruct.py::IPython.utils.ipstruct.Struct.__sub__ PASSED [ 5%] IPython/utils/ipstruct.py::IPython.utils.ipstruct.Struct.copy PASSED [ 5%] IPython/utils/ipstruct.py::IPython.utils.ipstruct.Struct.hasattr PASSED [ 5%] IPython/utils/ipstruct.py::IPython.utils.ipstruct.Struct.merge PASSED [ 5%] IPython/utils/path.py::IPython.utils.path.expand_path PASSED [ 5%] IPython/utils/strdispatch.py::IPython.utils.strdispatch.StrDispatch PASSED [ 5%] IPython/utils/sysinfo.py::IPython.utils.sysinfo.sys_info PASSED [ 5%] IPython/utils/text.py::IPython.utils.text.DollarFormatter PASSED [ 5%] IPython/utils/text.py::IPython.utils.text.EvalFormatter PASSED [ 5%] IPython/utils/text.py::IPython.utils.text.FullEvalFormatter PASSED [ 5%] IPython/utils/text.py::IPython.utils.text.get_text_list PASSED [ 5%] IPython/utils/text.py::IPython.utils.text.list_strings PASSED [ 5%] IPython/utils/text.py::IPython.utils.text.marquee PASSED [ 5%] IPython/utils/text.py::IPython.utils.text.strip_email_quotes PASSED [ 6%] tests/test_alias.py::test_alias_lifecycle PASSED [ 6%] tests/test_alias.py::test_alias_args_error PASSED [ 6%] tests/test_alias.py::test_alias_args_commented PASSED [ 6%] tests/test_alias.py::test_alias_args_commented_nargs PASSED [ 6%] tests/test_application.py::test_logging_level_constants PASSED [ 6%] tests/test_application.py::test_unicode_cwd PASSED [ 6%] tests/test_application.py::test_unicode_ipdir PASSED [ 6%] tests/test_application.py::test_cli_priority PASSED [ 6%] tests/test_application.py::test_extra_config_file PASSED [ 6%] tests/test_application.py::test_extra_config_file_missing PASSED [ 6%] tests/test_application.py::test_bad_config_file PASSED [ 6%] tests/test_application.py::test_config_file_name_changed PASSED [ 6%] tests/test_application.py::test_profile_dir_autocreate_by_name PASSED [ 6%] tests/test_application.py::test_profile_not_found_by_name PASSED [ 6%] tests/test_application.py::test_profile_dir_lazy_default PASSED [ 6%] tests/test_application.py::test_profile_create_by_name_fails PASSED [ 6%] tests/test_application.py::test_profile_create_by_location_fails PASSED [ 6%] tests/test_application.py::test_copy_config_files_from_builtin PASSED [ 6%] tests/test_application.py::test_stage_bundled_config_files PASSED [ 6%] tests/test_application.py::test_profile_dir_autocreate_by_location PASSED [ 6%] tests/test_application.py::test_profile_dir_location_not_found PASSED [ 6%] tests/test_application.py::test_add_ipython_dir_to_sys_path PASSED [ 6%] tests/test_application.py::test_excepthook_lite PASSED [ 6%] tests/test_application.py::test_excepthook_verbose_crash PASSED [ 6%] tests/test_application.py::test_load_subconfig_profile_aware PASSED [ 6%] tests/test_application.py::test_initialize_stops_at_subapp PASSED [ 6%] tests/test_application.py::test_cwd_disappeared PASSED [ 6%] tests/test_async_helpers.py::test_should_be_async PASSED [ 6%] tests/test_async_helpers.py::test_top_level_return_error PASSED [ 6%] tests/test_async_helpers.py::test_in_func_no_error PASSED [ 7%] tests/test_async_helpers.py::test_nonlocal PASSED [ 7%] tests/test_async_helpers.py::test_execute PASSED [ 7%] tests/test_async_helpers.py::test_autoawait PASSED [ 7%] tests/test_async_helpers.py::test_memory_error PASSED [ 7%] tests/test_async_helpers.py::test_autoawait_curio SKIPPED (skip_with...) [ 7%] tests/test_async_helpers.py::test_autoawait_trio PASSED [ 7%] tests/test_async_helpers.py::test_autoawait_trio_wrong_sleep PASSED [ 7%] tests/test_async_helpers.py::test_autoawait_asyncio_wrong_sleep PASSED [ 7%] tests/test_autocall.py::tests.test_autocall.doctest_autocall PASSED [ 7%] tests/test_autocall.py::test_autocall_should_ignore_raw_strings PASSED [ 7%] tests/test_autocall.py::test_automagic_on_off_explicit PASSED [ 7%] tests/test_autocall.py::test_automagic_case_insensitive PASSED [ 7%] tests/test_autocall.py::test_automagic_toggle PASSED [ 7%] tests/test_autocall.py::test_autocall_set_modes PASSED [ 7%] tests/test_autocall.py::test_autocall_invalid_mode PASSED [ 7%] tests/test_autocall.py::test_autocall_toggle_remembers_previous_mode PASSED [ 7%] tests/test_autocall.py::test_autocall_toggle_without_saved_state PASSED [ 7%] tests/test_backgroundjobs.py::test_result PASSED [ 7%] tests/test_backgroundjobs.py::test_flush PASSED [ 7%] tests/test_backgroundjobs.py::test_dead PASSED [ 7%] tests/test_backgroundjobs.py::test_longer PASSED [ 7%] tests/test_backgroundjobs.py::test_expression_job PASSED [ 7%] tests/test_backgroundjobs.py::test_expression_job_caller_namespace PASSED [ 7%] tests/test_backgroundjobs.py::test_expression_job_too_many_args PASSED [ 7%] tests/test_backgroundjobs.py::test_new_invalid_type PASSED [ 7%] tests/test_backgroundjobs.py::test_base_job_not_instantiable PASSED [ 7%] tests/test_backgroundjobs.py::test_func_job_requires_callable PASSED [ 7%] tests/test_backgroundjobs.py::test_daemon_flag PASSED [ 7%] tests/test_backgroundjobs.py::test_getitem PASSED [ 8%] tests/test_backgroundjobs.py::test_str_and_repr PASSED [ 8%] tests/test_backgroundjobs.py::test_status_call PASSED [ 8%] tests/test_backgroundjobs.py::test_status_new PASSED [ 8%] tests/test_backgroundjobs.py::test_remove PASSED [ 8%] tests/test_backgroundjobs.py::test_remove_running_and_missing PASSED [ 8%] tests/test_backgroundjobs.py::test_flush_empty PASSED [ 8%] tests/test_backgroundjobs.py::test_result_method PASSED [ 8%] tests/test_backgroundjobs.py::test_traceback PASSED [ 8%] tests/test_backgroundjobs.py::test_dead_job_attributes PASSED [ 8%] tests/test_backgroundjobs.py::test_traceback_without_ipython PASSED [ 8%] tests/test_capture.py::test_rich_output_empty[method_mime0] PASSED [ 8%] tests/test_capture.py::test_rich_output_empty[method_mime1] PASSED [ 8%] tests/test_capture.py::test_rich_output_empty[method_mime2] PASSED [ 8%] tests/test_capture.py::test_rich_output_empty[method_mime3] PASSED [ 8%] tests/test_capture.py::test_rich_output_empty[method_mime4] PASSED [ 8%] tests/test_capture.py::test_rich_output_empty[method_mime5] PASSED [ 8%] tests/test_capture.py::test_rich_output PASSED [ 8%] tests/test_capture.py::test_rich_output_no_metadata[method_mime0] PASSED [ 8%] tests/test_capture.py::test_rich_output_no_metadata[method_mime1] PASSED [ 8%] tests/test_capture.py::test_rich_output_no_metadata[method_mime2] PASSED [ 8%] tests/test_capture.py::test_rich_output_no_metadata[method_mime3] PASSED [ 8%] tests/test_capture.py::test_rich_output_no_metadata[method_mime4] PASSED [ 8%] tests/test_capture.py::test_rich_output_no_metadata[method_mime5] PASSED [ 8%] tests/test_capture.py::test_rich_output_metadata[method_mime0] PASSED [ 8%] tests/test_capture.py::test_rich_output_metadata[method_mime1] PASSED [ 8%] tests/test_capture.py::test_rich_output_metadata[method_mime2] PASSED [ 8%] tests/test_capture.py::test_rich_output_metadata[method_mime3] PASSED [ 8%] tests/test_capture.py::test_rich_output_metadata[method_mime4] PASSED [ 8%] tests/test_capture.py::test_rich_output_metadata[method_mime5] PASSED [ 8%] tests/test_capture.py::test_rich_output_display PASSED [ 9%] tests/test_capture.py::test_capture_output PASSED [ 9%] tests/test_capture.py::test_capture_output_no_stdout PASSED [ 9%] tests/test_capture.py::test_capture_output_no_stderr PASSED [ 9%] tests/test_capture.py::test_capture_output_no_display PASSED [ 9%] tests/test_capture.py::test_captured_io_none_streams PASSED [ 9%] tests/test_clipboard.py::test_clipboard_get SKIPPED (Skipped under *...) [ 9%] tests/test_clipboard.py::test_osx_clipboard_get PASSED [ 9%] tests/test_clipboard.py::test_wayland_clipboard_get PASSED [ 9%] tests/test_clipboard.py::test_wayland_clipboard_not_wayland PASSED [ 9%] tests/test_clipboard.py::test_wayland_clipboard_no_wl_paste PASSED [ 9%] tests/test_clipboard.py::test_wayland_clipboard_command_failure PASSED [ 9%] tests/test_clipboard.py::test_wayland_clipboard_empty PASSED [ 9%] tests/test_clipboard.py::test_win32_clipboard_get_unicode PASSED [ 9%] tests/test_clipboard.py::test_win32_clipboard_get_fallback_to_cf_text PASSED [ 9%] tests/test_clipboard.py::test_win32_clipboard_get_empty PASSED [ 9%] tests/test_clipboard.py::test_win32_clipboard_get_no_pywin32 PASSED [ 9%] tests/test_clipboard.py::test_tkinter_clipboard_get PASSED [ 9%] tests/test_clipboard.py::test_tkinter_clipboard_get_empty PASSED [ 9%] tests/test_clipboard.py::test_tkinter_clipboard_get_no_tkinter PASSED [ 9%] tests/test_compilerop.py::test_code_name_cell_number[0- str:\n return 1\nmy_instance = NotYetDefined()\nmy_insta-my_instance-True-minimal] PASSED [ 13%] tests/test_completer.py::test_undefined_variables[class NotYetDefined:\n def my_method(self) -> str:\n return 1\nmy_instance = NotYetDefined()\nmy_insta-my_instance-False-limited] PASSED [ 13%] tests/test_completer.py::test_undefined_variables[class NotYetDefined:\n def my_method(self) -> str:\n return 1\ninstance = NotYetDefined()\ninstance.-my_method-True-minimal] PASSED [ 13%] tests/test_completer.py::test_undefined_variables[class NotYetDefined:\n def my_method(self) -> str:\n return 1\ninstance = NotYetDefined()\ninstance.-my_method-False-limited] PASSED [ 13%] tests/test_completer.py::test_undefined_variables[class NotYetDefined:\n def my_method(self) -> str:\n return 1\nmy_instance = NotYetDefined()\nmy_instance.my_method().-capitalize-True-minimal] PASSED [ 13%] tests/test_completer.py::test_undefined_variables[class NotYetDefined:\n def my_method(self) -> str:\n return 1\nmy_instance = NotYetDefined()\nmy_instance.my_method().-capitalize-False-limited] PASSED [ 13%] tests/test_completer.py::test_undefined_variables[class NotYetDefined:\n def my_method(self):\n return []\nmy_instance = NotYetDefined()\nmy_instance.my_method().-append-True-minimal] PASSED [ 14%] tests/test_completer.py::test_undefined_variables[class NotYetDefined:\n def my_method(self):\n return []\nmy_instance = NotYetDefined()\nmy_instance.my_method().-append-False-limited] PASSED [ 14%] tests/test_completer.py::test_undefined_variables[class NotYetDefined:\n @property\n def my_property(self):\n return 1.1\nmy_instance = NotYetDefined()\nmy_instance.my_property.-as_integer_ratio-True-minimal] PASSED [ 14%] tests/test_completer.py::test_undefined_variables[class NotYetDefined:\n @property\n def my_property(self):\n return 1.1\nmy_instance = NotYetDefined()\nmy_instance.my_property.-as_integer_ratio-False-limited] PASSED [ 14%] tests/test_completer.py::test_undefined_variables[my_instance = 1.1\nassert my_instance.-as_integer_ratio-True-minimal] PASSED [ 14%] tests/test_completer.py::test_undefined_variables[my_instance = 1.1\nassert my_instance.-as_integer_ratio-False-limited] PASSED [ 14%] tests/test_completer.py::test_undefined_variables[def my_test() -> float:\n pass\nmy_test().-as_integer_ratio-True-minimal] PASSED [ 14%] tests/test_completer.py::test_undefined_variables[def my_test() -> float:\n pass\nmy_test().-as_integer_ratio-False-limited] PASSED [ 14%] tests/test_completer.py::test_undefined_variables[def my_test():\n return {}\nmy_test().-keys-True-minimal] PASSED [ 14%] tests/test_completer.py::test_undefined_variables[def my_test():\n return {}\nmy_test().-keys-False-limited] PASSED [ 14%] tests/test_completer.py::test_undefined_variables[l = []\ndef my_test():\n return l\nmy_test().-append-True-minimal] PASSED [ 14%] tests/test_completer.py::test_undefined_variables[l = []\ndef my_test():\n return l\nmy_test().-append-False-limited] PASSED [ 14%] tests/test_completer.py::test_undefined_variables[num = {1: 'one'}\nnum[2] = 'two'\nnum.-keys-True-minimal] PASSED [ 14%] tests/test_completer.py::test_undefined_variables[num = {1: 'one'}\nnum[2] = 'two'\nnum.-keys-False-limited] PASSED [ 14%] tests/test_completer.py::test_undefined_variables[num = {1: 'one'}\nnum[2] = ['two']\nnum[2].-append-True-minimal] PASSED [ 14%] tests/test_completer.py::test_undefined_variables[num = {1: 'one'}\nnum[2] = ['two']\nnum[2].-append-False-limited] PASSED [ 14%] tests/test_completer.py::test_undefined_variables[l = []\nclass NotYetDefined:\n def my_method(self):\n return l\nmy_instance = NotYetDefined()\nmy_instance.my_method().-append-True-minimal] PASSED [ 14%] tests/test_completer.py::test_undefined_variables[l = []\nclass NotYetDefined:\n def my_method(self):\n return l\nmy_instance = NotYetDefined()\nmy_instance.my_method().-append-False-limited] PASSED [ 14%] tests/test_completer.py::test_undefined_variables[def string_or_int(flag):\n if flag:\n return 'test'\n return 1\nstring_or_int().-insert_text12-True-minimal] PASSED [ 14%] tests/test_completer.py::test_undefined_variables[def string_or_int(flag):\n if flag:\n return 'test'\n return 1\nstring_or_int().-insert_text12-False-limited] PASSED [ 14%] tests/test_completer.py::test_undefined_variables[def foo():\n l = []\n return l\nfoo().-append-True-minimal] PASSED [ 14%] tests/test_completer.py::test_undefined_variables[def foo():\n l = []\n return l\nfoo().-append-False-limited] PASSED [ 14%] tests/test_completer.py::test_undefined_variables[class NotYetDefined:\n def __init__(self):\n self.test = []\ninstance = NotYetDefined()\ninstance.-test-True-minimal] PASSED [ 14%] tests/test_completer.py::test_undefined_variables[class NotYetDefined:\n def __init__(self):\n self.test = []\ninstance = NotYetDefined()\ninstance.-test-False-limited] PASSED [ 14%] tests/test_completer.py::test_undefined_variables[class NotYetDefined:\n def __init__(instance):\n instance.test = []\ninstance = NotYetDefined()\ninstance.test.-append-True-minimal] PASSED [ 14%] tests/test_completer.py::test_undefined_variables[class NotYetDefined:\n def __init__(instance):\n instance.test = []\ninstance = NotYetDefined()\ninstance.test.-append-False-limited] PASSED [ 14%] tests/test_completer.py::test_undefined_variables[class NotYetDefined:\n def __init__(this):\n this.test:str = []\ninstance = NotYetDefined()\ninstance.test.-capitalize-True-minimal] PASSED [ 14%] tests/test_completer.py::test_undefined_variables[class NotYetDefined:\n def __init__(this):\n this.test:str = []\ninstance = NotYetDefined()\ninstance.test.-capitalize-False-limited] PASSED [ 14%] tests/test_completer.py::test_undefined_variables[l = []\nclass NotYetDefined:\n def __init__(me):\n me.test = l\ninstance = NotYetDefined()\ninstance.test.-append-True-minimal] PASSED [ 14%] tests/test_completer.py::test_undefined_variables[l = []\nclass NotYetDefined:\n def __init__(me):\n me.test = l\ninstance = NotYetDefined()\ninstance.test.-append-False-limited] PASSED [ 15%] tests/test_completer.py::test_undefined_variables[class NotYetDefined:\n def test(self):\n self.l = []\n return self.l\ninstance = NotYetDefined()\ninstance.test().-append-True-minimal] PASSED [ 15%] tests/test_completer.py::test_undefined_variables[class NotYetDefined:\n def test(self):\n self.l = []\n return self.l\ninstance = NotYetDefined()\ninstance.test().-append-False-limited] PASSED [ 15%] tests/test_completer.py::test_undefined_variables[class NotYetDefined:\n def test():\n return []\ninstance = NotYetDefined()\ninstance.test().-append-True-minimal] PASSED [ 15%] tests/test_completer.py::test_undefined_variables[class NotYetDefined:\n def test():\n return []\ninstance = NotYetDefined()\ninstance.test().-append-False-limited] PASSED [ 15%] tests/test_completer.py::test_undefined_variables[def foo():\n if some_condition:\n return {'top':{'mid':{'leaf': 2}}}\n return {'top': {'mid':[]}}\nfoo()['top']['mid'].-insert_text20-True-minimal] PASSED [ 15%] tests/test_completer.py::test_undefined_variables[def foo():\n if some_condition:\n return {'top':{'mid':{'leaf': 2}}}\n return {'top': {'mid':[]}}\nfoo()['top']['mid'].-insert_text20-False-limited] PASSED [ 15%] tests/test_completer.py::test_undefined_variables[def foo():\n if some_condition:\n return {'top':{'mid':{'leaf': 2}}}\n return {'top': {'mid':[]}}\nfoo()['top']['mid']['leaf'].-as_integer_ratio-True-minimal] PASSED [ 15%] tests/test_completer.py::test_undefined_variables[def foo():\n if some_condition:\n return {'top':{'mid':{'leaf': 2}}}\n return {'top': {'mid':[]}}\nfoo()['top']['mid']['leaf'].-as_integer_ratio-False-limited] PASSED [ 15%] tests/test_completer.py::test_undefined_variables[async def async_func():\n return []\nasync_func().-cr_await-True-minimal] PASSED [ 15%] tests/test_completer.py::test_undefined_variables[async def async_func():\n return []\nasync_func().-cr_await-False-limited] PASSED [ 15%] tests/test_completer.py::test_undefined_variables[async def async_func():\n return []\n(await async_func()).-append-True-minimal] PASSED [ 15%] tests/test_completer.py::test_undefined_variables[async def async_func():\n return []\n(await async_func()).-append-False-limited] PASSED [ 15%] tests/test_completer.py::test_undefined_variables[t = []\nif some_condition:\n t.-append-True-minimal] PASSED [ 15%] tests/test_completer.py::test_undefined_variables[t = []\nif some_condition:\n t.-append-False-limited] PASSED [ 15%] tests/test_completer.py::test_undefined_variables[t = []\nif some_condition:\n t = 'string'\nt.-insert_text25-True-minimal] PASSED [ 15%] tests/test_completer.py::test_undefined_variables[t = []\nif some_condition:\n t = 'string'\nt.-insert_text25-False-limited] PASSED [ 15%] tests/test_completer.py::test_undefined_variables[t = []\nif some_condition:\n t = 'string'\nelse:\n t.-append-True-minimal] PASSED [ 15%] tests/test_completer.py::test_undefined_variables[t = []\nif some_condition:\n t = 'string'\nelse:\n t.-append-False-limited] PASSED [ 15%] tests/test_completer.py::test_undefined_variables[t = []\nif some_condition:\n t = 'string'\nelse:\n t = 1\nt.-insert_text27-True-minimal] PASSED [ 15%] tests/test_completer.py::test_undefined_variables[t = []\nif some_condition:\n t = 'string'\nelse:\n t = 1\nt.-insert_text27-False-limited] PASSED [ 15%] tests/test_completer.py::test_undefined_variables[t = []\nif condition_1:\n t = 'string'\nelif condition_2:\n t = 1\nelif condition_3:\n t.-append-True-minimal] PASSED [ 15%] tests/test_completer.py::test_undefined_variables[t = []\nif condition_1:\n t = 'string'\nelif condition_2:\n t = 1\nelif condition_3:\n t.-append-False-limited] PASSED [ 15%] tests/test_completer.py::test_undefined_variables[t = []\nif condition_1:\n t = 'string'\nelif condition_2:\n t = 1\nelif condition_3:\n t = {}\nt.-insert_text29-True-minimal] PASSED [ 15%] tests/test_completer.py::test_undefined_variables[t = []\nif condition_1:\n t = 'string'\nelif condition_2:\n t = 1\nelif condition_3:\n t = {}\nt.-insert_text29-False-limited] PASSED [ 15%] tests/test_completer.py::test_undefined_variables[t = []\nif condition_1:\n if condition_2:\n t = 'nested'\nt.-insert_text30-True-minimal] PASSED [ 15%] tests/test_completer.py::test_undefined_variables[t = []\nif condition_1:\n if condition_2:\n t = 'nested'\nt.-insert_text30-False-limited] PASSED [ 15%] tests/test_completer.py::test_undefined_variables[a = []\nwhile condition:\n a.-append-True-minimal] PASSED [ 15%] tests/test_completer.py::test_undefined_variables[a = []\nwhile condition:\n a.-append-False-limited] PASSED [ 15%] tests/test_completer.py::test_undefined_variables[t = []\nwhile condition:\n t = 'str'\nt.-insert_text32-True-minimal] PASSED [ 15%] tests/test_completer.py::test_undefined_variables[t = []\nwhile condition:\n t = 'str'\nt.-insert_text32-False-limited] PASSED [ 16%] tests/test_completer.py::test_undefined_variables[t = []\nwhile condition_1:\n while condition_2:\n t = 'str'\nt.-insert_text33-True-minimal] PASSED [ 16%] tests/test_completer.py::test_undefined_variables[t = []\nwhile condition_1:\n while condition_2:\n t = 'str'\nt.-insert_text33-False-limited] PASSED [ 16%] tests/test_completer.py::test_undefined_variables[for i in range(10):\n i.-bit_length-True-minimal] PASSED [ 16%] tests/test_completer.py::test_undefined_variables[for i in range(10):\n i.-bit_length-False-limited] PASSED [ 16%] tests/test_completer.py::test_undefined_variables[for i in range(10):\n if i % 2 == 0:\n i.-bit_length-True-minimal] PASSED [ 16%] tests/test_completer.py::test_undefined_variables[for i in range(10):\n if i % 2 == 0:\n i.-bit_length-False-limited] PASSED [ 16%] tests/test_completer.py::test_undefined_variables[for item in ['a', 'b', 'c']:\n item.-capitalize-True-minimal] PASSED [ 16%] tests/test_completer.py::test_undefined_variables[for item in ['a', 'b', 'c']:\n item.-capitalize-False-limited] PASSED [ 16%] tests/test_completer.py::test_undefined_variables[for key, value in {'a': 1, 'b': 2}.items():\n key.-capitalize-True-minimal] PASSED [ 16%] tests/test_completer.py::test_undefined_variables[for key, value in {'a': 1, 'b': 2}.items():\n key.-capitalize-False-limited] PASSED [ 16%] tests/test_completer.py::test_undefined_variables[for key, value in {'a': 1, 'b': 2}.items():\n value.-bit_length-True-minimal] PASSED [ 16%] tests/test_completer.py::test_undefined_variables[for key, value in {'a': 1, 'b': 2}.items():\n value.-bit_length-False-limited] PASSED [ 16%] tests/test_completer.py::test_undefined_variables[for sublist in [[1, 2], [3, 4]]:\n sublist.-append-True-minimal] PASSED [ 16%] tests/test_completer.py::test_undefined_variables[for sublist in [[1, 2], [3, 4]]:\n sublist.-append-False-limited] PASSED [ 16%] tests/test_completer.py::test_undefined_variables[for sublist in [[1, 2], [3, 4]]:\n for item in sublist:\n item.-bit_length-True-minimal] PASSED [ 16%] tests/test_completer.py::test_undefined_variables[for sublist in [[1, 2], [3, 4]]:\n for item in sublist:\n item.-bit_length-False-limited] PASSED [ 16%] tests/test_completer.py::test_undefined_variables[t: list[str]\nt[0].-insert_text41-True-minimal] PASSED [ 16%] tests/test_completer.py::test_undefined_variables[t: list[str]\nt[0].-insert_text41-False-limited] PASSED [ 16%] tests/test_completer.py::test_undefined_variables_without_jedi[t: dict = {'a': []}\nt['a'].-insert_text0] PASSED [ 16%] tests/test_completer.py::test_undefined_variables_without_jedi[t: int | dict = {'a': []}\nt.-insert_text1] PASSED [ 16%] tests/test_completer.py::test_undefined_variables_without_jedi[t: int | dict = {'a': []}\nt['a'].-append] PASSED [ 16%] tests/test_completer.py::test_undefined_variables_without_jedi[t: int | str\nt.-insert_text3] PASSED [ 16%] tests/test_completer.py::test_undefined_variables_without_jedi[def func() -> int | str: pass\nfunc().-insert_text4] PASSED [ 16%] tests/test_completer.py::test_undefined_variables_without_jedi[t: list = ['test']\nt[0].-insert_text5] PASSED [ 16%] tests/test_completer.py::test_undefined_variables_without_jedi[class T:\n @property\n def p(self) -> int | str: pass\nt = T()\nt.p.-insert_text6] PASSED [ 16%] tests/test_completer.py::test_no_file_completions_in_attr_access[def my_test() -> float:\n return 1.1\nmy_test().] PASSED [ 16%] tests/test_completer.py::test_no_file_completions_in_attr_access[class MyClass():\n b: list[str]\nx = MyClass()\nx.b[0].] PASSED [ 16%] tests/test_completer.py::test_no_file_completions_in_attr_access[class MyClass():\n b: list[str]\nx = MyClass()\nx.fake_attr().] PASSED [ 16%] tests/test_completer.py::test_completion_context[np.-attribute] PASSED [ 17%] tests/test_completer.py::test_completion_context[np.ran-attribute] PASSED [ 17%] tests/test_completer.py::test_completion_context[np.random.rand(np.random.ran-attribute] PASSED [ 17%] tests/test_completer.py::test_completion_context[np.random.rand(n-global] PASSED [ 17%] tests/test_completer.py::test_completion_context[d['k.e.y.'](ran-global] PASSED [ 17%] tests/test_completer.py::test_completion_context[d[0].k-attribute] PASSED [ 17%] tests/test_completer.py::test_completion_context[a = { 'a': np.ran-attribute] PASSED [ 17%] tests/test_completer.py::test_completion_context[n-global] PASSED [ 17%] tests/test_completer.py::test_completion_context[-global0] PASSED [ 17%] tests/test_completer.py::test_completion_context[some_var = "this is a string with a dot.-global] PASSED [ 17%] tests/test_completer.py::test_completion_context[text = 'another string with a dot.-global] PASSED [ 17%] tests/test_completer.py::test_completion_context[f"greeting {user.na-attribute] PASSED [ 17%] tests/test_completer.py::test_completion_context[t"welcome {guest.na-attribute] PASSED [ 17%] tests/test_completer.py::test_completion_context[f"hello {name} worl-global] PASSED [ 17%] tests/test_completer.py::test_completion_context[f"hello {{a.-global] PASSED [ 17%] tests/test_completer.py::test_completion_context[f"hello {{{a.-attribute] PASSED [ 17%] tests/test_completer.py::test_completion_context[var = "string with \\"escaped quote and a dot.-global] PASSED [ 17%] tests/test_completer.py::test_completion_context[escaped = 'single \\'quote\\' with a dot.-global] PASSED [ 17%] tests/test_completer.py::test_completion_context[multi = """This is line one\nwith a dot.-global] PASSED [ 17%] tests/test_completer.py::test_completion_context[multi_single = '''Another\nmulti-line\nwith a dot.-global] PASSED [ 17%] tests/test_completer.py::test_completion_context[x = 5 # This is a comment-global] PASSED [ 17%] tests/test_completer.py::test_completion_context[y = obj.method() # Comment after dot.method-global] PASSED [ 17%] tests/test_completer.py::test_completion_context[d['#'] = np.-attribute] PASSED [ 17%] tests/test_completer.py::test_completion_context[complex_expr = (func((obj.method(param.attr-attribute] PASSED [ 17%] tests/test_completer.py::test_completion_context[multiple_nesting = {key: [value.attr-attribute] PASSED [ 17%] tests/test_completer.py::test_completion_context[3.-global] PASSED [ 17%] tests/test_completer.py::test_completion_context[3.14-global] PASSED [ 17%] tests/test_completer.py::test_completion_context[-42.14-global] PASSED [ 17%] tests/test_completer.py::test_completion_context[x = func(3.14-global] PASSED [ 17%] tests/test_completer.py::test_completion_context[x = func(a3.-attribute] PASSED [ 17%] tests/test_completer.py::test_completion_context[x = func(a3.12-global] PASSED [ 18%] tests/test_completer.py::test_completion_context[3.1.-attribute] PASSED [ 18%] tests/test_completer.py::test_completion_context[-3.1.-attribute] PASSED [ 18%] tests/test_completer.py::test_completion_context[(3).-attribute] PASSED [ 18%] tests/test_completer.py::test_completion_context[-global1] PASSED [ 18%] tests/test_completer.py::test_completion_context[str_with_code = "x.attr-global] PASSED [ 18%] tests/test_completer.py::test_completion_context[f"formatted {obj.attr-attribute] PASSED [ 18%] tests/test_completer.py::test_completion_context[f"formatted {obj.attr}-global] PASSED [ 18%] tests/test_completer.py::test_completion_context[dict_with_dots = {'key.with.dots': value.attr-attribute] PASSED [ 18%] tests/test_completer.py::test_completion_context[d[f'{a}']['{a.-global] PASSED [ 18%] tests/test_completer.py::test_completion_context[ls .-global] PASSED [ 18%] tests/test_completer.py::test_completion_context[t._-attribute] PASSED [ 18%] tests/test_completer.py::test_completion_context[t.__a-attribute] PASSED [ 18%] tests/test_completer.py::test_completion_in_cli_context[test_alias file-True-False] PASSED [ 18%] tests/test_completer.py::test_completion_in_cli_context[test_alias .-True-False] PASSED [ 18%] tests/test_completer.py::test_completion_in_cli_context[test_alias file.-True-False] PASSED [ 18%] tests/test_completer.py::test_completion_in_cli_context[%test_alias .file.ext-True-True] PASSED [ 18%] tests/test_completer.py::test_completion_in_cli_context[!test_alias file.-True-True] PASSED [ 18%] tests/test_completer.py::test_unsupported_completion_context[f'{f'a.-global] XFAIL [ 18%] tests/test_completer.py::test_unsupported_completion_context[3a.-global] XFAIL [ 18%] tests/test_completer.py::test_unsupported_completion_context[$).-global] XFAIL [ 18%] tests/test_completer.py::test_misc_no_jedi_completions[a="str"; b=1-(a, b.-expected0-not_expected0] PASSED [ 18%] tests/test_completer.py::test_misc_no_jedi_completions[a="str"; b=1-(a, b).-expected1-not_expected1] PASSED [ 18%] tests/test_completer.py::test_misc_no_jedi_completions[x="str"; y=1-x = {1, y.-expected2-not_expected2] PASSED [ 18%] tests/test_completer.py::test_misc_no_jedi_completions[x="str"; y=1-x = [1, y.-expected3-not_expected3] PASSED [ 18%] tests/test_completer.py::test_misc_no_jedi_completions[x="str"; y=1; fun=lambda x:x-x = fun(1, y.-expected4-not_expected4] PASSED [ 18%] tests/test_completer.py::test_trim_expr[ (a, b-b] PASSED [ 18%] tests/test_completer.py::test_trim_expr[(a, b-b] PASSED [ 18%] tests/test_completer.py::test_trim_expr[(a, b)-] PASSED [ 18%] tests/test_completer.py::test_trim_expr[ (a, b)-(a, b)] PASSED [ 19%] tests/test_completer.py::test_trim_expr[ [a, b]-[a, b]] PASSED [ 19%] tests/test_completer.py::test_trim_expr[ a, b-b] PASSED [ 19%] tests/test_completer.py::test_trim_expr[x = {1, y-y] PASSED [ 19%] tests/test_completer.py::test_trim_expr[x = [1, y-y] PASSED [ 19%] tests/test_completer.py::test_trim_expr[x = fun(1, y-y] PASSED [ 19%] tests/test_completer.py::test_trim_expr[ assert a-a] PASSED [ 19%] tests/test_completer.py::test_match_numeric_literal_for_dict_key[1.234-1.234] PASSED [ 19%] tests/test_completer.py::test_match_numeric_literal_for_dict_key[+1-+1] PASSED [ 19%] tests/test_completer.py::test_match_numeric_literal_for_dict_key[-1--1] PASSED [ 19%] tests/test_completer.py::test_match_numeric_literal_for_dict_key[-1.0--1.0] PASSED [ 19%] tests/test_completer.py::test_match_numeric_literal_for_dict_key[-1.--1.] PASSED [ 19%] tests/test_completer.py::test_match_numeric_literal_for_dict_key[+1.-+1.] PASSED [ 19%] tests/test_completer.py::test_match_numeric_literal_for_dict_key[.1-.1] PASSED [ 19%] tests/test_completer.py::test_match_numeric_literal_for_dict_key[1..-None] PASSED [ 19%] tests/test_completer.py::test_match_numeric_literal_for_dict_key[..-None] PASSED [ 19%] tests/test_completer.py::test_match_numeric_literal_for_dict_key[.1.-None] PASSED [ 19%] tests/test_completer.py::test_match_numeric_literal_for_dict_key[,1-1] PASSED [ 19%] tests/test_completer.py::test_match_numeric_literal_for_dict_key[, 1-1] PASSED [ 19%] tests/test_completer.py::test_match_numeric_literal_for_dict_key[, .1-.1] PASSED [ 19%] tests/test_completer.py::test_match_numeric_literal_for_dict_key[, +.1-+.1] PASSED [ 19%] tests/test_completer.py::test_match_numeric_literal_for_dict_key[.1 -None] PASSED [ 19%] tests/test_completer.py::test_match_numeric_literal_for_dict_key[0b_0011_1111_0100_1110-0b_0011_1111_0100_1110] PASSED [ 19%] tests/test_completer.py::test_match_numeric_literal_for_dict_key[0xdeadbeef-0xdeadbeef] PASSED [ 19%] tests/test_completer.py::test_match_numeric_literal_for_dict_key[0b_1110_0101-0b_1110_0101] PASSED [ 19%] tests/test_completer.py::test_match_numeric_literal_for_dict_key[1 + 1-None] PASSED [ 19%] tests/test_completer.py::test_match_numeric_literal_for_dict_key[, 1 + 1-None] PASSED [ 19%] tests/test_completerlib.py::test_magic_run_completer[%run a-expected_match0] PASSED [ 19%] tests/test_completerlib.py::test_magic_run_completer[%run aa-expected_match1] PASSED [ 19%] tests/test_completerlib.py::test_magic_run_completer[%run "a-expected_match2] PASSED [ 20%] tests/test_completerlib.py::test_magic_run_completer_more_args PASSED [ 20%] tests/test_completerlib.py::test_magic_run_completer_in_dir PASSED [ 20%] tests/test_completerlib.py::test_magic_run_completer_nonascii[%run a-expected_match0] PASSED [ 20%] tests/test_completerlib.py::test_magic_run_completer_nonascii[%run aa-expected_match1] PASSED [ 20%] tests/test_completerlib.py::test_magic_run_completer_nonascii[%run "a-expected_match2] PASSED [ 20%] tests/test_completerlib.py::test_import_invalid_module PASSED [ 20%] tests/test_completerlib.py::test_bad_module_all PASSED [ 20%] tests/test_completerlib.py::test_module_without_init PASSED [ 20%] tests/test_completerlib.py::test_valid_exported_submodules PASSED [ 20%] tests/test_contexts.py::test_preserve_keys_restores_existing_key PASSED [ 20%] tests/test_contexts.py::test_preserve_keys_deletes_new_key PASSED [ 20%] tests/test_contexts.py::test_preserve_keys_preserves_unchanged_keys PASSED [ 20%] tests/test_contexts.py::test_preserve_keys_missing_key_deleted_on_exit PASSED [ 20%] tests/test_contexts.py::test_preserve_keys_multiple_keys PASSED [ 20%] tests/test_contexts.py::test_preserve_keys_restores_after_exception PASSED [ 20%] tests/test_contexts.py::test_preserve_keys_restores_falsy_values[None] PASSED [ 20%] tests/test_contexts.py::test_preserve_keys_restores_falsy_values[0] PASSED [ 20%] tests/test_contexts.py::test_preserve_keys_restores_falsy_values[False] PASSED [ 20%] tests/test_contexts.py::test_preserve_keys_restores_falsy_values[] PASSED [ 20%] tests/test_contexts.py::test_preserve_keys_restores_falsy_values[original_value4] PASSED [ 20%] tests/test_contexts.py::test_preserve_keys_restores_falsy_values[original_value5] PASSED [ 20%] tests/test_contexts.py::test_preserve_keys_no_keys_is_noop PASSED [ 20%] tests/test_crashhandler.py::test_crash_handler_init PASSED [ 20%] tests/test_crashhandler.py::test_crash_handler_writes_report PASSED [ 20%] tests/test_crashhandler.py::test_crash_handler_hidden_traceback PASSED [ 20%] tests/test_crashhandler.py::test_crash_handler_no_ipython_dir PASSED [ 20%] tests/test_crashhandler.py::test_crash_handler_missing_ipython_dir PASSED [ 20%] tests/test_crashhandler.py::test_crash_handler_unwritable_report PASSED [ 20%] tests/test_crashhandler.py::test_crash_handler_call_pdb PASSED [ 20%] tests/test_crashhandler.py::test_make_report_contains_config PASSED [ 21%] tests/test_crashhandler.py::test_make_report_without_config PASSED [ 21%] tests/test_crashhandler.py::test_crash_handler_lite_no_shell PASSED [ 21%] tests/test_crashhandler.py::test_crash_handler_lite_in_shell PASSED [ 21%] tests/test_cve.py::test_cve_2022_21699 PASSED [ 21%] tests/test_data.py::test_chop_even_division PASSED [ 21%] tests/test_data.py::test_chop_uneven_division PASSED [ 21%] tests/test_data.py::test_chop_size_larger_than_seq PASSED [ 21%] tests/test_data.py::test_chop_size_1 PASSED [ 21%] tests/test_data.py::test_chop_empty_sequence PASSED [ 21%] tests/test_data.py::test_chop_string PASSED [ 21%] tests/test_data.py::test_chop_parametrized[seq0-3-expected0] PASSED [ 21%] tests/test_data.py::test_chop_parametrized[seq1-2-expected1] PASSED [ 21%] tests/test_data.py::test_chop_parametrized[seq2-6-expected2] PASSED [ 21%] tests/test_data.py::test_uniq_stable_raises_deprecation_warning PASSED [ 21%] tests/test_data.py::test_uniq_stable_preserves_order PASSED [ 21%] tests/test_data.py::test_uniq_stable_empty PASSED [ 21%] tests/test_data.py::test_uniq_stable_all_unique PASSED [ 21%] tests/test_debug_magic.py::test_debug_magic_passes_through_generators PASSED [ 21%] tests/test_debugger.py::tests.test_debugger.can_exit PASSED [ 21%] tests/test_debugger.py::tests.test_debugger.can_quit PASSED [ 21%] tests/test_debugger.py::tests.test_debugger.test_ipdb_closure PASSED [ 21%] tests/test_debugger.py::tests.test_debugger.test_ipdb_magics PASSED [ 21%] tests/test_debugger.py::tests.test_debugger.test_ipdb_magics2 PASSED [ 21%] tests/test_debugger.py::test_ipdb_magics PASSED [ 21%] tests/test_debugger.py::test_ipdb_closure PASSED [ 21%] tests/test_debugger.py::test_ipdb_magics2 PASSED [ 21%] tests/test_debugger.py::test_interruptible_core_debugger PASSED [ 21%] tests/test_debugger.py::test_exception_command_aliases_exceptions SKIPPED [ 21%] tests/test_debugger.py::test_execfile_marks_debugger_internal_frames_hidden PASSED [ 22%] tests/test_debugger.py::test_xmode_skip PASSED [ 22%] tests/test_debugger.py::test_decorator_skip SKIPPED (recently fail f...) [ 22%] tests/test_debugger.py::test_decorator_skip_disabled SKIPPED (recent...) [ 22%] tests/test_debugger.py::test_decorator_skip_with_breakpoint SKIPPED [ 22%] tests/test_debugger.py::test_where_erase_value PASSED [ 22%] tests/test_debugger.py::test_ignore_module_basic_functionality PASSED [ 22%] tests/test_debugger.py::test_ignore_module_all_commands PASSED [ 22%] tests/test_debugger.py::test_pdb_subclass_signature_compatible[Pdb] PASSED [ 22%] tests/test_debugger.py::test_pdb_subclass_signature_compatible[InterruptiblePdb] PASSED [ 22%] tests/test_debugger.py::test_pdb_subclass_signature_compatible[TerminalPdb] PASSED [ 22%] tests/test_debugger.py::test_pdb_subclass_accepts_mode[None-Pdb] PASSED [ 22%] tests/test_debugger.py::test_pdb_subclass_accepts_mode[None-InterruptiblePdb] PASSED [ 22%] tests/test_debugger.py::test_pdb_subclass_accepts_mode[None-TerminalPdb] PASSED [ 22%] tests/test_debugger.py::test_pdb_subclass_accepts_mode[inline-Pdb] PASSED [ 22%] tests/test_debugger.py::test_pdb_subclass_accepts_mode[inline-InterruptiblePdb] PASSED [ 22%] tests/test_debugger.py::test_pdb_subclass_accepts_mode[inline-TerminalPdb] PASSED [ 22%] tests/test_debugger.py::test_pdb_subclass_accepts_mode[cli-Pdb] PASSED [ 22%] tests/test_debugger.py::test_pdb_subclass_accepts_mode[cli-InterruptiblePdb] PASSED [ 22%] tests/test_debugger.py::test_pdb_subclass_accepts_mode[cli-TerminalPdb] PASSED [ 22%] tests/test_debugger.py::test_bdbquit_excepthook_is_deprecated PASSED [ 22%] tests/test_debugger.py::test_strip_indentation_and_doc_decoration PASSED [ 22%] tests/test_debugger.py::test_pdb_context_argument PASSED [ 22%] tests/test_debugger.py::test_do_context_command PASSED [ 22%] tests/test_debugger.py::test_set_colors_is_deprecated PASSED [ 22%] tests/test_debugger.py::test_get_stack_hides_bdb_internal_frames PASSED [ 22%] tests/test_debugger.py::test_hidden_predicate_readonly_files PASSED [ 22%] tests/test_debugger.py::test_do_skip_predicates_command PASSED [ 22%] tests/test_debugger.py::test_do_skip_hidden_command PASSED [ 22%] tests/test_debugger.py::test_where_and_navigation_with_hidden_frames PASSED [ 22%] tests/test_debugger.py::test_navigation_with_ignored_modules PASSED [ 23%] tests/test_debugger.py::test_down_reports_skipped_hidden_frames PASSED [ 23%] tests/test_debugger.py::test_unignore_module_with_no_ignore_list PASSED [ 23%] tests/test_debugger.py::test_do_list_and_longlist PASSED [ 23%] tests/test_debugger.py::test_longlist_error_and_exec_filename PASSED [ 23%] tests/test_debugger.py::test_list_shows_breakpoint_markers PASSED [ 23%] tests/test_debugger.py::test_format_stack_entry_return_and_args PASSED [ 23%] tests/test_debugger.py::test_do_exceptions_navigation SKIPPED (chain...) [ 23%] tests/test_debugger.py::test_do_exceptions_without_traceback SKIPPED [ 23%] tests/test_debugger.py::test_do_exceptions_without_chain SKIPPED (ch...) [ 23%] tests/test_debugger.py::test_do_exceptions_truncates_long_reprs SKIPPED [ 23%] tests/test_debugger.py::test_get_tb_and_exceptions_edge_cases SKIPPED [ 23%] tests/test_debugger.py::test_pinfo_family_commands PASSED [ 23%] tests/test_debugger.py::test_precmd_question_mark_rewriting PASSED [ 23%] tests/test_debugger.py::test_interaction_session_with_exception PASSED [ 23%] tests/test_debugger.py::test_interaction_session_with_traceback_object PASSED [ 23%] tests/test_debugger.py::test_cmdloop_resumes_after_keyboard_interrupt PASSED [ 23%] tests/test_debugger.py::test_interruptible_pdb_aborts_session_on_keyboard_interrupt PASSED [ 23%] tests/test_debugger.py::test_do_debug_runs_recursive_debugger PASSED [ 23%] tests/test_debugger.py::test_break_anywhere_and_debuggerskip PASSED [ 23%] tests/test_debugger.py::test_stop_here_reports_hidden_and_ignored_frames PASSED [ 23%] tests/test_debugger.py::test_getsourcelines_module_object PASSED [ 23%] tests/test_debugger.py::test_pdb_creates_shell_when_no_ipython PASSED [ 23%] tests/test_debugger.py::test_set_trace_function_with_header PASSED [ 23%] tests/test_debugger.py::test_terminal_pdb_cmdloop_requires_rawinput PASSED [ 23%] tests/test_debugger.py::test_terminal_pdb_cmdqueue_session PASSED [ 23%] tests/test_debugger.py::test_terminal_pdb_reuses_shell_history PASSED [ 23%] tests/test_debugger.py::test_terminal_pdb_simple_prompt_input PASSED [ 23%] tests/test_debugger.py::test_terminal_pdb_prompt_eof_quits PASSED [ 23%] tests/test_debugger.py::test_terminal_pdb_do_interact PASSED [ 24%] tests/test_debugger.py::test_terminal_debugger_set_trace_uses_caller_frame PASSED [ 24%] tests/test_debugger_backport.py::test_exec_in_closure_returns_false_for_flat_source PASSED [ 24%] tests/test_debugger_backport.py::test_exec_in_closure_prints_expression_result PASSED [ 24%] tests/test_debugger_backport.py::test_exec_in_closure_none_result_is_not_printed PASSED [ 24%] tests/test_debugger_backport.py::test_exec_in_closure_writes_locals_back PASSED [ 24%] tests/test_debugger_backport.py::test_exec_in_closure_bad_local_names_fall_back PASSED [ 24%] tests/test_debugger_backport.py::test_exec_in_closure_error_in_code_falls_back PASSED [ 24%] tests/test_debugger_backport.py::test_default_executes_expressions SKIPPED [ 24%] tests/test_debugger_backport.py::test_default_strips_bang_prefix SKIPPED [ 24%] tests/test_debugger_backport.py::test_default_closure_expression SKIPPED [ 24%] tests/test_debugger_backport.py::test_default_assignment_updates_locals SKIPPED [ 24%] tests/test_debugger_backport.py::test_default_reports_errors SKIPPED [ 24%] tests/test_debugger_backport.py::test_default_multiline_command SKIPPED [ 24%] tests/test_decorators.py::tests.test_decorators.FooClass PASSED [ 24%] tests/test_decorators.py::tests.test_decorators.FooClass.__init__ SKIPPED [ 24%] tests/test_decorators.py::tests.test_decorators.FooClass.bar SKIPPED [ 24%] tests/test_decorators.py::tests.test_decorators.FooClass.baz PASSED [ 24%] tests/test_decorators.py::tests.test_decorators.call_doctest_bad PASSED [ 24%] tests/test_decorators.py::tests.test_decorators.doctest_bad SKIPPED [ 24%] tests/test_decorators.py::test_trivial PASSED [ 24%] tests/test_decorators.py::test_deliberately_broken SKIPPED (Test ski...) [ 24%] tests/test_decorators.py::test_deliberately_broken2 SKIPPED (Testing...) [ 24%] tests/test_decorators.py::test_skip_dt_decorator PASSED [ 24%] tests/test_decorators.py::test_skip_dt_decorator2 PASSED [ 24%] tests/test_decorators_2.py::test_flag_calls PASSED [ 24%] tests/test_deepreload.py::test_deepreload PASSED [ 24%] tests/test_deepreload.py::test_deepreload_package_relative_imports PASSED [ 24%] tests/test_deepreload.py::test_not_module PASSED [ 24%] tests/test_deepreload.py::test_not_in_sys_modules PASSED [ 24%] tests/test_deepreload.py::test_reload_types_module_is_noop PASSED [ 25%] tests/test_deepreload.py::TestGetParent::test_no_level PASSED [ 25%] tests/test_deepreload.py::TestGetParent::test_globals_not_dict PASSED [ 25%] tests/test_deepreload.py::TestGetParent::test_package_not_string PASSED [ 25%] tests/test_deepreload.py::TestGetParent::test_relative_import_in_non_package PASSED [ 25%] tests/test_deepreload.py::TestGetParent::test_empty_package_negative_level PASSED [ 25%] tests/test_deepreload.py::TestGetParent::test_package_set PASSED [ 25%] tests/test_deepreload.py::TestGetParent::test_no_name PASSED [ 25%] tests/test_deepreload.py::TestGetParent::test_name_with_path_is_package PASSED [ 25%] tests/test_deepreload.py::TestGetParent::test_plain_module_infers_package PASSED [ 25%] tests/test_deepreload.py::TestGetParent::test_toplevel_module_relative_import PASSED [ 25%] tests/test_deepreload.py::TestGetParent::test_toplevel_module_absolute_import PASSED [ 25%] tests/test_deepreload.py::TestGetParent::test_relative_import_beyond_toplevel PASSED [ 25%] tests/test_deepreload.py::TestGetParent::test_parent_not_loaded_relative PASSED [ 25%] tests/test_deepreload.py::TestGetParent::test_parent_not_found_absolute PASSED [ 25%] tests/test_deepreload.py::TestLoadNext::test_empty_name PASSED [ 25%] tests/test_deepreload.py::TestLoadNext::test_dot_prefixed_name PASSED [ 25%] tests/test_deepreload.py::TestLoadNext::test_import_failure PASSED [ 25%] tests/test_deepreload.py::TestLoadNext::test_altmod_fallback PASSED [ 25%] tests/test_deepreload.py::TestEnsureFromlist::test_no_path_attribute PASSED [ 25%] tests/test_deepreload.py::TestEnsureFromlist::test_fromlist_item_not_string PASSED [ 25%] tests/test_deepreload.py::TestEnsureFromlist::test_star_without_all PASSED [ 25%] tests/test_deepreload.py::TestEnsureFromlist::test_star_recursive_is_skipped PASSED [ 25%] tests/test_deepreload.py::TestEnsureFromlist::test_existing_attribute_not_reimported PASSED [ 25%] tests/test_deepreload.py::TestEnsureFromlist::test_missing_attribute_imported PASSED [ 25%] tests/test_deepreload.py::TestImportSubmodule::test_already_found PASSED [ 25%] tests/test_deepreload.py::TestImportSubmodule::test_fresh_import PASSED [ 25%] tests/test_deepreload.py::TestImportSubmodule::test_failed_reload_restores_module PASSED [ 25%] tests/test_deepreload.py::TestAddSubmodule::test_mod_none_is_noop PASSED [ 25%] tests/test_deepreload.py::TestAddSubmodule::test_sets_attribute PASSED [ 26%] tests/test_deepreload.py::TestAddSubmodule::test_submod_none_looked_up_in_sys_modules PASSED [ 26%] tests/test_deepreload.py::TestDeepImportHook::test_empty_module_name PASSED [ 26%] tests/test_demo.py::test_demo_parsing PASSED [ 26%] tests/test_demo.py::test_demo_title_and_argv PASSED [ 26%] tests/test_demo.py::test_demo_from_filelike PASSED [ 26%] tests/test_demo.py::test_demo_auto_all_tag PASSED [ 26%] tests/test_demo.py::test_demo_run_and_finish PASSED [ 26%] tests/test_demo.py::test_demo_interactive_confirm PASSED [ 26%] tests/test_demo.py::test_demo_interactive_quit PASSED [ 26%] tests/test_demo.py::test_demo_seek_back_jump_again PASSED [ 26%] tests/test_demo.py::test_demo_invalid_index PASSED [ 26%] tests/test_demo.py::test_demo_reload PASSED [ 26%] tests/test_demo.py::test_demo_show_and_edit_when_finished PASSED [ 26%] tests/test_demo.py::test_demo_reset PASSED [ 26%] tests/test_demo.py::test_demo_show PASSED [ 26%] tests/test_demo.py::test_demo_show_all PASSED [ 26%] tests/test_demo.py::test_demo_exception_shows_traceback PASSED [ 26%] tests/test_demo.py::test_demo_outside_ipython PASSED [ 26%] tests/test_demo.py::test_demo_edit PASSED [ 26%] tests/test_demo.py::test_demo_marquee PASSED [ 26%] tests/test_demo.py::test_ipython_demo PASSED [ 26%] tests/test_demo.py::test_line_demo PASSED [ 26%] tests/test_demo.py::test_ipython_line_demo PASSED [ 26%] tests/test_demo.py::test_clear_demo PASSED [ 26%] tests/test_demo.py::test_clear_ip_demo PASSED [ 26%] tests/test_demo.py::test_demo_format_rst PASSED [ 26%] tests/test_demo.py::test_slide PASSED [ 26%] tests/test_demo.py::test_slide_with_clear PASSED [ 26%] tests/test_demo.py::test_slide_keyboard_interrupt PASSED [ 26%] tests/test_dir2.py::test_base PASSED [ 27%] tests/test_dir2.py::test_SubClass PASSED [ 27%] tests/test_dir2.py::test_SubClass_with_trait_names_attr PASSED [ 27%] tests/test_dir2.py::test_misbehaving_object_without_trait_names PASSED [ 27%] tests/test_display.py::test_instantiation_FileLink PASSED [ 27%] tests/test_display.py::test_warning_on_non_existent_path_FileLink PASSED [ 27%] tests/test_display.py::test_existing_path_FileLink PASSED [ 27%] tests/test_display.py::test_existing_path_FileLink_repr PASSED [ 27%] tests/test_display.py::test_error_on_directory_to_FileLink PASSED [ 27%] tests/test_display.py::test_instantiation_FileLinks PASSED [ 27%] tests/test_display.py::test_warning_on_non_existent_path_FileLinks PASSED [ 27%] tests/test_display.py::test_existing_path_FileLinks PASSED [ 27%] tests/test_display.py::test_existing_path_FileLinks_alt_formatter PASSED [ 27%] tests/test_display.py::test_existing_path_FileLinks_repr PASSED [ 27%] tests/test_display.py::test_existing_path_FileLinks_repr_alt_formatter PASSED [ 27%] tests/test_display.py::test_error_on_file_to_FileLinks PASSED [ 27%] tests/test_display.py::test_recursive_FileLinks PASSED [ 27%] tests/test_display.py::test_escaped_names_FileLinks PASSED [ 27%] tests/test_display.py::test_audio_from_file PASSED [ 27%] tests/test_display.py::test_escaped_url_Audio PASSED [ 27%] tests/test_display.py::test_audio_from_numpy_array PASSED [ 27%] tests/test_display.py::test_audio_from_list PASSED [ 27%] tests/test_display.py::test_audio_from_numpy_array_without_rate_raises PASSED [ 27%] tests/test_display.py::test_audio_data_normalization PASSED [ 27%] tests/test_display.py::test_audio_data_without_normalization PASSED [ 27%] tests/test_display.py::test_audio_data_without_normalization_raises_for_invalid_data PASSED [ 27%] tests/test_display.py::test_audio_from_numpy_array_no_numpy PASSED [ 27%] tests/test_display.py::test_audio_from_list_no_numpy PASSED [ 27%] tests/test_display.py::test_audio_from_numpy_array_without_rate_raises_no_numpy PASSED [ 27%] tests/test_display.py::test_audio_data_normalization_no_numpy PASSED [ 28%] tests/test_display.py::test_audio_data_without_normalization_no_numpy PASSED [ 28%] tests/test_display.py::test_audio_data_without_normalization_raises_for_invalid_data_no_numpy PASSED [ 28%] tests/test_display.py::test_audio_raises_for_nested_list PASSED [ 28%] tests/test_display.py::test_code_from_file PASSED [ 28%] tests/test_display_2.py::test_image_size PASSED [ 28%] tests/test_display_2.py::test_image_mimes PASSED [ 28%] tests/test_display_2.py::test_geojson PASSED [ 28%] tests/test_display_2.py::test_retina_png PASSED [ 28%] tests/test_display_2.py::test_embed_svg_url PASSED [ 28%] tests/test_display_2.py::test_retina_jpeg PASSED [ 28%] tests/test_display_2.py::test_base64image PASSED [ 28%] tests/test_display_2.py::test_image_filename_defaults PASSED [ 28%] tests/test_display_2.py::test_set_matplotlib_close PASSED [ 28%] tests/test_display_2.py::test_set_matplotlib_formats PASSED [ 28%] tests/test_display_2.py::test_set_matplotlib_formats_kwargs PASSED [ 28%] tests/test_display_2.py::test_matplotlib_positioning PASSED [ 28%] tests/test_display_2.py::test_display_available PASSED [ 28%] tests/test_display_2.py::test_textdisplayobj_pretty_repr PASSED [ 28%] tests/test_display_2.py::test_displayobject_repr PASSED [ 28%] tests/test_display_2.py::test_encourage_iframe_over_html PASSED [ 28%] tests/test_display_2.py::test_progress PASSED [ 28%] tests/test_display_2.py::test_progress_iter PASSED [ 28%] tests/test_display_2.py::test_json PASSED [ 28%] tests/test_display_2.py::test_video_embedding PASSED [ 28%] tests/test_display_2.py::test_html_metadata PASSED [ 28%] tests/test_display_2.py::test_display_id PASSED [ 28%] tests/test_display_2.py::test_update_display PASSED [ 28%] tests/test_display_2.py::test_display_handle PASSED [ 28%] tests/test_display_2.py::test_image_alt_tag PASSED [ 28%] tests/test_display_2.py::test_image_url_escaping PASSED [ 29%] tests/test_display_2.py::test_video_url_escaping PASSED [ 29%] tests/test_display_2.py::test_iframe_escaping PASSED [ 29%] tests/test_display_2.py::test_iframe_path_source PASSED [ 29%] tests/test_display_2.py::test_image_bad_filename_raises_proper_exception PASSED [ 29%] tests/test_display_functions.py::test_merge_flat_dicts PASSED [ 29%] tests/test_display_functions.py::test_merge_nested_dicts PASSED [ 29%] tests/test_display_functions.py::test_merge_non_dict_d2_returns_d2 PASSED [ 29%] tests/test_display_functions.py::test_merge_non_dict_d1_returns_d2 PASSED [ 29%] tests/test_display_functions.py::test_merge_empty_dicts PASSED [ 29%] tests/test_display_functions.py::test_new_id_is_hex_string PASSED [ 29%] tests/test_display_functions.py::test_new_id_unique PASSED [ 29%] tests/test_display_functions.py::test_new_id_length PASSED [ 29%] tests/test_display_functions.py::test_display_handle_auto_id PASSED [ 29%] tests/test_display_functions.py::test_display_handle_explicit_id PASSED [ 29%] tests/test_display_functions.py::test_display_handle_repr PASSED [ 29%] tests/test_display_functions.py::test_display_handle_different_instances_different_ids PASSED [ 29%] tests/test_display_functions.py::test_display_without_shell_prints PASSED [ 29%] tests/test_display_functions.py::test_display_without_shell_returns_none PASSED [ 29%] tests/test_display_functions.py::test_display_with_display_id_true_returns_handle PASSED [ 29%] tests/test_display_functions.py::test_display_with_display_id_string_returns_handle PASSED [ 29%] tests/test_display_functions.py::test_display_without_display_id_returns_none PASSED [ 29%] tests/test_display_functions.py::test_display_update_without_display_id_raises PASSED [ 29%] tests/test_display_functions.py::test_display_no_objects_with_display_id_returns_handle PASSED [ 29%] tests/test_display_functions.py::test_display_various_types[int] PASSED [ 29%] tests/test_display_functions.py::test_display_various_types[str] PASSED [ 29%] tests/test_display_functions.py::test_display_various_types[list] PASSED [ 29%] tests/test_display_functions.py::test_display_various_types[dict] PASSED [ 29%] tests/test_display_functions.py::test_update_display_calls_display_with_update_flag PASSED [ 29%] tests/test_display_trap.py::test_display_trap_sets_displayhook PASSED [ 30%] tests/test_display_trap.py::test_display_trap_restores_displayhook_on_exit PASSED [ 30%] tests/test_display_trap.py::test_display_trap_returns_self_from_enter PASSED [ 30%] tests/test_display_trap.py::test_display_trap_is_active_inside_context PASSED [ 30%] tests/test_display_trap.py::test_display_trap_nested_only_sets_once PASSED [ 30%] tests/test_display_trap.py::test_display_trap_exception_propagates PASSED [ 30%] tests/test_display_trap.py::test_display_trap_nested_level_tracks_nesting PASSED [ 30%] tests/test_displayhook.py::test_output_displayed PASSED [ 30%] tests/test_displayhook.py::test_output_quiet PASSED [ 30%] tests/test_displayhook.py::test_underscore_no_overwrite_user PASSED [ 30%] tests/test_displayhook.py::test_underscore_no_overwrite_builtins PASSED [ 30%] tests/test_displayhook.py::test_interactivehooks_ast_modes PASSED [ 30%] tests/test_displayhook.py::test_interactivehooks_ast_modes_semi_suppress PASSED [ 30%] tests/test_displayhook.py::test_capture_display_hook_format PASSED [ 30%] tests/test_doctb.py::test_basic_traceback_module_frame PASSED [ 30%] tests/test_doctb.py::test_tb_offset_shows_function_frame_and_locals PASSED [ 30%] tests/test_doctb.py::test_include_vars_false PASSED [ 30%] tests/test_doctb.py::test_default_tb_offset_from_constructor PASSED [ 30%] tests/test_doctb.py::test_colored_output PASSED [ 30%] tests/test_doctb.py::test_exception_notes PASSED [ 30%] tests/test_doctb.py::test_exception_notes_not_a_sequence PASSED [ 30%] tests/test_doctb.py::test_broken_str_exception PASSED [ 30%] tests/test_doctb.py::test_broken_repr_local PASSED [ 30%] tests/test_doctb.py::test_exec_code_with_missing_file PASSED [ 30%] tests/test_doctb.py::test_ipython_frames_excluded_from_line_count PASSED [ 30%] tests/test_doctb.py::test_recursion_repeated_frames PASSED [ 30%] tests/test_doctb.py::test_format_record_of_normal_frame PASSED [ 30%] tests/test_doctb.py::test_format_traceback_lines_line_gap PASSED [ 30%] tests/test_doctb.py::test_multiline_statement_context_lines PASSED [ 30%] tests/test_doctb.py::test_etype_without_dunder_name PASSED [ 31%] tests/test_doctb.py::test_handler_currently_unsupported PASSED [ 31%] tests/test_doctb.py::test_prepare_header PASSED [ 31%] tests/test_doctb.py::test_format_exception PASSED [ 31%] tests/test_doctb.py::test_debugger_disabled PASSED [ 31%] tests/test_doctb.py::test_chained_exception_cause_currently_unsupported PASSED [ 31%] tests/test_doctb.py::test_structured_traceback_rejects_other_context PASSED [ 31%] tests/test_editorhooks.py::test_install_editor PASSED [ 31%] tests/test_editorhooks.py::test_install_editor_sets_editor_attribute PASSED [ 31%] tests/test_editorhooks.py::test_line_none_defaults_to_zero PASSED [ 31%] tests/test_editorhooks.py::test_nonzero_exit_raises_trynext PASSED [ 31%] tests/test_editorhooks.py::test_wait_prompts_for_enter PASSED [ 31%] tests/test_editorhooks.py::test_editor_shortcuts[komodo-komodo -l {line} {filename}-True] PASSED [ 31%] tests/test_editorhooks.py::test_editor_shortcuts[scite-scite {filename} -goto:{line}-False] PASSED [ 31%] tests/test_editorhooks.py::test_editor_shortcuts[notepadplusplus-notepad++ -n{line} {filename}-False] PASSED [ 31%] tests/test_editorhooks.py::test_editor_shortcuts[jed-jed +{line} {filename}-False] PASSED [ 31%] tests/test_editorhooks.py::test_editor_shortcuts[idle-idle {filename}-False] PASSED [ 31%] tests/test_editorhooks.py::test_editor_shortcuts[mate-mate -w -l {line} {filename}-False] PASSED [ 31%] tests/test_editorhooks.py::test_editor_shortcuts[emacs-emacs +{line} {filename}-False] PASSED [ 31%] tests/test_editorhooks.py::test_editor_shortcuts[gnuclient-gnuclient -nw +{line} {filename}-False] PASSED [ 31%] tests/test_editorhooks.py::test_editor_shortcuts[crimson_editor-cedt.exe /L:{line} {filename}-False] PASSED [ 31%] tests/test_editorhooks.py::test_editor_shortcuts[kate-kate -u -l {line} {filename}-False] PASSED [ 31%] tests/test_editorhooks.py::test_editor_shortcuts_custom_exe PASSED [ 31%] tests/test_embed.py::test_embed_globals_lookup_order PASSED [ 31%] tests/test_embed.py::test_embed_globals_exec_nested_scopes PASSED [ 31%] tests/test_embed.py::test_embed_globals_sync_to_module PASSED [ 31%] tests/test_embed.py::test_embed_shell_call_runs_code PASSED [ 31%] tests/test_embed.py::test_embed_shell_dummy_mode PASSED [ 31%] tests/test_embed.py::test_embed_shell_module_lookup_failure_warns PASSED [ 31%] tests/test_embed.py::test_kill_embedded_magic PASSED [ 31%] tests/test_embed.py::test_kill_embedded_instance PASSED [ 32%] tests/test_embed.py::test_kill_embedded_declined PASSED [ 32%] tests/test_embed.py::test_exit_raise_magic PASSED [ 32%] tests/test_embed.py::test_embed_function_in_process PASSED [ 32%] tests/test_embed.py::test_embed_function_restores_sys_ps1 PASSED [ 32%] tests/test_embed.py::test_ipython_embed_sees_locals_in_nested_scopes PASSED [ 32%] tests/test_embed.py::test_ipython_embed PASSED [ 32%] tests/test_embed.py::test_nest_embed PASSED [ 32%] tests/test_encoding.py::test_get_stream_enc_returns_encoding_attribute PASSED [ 32%] tests/test_encoding.py::test_get_stream_enc_no_encoding_attribute_returns_default PASSED [ 32%] tests/test_encoding.py::test_get_stream_enc_no_encoding_attribute_uses_default_arg PASSED [ 32%] tests/test_encoding.py::test_get_stream_enc_empty_encoding_returns_default PASSED [ 32%] tests/test_encoding.py::test_get_stream_enc_none_encoding_returns_default PASSED [ 32%] tests/test_encoding.py::test_get_stream_enc_with_real_stdin PASSED [ 32%] tests/test_encoding.py::test_getdefaultencoding_returns_string PASSED [ 32%] tests/test_encoding.py::test_getdefaultencoding_is_valid_encoding PASSED [ 32%] tests/test_encoding.py::test_getdefaultencoding_deprecated_prefer_stream_warns PASSED [ 32%] tests/test_encoding.py::test_getdefaultencoding_cp0_returns_cp1252 PASSED [ 32%] tests/test_encoding.py::test_default_encoding_is_string PASSED [ 32%] tests/test_encoding.py::test_default_encoding_is_valid PASSED [ 32%] tests/test_error.py::test_ipython_core_error_is_exception PASSED [ 32%] tests/test_error.py::test_try_next_is_ipython_core_error PASSED [ 32%] tests/test_error.py::test_usage_error_is_ipython_core_error PASSED [ 32%] tests/test_error.py::test_stdin_not_implemented_error_is_ipython_core_error PASSED [ 32%] tests/test_error.py::test_stdin_not_implemented_error_is_not_implemented_error PASSED [ 32%] tests/test_error.py::test_input_rejected_is_exception PASSED [ 32%] tests/test_error.py::test_input_rejected_is_not_ipython_core_error PASSED [ 32%] tests/test_error.py::test_exceptions_are_raise_and_catchable[IPythonCoreError] PASSED [ 32%] tests/test_error.py::test_exceptions_are_raise_and_catchable[TryNext] PASSED [ 32%] tests/test_error.py::test_exceptions_are_raise_and_catchable[UsageError] PASSED [ 33%] tests/test_error.py::test_exceptions_are_raise_and_catchable[StdinNotImplementedError] PASSED [ 33%] tests/test_error.py::test_exceptions_are_raise_and_catchable[InputRejected] PASSED [ 33%] tests/test_error.py::test_try_next_message PASSED [ 33%] tests/test_error.py::test_usage_error_message PASSED [ 33%] tests/test_error.py::test_stdin_not_implemented_caught_as_not_implemented PASSED [ 33%] tests/test_error.py::test_try_next_caught_as_ipython_core_error PASSED [ 33%] tests/test_error.py::test_usage_error_caught_as_ipython_core_error PASSED [ 33%] tests/test_events.py::test_register_unregister PASSED [ 33%] tests/test_events.py::test_bare_function_missed_unregister PASSED [ 33%] tests/test_events.py::test_cb_error PASSED [ 33%] tests/test_events.py::test_cb_keyboard_interrupt PASSED [ 33%] tests/test_events.py::test_unregister_during_callback PASSED [ 33%] tests/test_exceptiongroup_tb.py::test_native_exceptiongroup[none-none] SKIPPED [ 33%] tests/test_exceptiongroup_tb.py::test_native_exceptiongroup[none-from] SKIPPED [ 33%] tests/test_exceptiongroup_tb.py::test_native_exceptiongroup[none-another] SKIPPED [ 33%] tests/test_exceptiongroup_tb.py::test_native_exceptiongroup[from-none] SKIPPED [ 33%] tests/test_exceptiongroup_tb.py::test_native_exceptiongroup[from-from] SKIPPED [ 33%] tests/test_exceptiongroup_tb.py::test_native_exceptiongroup[from-another] SKIPPED [ 33%] tests/test_exceptiongroup_tb.py::test_native_exceptiongroup[another-none] SKIPPED [ 33%] tests/test_exceptiongroup_tb.py::test_native_exceptiongroup[another-from] SKIPPED [ 33%] tests/test_exceptiongroup_tb.py::test_native_exceptiongroup[another-another] SKIPPED [ 33%] tests/test_extension.py::test_extension_loading PASSED [ 33%] tests/test_extension.py::test_extension_builtins PASSED [ 33%] tests/test_extension.py::test_non_extension PASSED [ 33%] tests/test_formatters.py::test_display_formatter_active_types_config PASSED [ 33%] tests/test_formatters.py::test_pretty PASSED [ 33%] tests/test_formatters.py::test_deferred PASSED [ 33%] tests/test_formatters.py::test_precision PASSED [ 33%] tests/test_formatters.py::test_bad_precision PASSED [ 33%] tests/test_formatters.py::test_for_type PASSED [ 34%] tests/test_formatters.py::test_for_type_string PASSED [ 34%] tests/test_formatters.py::test_for_type_by_name PASSED [ 34%] tests/test_formatters.py::test_lookup PASSED [ 34%] tests/test_formatters.py::test_lookup_string PASSED [ 34%] tests/test_formatters.py::test_lookup_by_type PASSED [ 34%] tests/test_formatters.py::test_lookup_by_type_string PASSED [ 34%] tests/test_formatters.py::test_in_formatter PASSED [ 34%] tests/test_formatters.py::test_string_in_formatter PASSED [ 34%] tests/test_formatters.py::test_pop PASSED [ 34%] tests/test_formatters.py::test_pop_string PASSED [ 34%] tests/test_formatters.py::test_error_method PASSED [ 34%] tests/test_formatters.py::test_nowarn_notimplemented PASSED [ 34%] tests/test_formatters.py::test_warn_error_for_type PASSED [ 34%] tests/test_formatters.py::test_error_pretty_method PASSED [ 34%] tests/test_formatters.py::test_bad_repr_traceback PASSED [ 34%] tests/test_formatters.py::test_pdf_formatter PASSED [ 34%] tests/test_formatters.py::test_print_method_bound PASSED [ 34%] tests/test_formatters.py::test_print_method_weird PASSED [ 34%] tests/test_formatters.py::test_format_config PASSED [ 34%] tests/test_formatters.py::test_pretty_max_seq_length PASSED [ 34%] tests/test_formatters.py::test_ipython_display_formatter PASSED [ 34%] tests/test_formatters.py::test_repr_mime PASSED [ 34%] tests/test_formatters.py::test_pass_correct_include_exclude PASSED [ 34%] tests/test_formatters.py::test_repr_mime_meta PASSED [ 34%] tests/test_formatters.py::test_repr_mime_failure PASSED [ 34%] tests/test_formatters.py::test_custom_repr_namedtuple_partialmethod PASSED [ 34%] tests/test_frame.py::test_extract_module_locals_returns_tuple PASSED [ 34%] tests/test_frame.py::test_extract_module_locals_module_name PASSED [ 34%] tests/test_generics.py::test_inspect_object_deprecated PASSED [ 35%] tests/test_generics.py::test_complete_object_not_deprecated PASSED [ 35%] tests/test_generics.py::test_inspect_object_default_raises_trynext PASSED [ 35%] tests/test_generics.py::test_complete_object_default_raises_trynext PASSED [ 35%] tests/test_generics.py::test_inspect_object_custom_dispatch PASSED [ 35%] tests/test_generics.py::test_complete_object_custom_dispatch PASSED [ 35%] tests/test_guarded_eval.py::test_external_not_installed PASSED [ 35%] tests/test_guarded_eval.py::test_external_changed_api PASSED [ 35%] tests/test_guarded_eval.py::test_pandas_series_iloc PASSED [ 35%] tests/test_guarded_eval.py::test_rejects_custom_properties PASSED [ 35%] tests/test_guarded_eval.py::test_rejects_stringized_annotations PASSED [ 35%] tests/test_guarded_eval.py::test_accepts_non_overriden_properties PASSED [ 35%] tests/test_guarded_eval.py::test_pandas_series PASSED [ 35%] tests/test_guarded_eval.py::test_pandas_bad_series PASSED [ 35%] tests/test_guarded_eval.py::test_pandas_dataframe_loc PASSED [ 35%] tests/test_guarded_eval.py::test_named_tuple PASSED [ 35%] tests/test_guarded_eval.py::test_dict PASSED [ 35%] tests/test_guarded_eval.py::test_set PASSED [ 35%] tests/test_guarded_eval.py::test_list PASSED [ 35%] tests/test_guarded_eval.py::test_dict_literal PASSED [ 35%] tests/test_guarded_eval.py::test_list_literal PASSED [ 35%] tests/test_guarded_eval.py::test_set_literal PASSED [ 35%] tests/test_guarded_eval.py::test_evaluates_if_expression PASSED [ 35%] tests/test_guarded_eval.py::test_object PASSED [ 35%] tests/test_guarded_eval.py::test_number_attributes[int.numerator-numerator] PASSED [ 35%] tests/test_guarded_eval.py::test_number_attributes[float.is_integer-is_integer] PASSED [ 35%] tests/test_guarded_eval.py::test_number_attributes[complex.real-real] PASSED [ 35%] tests/test_guarded_eval.py::test_method_descriptor PASSED [ 35%] tests/test_guarded_eval.py::test_evaluates_calls[data0-data.index(2)-1-True] PASSED [ 35%] tests/test_guarded_eval.py::test_evaluates_calls[data1-data.keys().isdisjoint({})-True-True] PASSED [ 35%] tests/test_guarded_eval.py::test_evaluates_calls[data2-data.heap()-HeapType-False] PASSED [ 36%] tests/test_guarded_eval.py::test_evaluates_calls[data3-data.copy()-StringAnnotation-False] PASSED [ 36%] tests/test_guarded_eval.py::test_evaluates_calls[data4-data()-HeapType-False] PASSED [ 36%] tests/test_guarded_eval.py::test_evaluates_calls[data5-data()-frozenset-False] PASSED [ 36%] tests/test_guarded_eval.py::test_evaluates_calls[HeapType-data()-HeapType-False] PASSED [ 36%] tests/test_guarded_eval.py::test_evaluates_calls[InitReturnsFrozenset-data()-frozenset-False] PASSED [ 36%] tests/test_guarded_eval.py::test_evaluates_calls[data8-data.__class__()-HeapType-False] PASSED [ 36%] tests/test_guarded_eval.py::test_evaluates_calls[data9-data.custom_int_type()-int-False] PASSED [ 36%] tests/test_guarded_eval.py::test_evaluates_calls[data10-data.custom_heap_type()-HeapType-False] PASSED [ 36%] tests/test_guarded_eval.py::test_evaluates_calls[data11-data.int_type_alias()-int-False] PASSED [ 36%] tests/test_guarded_eval.py::test_evaluates_calls[data12-data.heap_type_alias()-HeapType-False] PASSED [ 36%] tests/test_guarded_eval.py::test_evaluates_calls[data13-data.self()-SpecialTyping-False] PASSED [ 36%] tests/test_guarded_eval.py::test_evaluates_calls[data14-data.literal()-False-True] PASSED [ 36%] tests/test_guarded_eval.py::test_evaluates_calls[data15-data.literal_string()-str-False] PASSED [ 36%] tests/test_guarded_eval.py::test_evaluates_calls[data16-data.any_str('a')-str-False] PASSED [ 36%] tests/test_guarded_eval.py::test_evaluates_calls[data17-data.any_str(b'a')-bytes-False] PASSED [ 36%] tests/test_guarded_eval.py::test_evaluates_calls[data18-data.with_kwargs(b=3)-int-False] PASSED [ 36%] tests/test_guarded_eval.py::test_evaluates_calls[data19-data.annotated()-float-False] PASSED [ 36%] tests/test_guarded_eval.py::test_evaluates_calls[data20-data.annotated_self()-SpecialTyping-False] PASSED [ 36%] tests/test_guarded_eval.py::test_evaluates_calls[data21-data.int_type_guard()-int-False] PASSED [ 36%] tests/test_guarded_eval.py::test_evaluates_calls[HasStaticMethod-data.static_method()-HeapType-False] PASSED [ 36%] tests/test_guarded_eval.py::test_mocks_attributes_of_call_results[data0-data.optional_float()-expected_attributes0] PASSED [ 36%] tests/test_guarded_eval.py::test_mocks_attributes_of_call_results[data1-data.union_str_and_int()-expected_attributes1] PASSED [ 36%] tests/test_guarded_eval.py::test_mocks_attributes_of_call_results[data2-data.protocol()-expected_attributes2] PASSED [ 36%] tests/test_guarded_eval.py::test_mocks_attributes_of_call_results[data3-data.typed_dict()-expected_attributes3] PASSED [ 36%] tests/test_guarded_eval.py::test_mocks_items_of_call_results[data0-data.typed_dict()-expected_items0] PASSED [ 36%] tests/test_guarded_eval.py::test_mock_class_and_func_instances[instance = TypedClass()\ninstance.test_method()-bool] PASSED [ 36%] tests/test_guarded_eval.py::test_mock_class_and_func_instances[def func() -> int:\n pass\nfunc()-int] PASSED [ 36%] tests/test_guarded_eval.py::test_mock_class_and_func_instances[class NotYetDefined:\n def method(self) -> str:\n pass\ninstance = NotYetDefined()\ninstance.method()-str] PASSED [ 36%] tests/test_guarded_eval.py::test_mock_class_and_func_instances[class NotYetDefined:\n def method(self, argument) -> int:\n pass\ninstance = NotYetDefined()\ninstance.method()-int] PASSED [ 37%] tests/test_guarded_eval.py::test_mock_class_and_func_instances[class NotYetDefined:\n @property\n def my_prop(self) -> int:\n pass\ninstance = NotYetDefined()\ninstance.my_prop-int] PASSED [ 37%] tests/test_guarded_eval.py::test_mock_class_and_func_instances[class NotYetDefined:\n @unkown_decorator\n @property\n def my_prop(self) -> int:\n pass\ninstance = NotYetDefined()\ninstance.my_prop-int] PASSED [ 37%] tests/test_guarded_eval.py::test_mock_class_and_func_instances[class NotYetDefined:\n attribute = 42\ninstance = NotYetDefined()\ninstance.attribute-int] PASSED [ 37%] tests/test_guarded_eval.py::test_mock_class_and_func_instances[class NotYetDefined:\n def any_str(self, argument: AnyStr) -> AnyStr:\n pass\ninstance = NotYetDefined()\ninstance.any_str(b'test')-bytes] PASSED [ 37%] tests/test_guarded_eval.py::test_mock_class_and_func_instances[class NotYetDefined:\n def any_str(self, argument: AnyStr) -> AnyStr:\n pass\ninstance = NotYetDefined()\ninstance.any_str('test')-str] PASSED [ 37%] tests/test_guarded_eval.py::test_mock_class_and_func_instances[async def async_func():\n return []\n(await async_func())-list] PASSED [ 37%] tests/test_guarded_eval.py::test_mock_class_and_func_instances[make_list = lambda:[]\nmake_list()-list] PASSED [ 37%] tests/test_guarded_eval.py::test_is_type_annotation[int-True] PASSED [ 37%] tests/test_guarded_eval.py::test_is_type_annotation[str-True] PASSED [ 37%] tests/test_guarded_eval.py::test_is_type_annotation[list-True0] PASSED [ 37%] tests/test_guarded_eval.py::test_is_type_annotation[list-True1] PASSED [ 37%] tests/test_guarded_eval.py::test_is_type_annotation[dict-True] PASSED [ 37%] tests/test_guarded_eval.py::test_is_type_annotation[Union-True0] PASSED [ 37%] tests/test_guarded_eval.py::test_is_type_annotation[Union-True1] PASSED [ 37%] tests/test_guarded_eval.py::test_is_type_annotation[AnyStr-True] PASSED [ 37%] tests/test_guarded_eval.py::test_is_type_annotation[T-True] PASSED [ 37%] tests/test_guarded_eval.py::test_is_type_annotation[Callable-True] PASSED [ 37%] tests/test_guarded_eval.py::test_is_type_annotation[Literal-True] PASSED [ 37%] tests/test_guarded_eval.py::test_is_type_annotation[Any-True] PASSED [ 37%] tests/test_guarded_eval.py::test_is_type_annotation[Union-True2] PASSED [ 37%] tests/test_guarded_eval.py::test_is_type_annotation[List-True] PASSED [ 37%] tests/test_guarded_eval.py::test_is_type_annotation[42-False] PASSED [ 37%] tests/test_guarded_eval.py::test_is_type_annotation[string-False] PASSED [ 37%] tests/test_guarded_eval.py::test_is_type_annotation[annotation16-False] PASSED [ 37%] tests/test_guarded_eval.py::test_is_type_annotation[None-False] PASSED [ 37%] tests/test_guarded_eval.py::test_evaluates_assignments[a = True\na-bool] PASSED [ 37%] tests/test_guarded_eval.py::test_evaluates_assignments[a, b, c = 1, 'b', 3.0\na-int] PASSED [ 37%] tests/test_guarded_eval.py::test_evaluates_assignments[a, b, c = 1, 'b', 3.0\nb-str] PASSED [ 37%] tests/test_guarded_eval.py::test_evaluates_assignments[a, b, c = 1, 'b', 3.0\nc-float] PASSED [ 37%] tests/test_guarded_eval.py::test_evaluates_assignments[a, *rest = 1, 'b', 3.0\na-int] PASSED [ 38%] tests/test_guarded_eval.py::test_evaluates_assignments[a, *rest = 1, 'b', 3.0\nrest-list] PASSED [ 38%] tests/test_guarded_eval.py::test_evaluates_type_assignments[a: Literal[True]\na-True-equals] PASSED [ 38%] tests/test_guarded_eval.py::test_evaluates_type_assignments[a: bool\na-bool-isinstance] PASSED [ 38%] tests/test_guarded_eval.py::test_evaluates_type_assignments[a: str\na-str-isinstance] PASSED [ 38%] tests/test_guarded_eval.py::test_evaluates_type_assignments[a: list[str]\na-list-quacks_like] PASSED [ 38%] tests/test_guarded_eval.py::test_evaluates_type_assignments[a: list[str]\na[0]-str-quacks_like] PASSED [ 38%] tests/test_guarded_eval.py::test_evaluates_type_assignments[a: list[str]\na[999]-str-quacks_like] PASSED [ 38%] tests/test_guarded_eval.py::test_evaluates_type_assignments[a: set[str]\na-set-quacks_like] PASSED [ 38%] tests/test_guarded_eval.py::test_evaluates_type_assignments[a: tuple[str, int]\na-tuple-isinstance] PASSED [ 38%] tests/test_guarded_eval.py::test_evaluates_type_assignments[a: tuple[str, int]\na[0]-str-isinstance] PASSED [ 38%] tests/test_guarded_eval.py::test_evaluates_type_assignments[a: tuple[str, int]\na[1]-int-isinstance] PASSED [ 38%] tests/test_guarded_eval.py::test_rejects_calls_with_side_effects[data0-data.append(4)] PASSED [ 38%] tests/test_guarded_eval.py::test_rejects_calls_with_side_effects[data1-data.update()] PASSED [ 38%] tests/test_guarded_eval.py::test_evaluates_complex_cases[context0-(1\n+\n1)-2] PASSED [ 38%] tests/test_guarded_eval.py::test_evaluates_complex_cases[context0-list(range(10))[-1:]-expected1] PASSED [ 38%] tests/test_guarded_eval.py::test_evaluates_complex_cases[context0-list(range(20))[3:-2:3]-expected2] PASSED [ 38%] tests/test_guarded_eval.py::test_evaluates_complex_cases[context1-(1\n+\n1)-2] PASSED [ 38%] tests/test_guarded_eval.py::test_evaluates_complex_cases[context1-list(range(10))[-1:]-expected1] PASSED [ 38%] tests/test_guarded_eval.py::test_evaluates_complex_cases[context1-list(range(20))[3:-2:3]-expected2] PASSED [ 38%] tests/test_guarded_eval.py::test_evaluates_complex_cases[context2-(1\n+\n1)-2] PASSED [ 38%] tests/test_guarded_eval.py::test_evaluates_complex_cases[context2-list(range(10))[-1:]-expected1] PASSED [ 38%] tests/test_guarded_eval.py::test_evaluates_complex_cases[context2-list(range(20))[3:-2:3]-expected2] PASSED [ 38%] tests/test_guarded_eval.py::test_evaluates_literals[context0-1-1] PASSED [ 38%] tests/test_guarded_eval.py::test_evaluates_literals[context0-1.0-1.0] PASSED [ 38%] tests/test_guarded_eval.py::test_evaluates_literals[context0-0xdeedbeef-3740122863] PASSED [ 38%] tests/test_guarded_eval.py::test_evaluates_literals[context0-True-True] PASSED [ 38%] tests/test_guarded_eval.py::test_evaluates_literals[context0-None-None] PASSED [ 38%] tests/test_guarded_eval.py::test_evaluates_literals[context0-{}-expected5] PASSED [ 38%] tests/test_guarded_eval.py::test_evaluates_literals[context0-[]-expected6] PASSED [ 39%] tests/test_guarded_eval.py::test_evaluates_literals[context1-1-1] PASSED [ 39%] tests/test_guarded_eval.py::test_evaluates_literals[context1-1.0-1.0] PASSED [ 39%] tests/test_guarded_eval.py::test_evaluates_literals[context1-0xdeedbeef-3740122863] PASSED [ 39%] tests/test_guarded_eval.py::test_evaluates_literals[context1-True-True] PASSED [ 39%] tests/test_guarded_eval.py::test_evaluates_literals[context1-None-None] PASSED [ 39%] tests/test_guarded_eval.py::test_evaluates_literals[context1-{}-expected5] PASSED [ 39%] tests/test_guarded_eval.py::test_evaluates_literals[context1-[]-expected6] PASSED [ 39%] tests/test_guarded_eval.py::test_evaluates_literals[context2-1-1] PASSED [ 39%] tests/test_guarded_eval.py::test_evaluates_literals[context2-1.0-1.0] PASSED [ 39%] tests/test_guarded_eval.py::test_evaluates_literals[context2-0xdeedbeef-3740122863] PASSED [ 39%] tests/test_guarded_eval.py::test_evaluates_literals[context2-True-True] PASSED [ 39%] tests/test_guarded_eval.py::test_evaluates_literals[context2-None-None] PASSED [ 39%] tests/test_guarded_eval.py::test_evaluates_literals[context2-{}-expected5] PASSED [ 39%] tests/test_guarded_eval.py::test_evaluates_literals[context2-[]-expected6] PASSED [ 39%] tests/test_guarded_eval.py::test_evaluates_literals[context3-1-1] PASSED [ 39%] tests/test_guarded_eval.py::test_evaluates_literals[context3-1.0-1.0] PASSED [ 39%] tests/test_guarded_eval.py::test_evaluates_literals[context3-0xdeedbeef-3740122863] PASSED [ 39%] tests/test_guarded_eval.py::test_evaluates_literals[context3-True-True] PASSED [ 39%] tests/test_guarded_eval.py::test_evaluates_literals[context3-None-None] PASSED [ 39%] tests/test_guarded_eval.py::test_evaluates_literals[context3-{}-expected5] PASSED [ 39%] tests/test_guarded_eval.py::test_evaluates_literals[context3-[]-expected6] PASSED [ 39%] tests/test_guarded_eval.py::test_evaluates_unary_operations[context0--5--5] PASSED [ 39%] tests/test_guarded_eval.py::test_evaluates_unary_operations[context0-+5-5] PASSED [ 39%] tests/test_guarded_eval.py::test_evaluates_unary_operations[context0-~5--6] PASSED [ 39%] tests/test_guarded_eval.py::test_evaluates_unary_operations[context1--5--5] PASSED [ 39%] tests/test_guarded_eval.py::test_evaluates_unary_operations[context1-+5-5] PASSED [ 39%] tests/test_guarded_eval.py::test_evaluates_unary_operations[context1-~5--6] PASSED [ 39%] tests/test_guarded_eval.py::test_evaluates_unary_operations[context2--5--5] PASSED [ 39%] tests/test_guarded_eval.py::test_evaluates_unary_operations[context2-+5-5] PASSED [ 40%] tests/test_guarded_eval.py::test_evaluates_unary_operations[context2-~5--6] PASSED [ 40%] tests/test_guarded_eval.py::test_evaluates_binary_operations[context0-1 + 1-2] PASSED [ 40%] tests/test_guarded_eval.py::test_evaluates_binary_operations[context0-3 - 1-2] PASSED [ 40%] tests/test_guarded_eval.py::test_evaluates_binary_operations[context0-2 * 3-6] PASSED [ 40%] tests/test_guarded_eval.py::test_evaluates_binary_operations[context0-5 // 2-2] PASSED [ 40%] tests/test_guarded_eval.py::test_evaluates_binary_operations[context0-5 / 2-2.5] PASSED [ 40%] tests/test_guarded_eval.py::test_evaluates_binary_operations[context0-5**2-25] PASSED [ 40%] tests/test_guarded_eval.py::test_evaluates_binary_operations[context0-2 >> 1-1] PASSED [ 40%] tests/test_guarded_eval.py::test_evaluates_binary_operations[context0-2 << 1-4] PASSED [ 40%] tests/test_guarded_eval.py::test_evaluates_binary_operations[context0-1 | 2-3] PASSED [ 40%] tests/test_guarded_eval.py::test_evaluates_binary_operations[context0-1 & 1-1] PASSED [ 40%] tests/test_guarded_eval.py::test_evaluates_binary_operations[context0-1 & 2-0] PASSED [ 40%] tests/test_guarded_eval.py::test_evaluates_binary_operations[context1-1 + 1-2] PASSED [ 40%] tests/test_guarded_eval.py::test_evaluates_binary_operations[context1-3 - 1-2] PASSED [ 40%] tests/test_guarded_eval.py::test_evaluates_binary_operations[context1-2 * 3-6] PASSED [ 40%] tests/test_guarded_eval.py::test_evaluates_binary_operations[context1-5 // 2-2] PASSED [ 40%] tests/test_guarded_eval.py::test_evaluates_binary_operations[context1-5 / 2-2.5] PASSED [ 40%] tests/test_guarded_eval.py::test_evaluates_binary_operations[context1-5**2-25] PASSED [ 40%] tests/test_guarded_eval.py::test_evaluates_binary_operations[context1-2 >> 1-1] PASSED [ 40%] tests/test_guarded_eval.py::test_evaluates_binary_operations[context1-2 << 1-4] PASSED [ 40%] tests/test_guarded_eval.py::test_evaluates_binary_operations[context1-1 | 2-3] PASSED [ 40%] tests/test_guarded_eval.py::test_evaluates_binary_operations[context1-1 & 1-1] PASSED [ 40%] tests/test_guarded_eval.py::test_evaluates_binary_operations[context1-1 & 2-0] PASSED [ 40%] tests/test_guarded_eval.py::test_evaluates_binary_operations[context2-1 + 1-2] PASSED [ 40%] tests/test_guarded_eval.py::test_evaluates_binary_operations[context2-3 - 1-2] PASSED [ 40%] tests/test_guarded_eval.py::test_evaluates_binary_operations[context2-2 * 3-6] PASSED [ 40%] tests/test_guarded_eval.py::test_evaluates_binary_operations[context2-5 // 2-2] PASSED [ 40%] tests/test_guarded_eval.py::test_evaluates_binary_operations[context2-5 / 2-2.5] PASSED [ 40%] tests/test_guarded_eval.py::test_evaluates_binary_operations[context2-5**2-25] PASSED [ 40%] tests/test_guarded_eval.py::test_evaluates_binary_operations[context2-2 >> 1-1] PASSED [ 41%] tests/test_guarded_eval.py::test_evaluates_binary_operations[context2-2 << 1-4] PASSED [ 41%] tests/test_guarded_eval.py::test_evaluates_binary_operations[context2-1 | 2-3] PASSED [ 41%] tests/test_guarded_eval.py::test_evaluates_binary_operations[context2-1 & 1-1] PASSED [ 41%] tests/test_guarded_eval.py::test_evaluates_binary_operations[context2-1 & 2-0] PASSED [ 41%] tests/test_guarded_eval.py::test_evaluates_comparisons[context0-2 > 1-True] PASSED [ 41%] tests/test_guarded_eval.py::test_evaluates_comparisons[context0-2 < 1-False] PASSED [ 41%] tests/test_guarded_eval.py::test_evaluates_comparisons[context0-2 <= 1-False] PASSED [ 41%] tests/test_guarded_eval.py::test_evaluates_comparisons[context0-2 <= 2-True] PASSED [ 41%] tests/test_guarded_eval.py::test_evaluates_comparisons[context0-1 >= 2-False] PASSED [ 41%] tests/test_guarded_eval.py::test_evaluates_comparisons[context0-2 >= 2-True] PASSED [ 41%] tests/test_guarded_eval.py::test_evaluates_comparisons[context0-2 == 2-True] PASSED [ 41%] tests/test_guarded_eval.py::test_evaluates_comparisons[context0-1 == 2-False] PASSED [ 41%] tests/test_guarded_eval.py::test_evaluates_comparisons[context0-1 != 2-True] PASSED [ 41%] tests/test_guarded_eval.py::test_evaluates_comparisons[context0-1 != 1-False] PASSED [ 41%] tests/test_guarded_eval.py::test_evaluates_comparisons[context0-1 < 4 < 3-False] PASSED [ 41%] tests/test_guarded_eval.py::test_evaluates_comparisons[context0-(1 < 4) < 3-True] PASSED [ 41%] tests/test_guarded_eval.py::test_evaluates_comparisons[context0-4 > 3 > 2 > 1-True] PASSED [ 41%] tests/test_guarded_eval.py::test_evaluates_comparisons[context0-4 > 3 > 2 > 9-False] PASSED [ 41%] tests/test_guarded_eval.py::test_evaluates_comparisons[context0-1 < 2 < 3 < 4-True] PASSED [ 41%] tests/test_guarded_eval.py::test_evaluates_comparisons[context0-9 < 2 < 3 < 4-False] PASSED [ 41%] tests/test_guarded_eval.py::test_evaluates_comparisons[context0-1 < 2 > 1 > 0 > -1 < 1-True] PASSED [ 41%] tests/test_guarded_eval.py::test_evaluates_comparisons[context0-1 in [1] in [[1]]-True] PASSED [ 41%] tests/test_guarded_eval.py::test_evaluates_comparisons[context0-1 in [1] in [[2]]-False] PASSED [ 41%] tests/test_guarded_eval.py::test_evaluates_comparisons[context0-1 in [1]-True] PASSED [ 41%] tests/test_guarded_eval.py::test_evaluates_comparisons[context0-0 in [1]-False] PASSED [ 41%] tests/test_guarded_eval.py::test_evaluates_comparisons[context0-1 not in [1]-False] PASSED [ 41%] tests/test_guarded_eval.py::test_evaluates_comparisons[context0-0 not in [1]-True] PASSED [ 41%] tests/test_guarded_eval.py::test_evaluates_comparisons[context0-True is True-True] PASSED [ 41%] tests/test_guarded_eval.py::test_evaluates_comparisons[context0-False is False-True] PASSED [ 42%] tests/test_guarded_eval.py::test_evaluates_comparisons[context0-True is False-False] PASSED [ 42%] tests/test_guarded_eval.py::test_evaluates_comparisons[context0-True is not True-False] PASSED [ 42%] tests/test_guarded_eval.py::test_evaluates_comparisons[context0-False is not True-True] PASSED [ 42%] tests/test_guarded_eval.py::test_evaluates_comparisons[context1-2 > 1-True] PASSED [ 42%] tests/test_guarded_eval.py::test_evaluates_comparisons[context1-2 < 1-False] PASSED [ 42%] tests/test_guarded_eval.py::test_evaluates_comparisons[context1-2 <= 1-False] PASSED [ 42%] tests/test_guarded_eval.py::test_evaluates_comparisons[context1-2 <= 2-True] PASSED [ 42%] tests/test_guarded_eval.py::test_evaluates_comparisons[context1-1 >= 2-False] PASSED [ 42%] tests/test_guarded_eval.py::test_evaluates_comparisons[context1-2 >= 2-True] PASSED [ 42%] tests/test_guarded_eval.py::test_evaluates_comparisons[context1-2 == 2-True] PASSED [ 42%] tests/test_guarded_eval.py::test_evaluates_comparisons[context1-1 == 2-False] PASSED [ 42%] tests/test_guarded_eval.py::test_evaluates_comparisons[context1-1 != 2-True] PASSED [ 42%] tests/test_guarded_eval.py::test_evaluates_comparisons[context1-1 != 1-False] PASSED [ 42%] tests/test_guarded_eval.py::test_evaluates_comparisons[context1-1 < 4 < 3-False] PASSED [ 42%] tests/test_guarded_eval.py::test_evaluates_comparisons[context1-(1 < 4) < 3-True] PASSED [ 42%] tests/test_guarded_eval.py::test_evaluates_comparisons[context1-4 > 3 > 2 > 1-True] PASSED [ 42%] tests/test_guarded_eval.py::test_evaluates_comparisons[context1-4 > 3 > 2 > 9-False] PASSED [ 42%] tests/test_guarded_eval.py::test_evaluates_comparisons[context1-1 < 2 < 3 < 4-True] PASSED [ 42%] tests/test_guarded_eval.py::test_evaluates_comparisons[context1-9 < 2 < 3 < 4-False] PASSED [ 42%] tests/test_guarded_eval.py::test_evaluates_comparisons[context1-1 < 2 > 1 > 0 > -1 < 1-True] PASSED [ 42%] tests/test_guarded_eval.py::test_evaluates_comparisons[context1-1 in [1] in [[1]]-True] PASSED [ 42%] tests/test_guarded_eval.py::test_evaluates_comparisons[context1-1 in [1] in [[2]]-False] PASSED [ 42%] tests/test_guarded_eval.py::test_evaluates_comparisons[context1-1 in [1]-True] PASSED [ 42%] tests/test_guarded_eval.py::test_evaluates_comparisons[context1-0 in [1]-False] PASSED [ 42%] tests/test_guarded_eval.py::test_evaluates_comparisons[context1-1 not in [1]-False] PASSED [ 42%] tests/test_guarded_eval.py::test_evaluates_comparisons[context1-0 not in [1]-True] PASSED [ 42%] tests/test_guarded_eval.py::test_evaluates_comparisons[context1-True is True-True] PASSED [ 42%] tests/test_guarded_eval.py::test_evaluates_comparisons[context1-False is False-True] PASSED [ 42%] tests/test_guarded_eval.py::test_evaluates_comparisons[context1-True is False-False] PASSED [ 42%] tests/test_guarded_eval.py::test_evaluates_comparisons[context1-True is not True-False] PASSED [ 43%] tests/test_guarded_eval.py::test_evaluates_comparisons[context1-False is not True-True] PASSED [ 43%] tests/test_guarded_eval.py::test_evaluates_comparisons[context2-2 > 1-True] PASSED [ 43%] tests/test_guarded_eval.py::test_evaluates_comparisons[context2-2 < 1-False] PASSED [ 43%] tests/test_guarded_eval.py::test_evaluates_comparisons[context2-2 <= 1-False] PASSED [ 43%] tests/test_guarded_eval.py::test_evaluates_comparisons[context2-2 <= 2-True] PASSED [ 43%] tests/test_guarded_eval.py::test_evaluates_comparisons[context2-1 >= 2-False] PASSED [ 43%] tests/test_guarded_eval.py::test_evaluates_comparisons[context2-2 >= 2-True] PASSED [ 43%] tests/test_guarded_eval.py::test_evaluates_comparisons[context2-2 == 2-True] PASSED [ 43%] tests/test_guarded_eval.py::test_evaluates_comparisons[context2-1 == 2-False] PASSED [ 43%] tests/test_guarded_eval.py::test_evaluates_comparisons[context2-1 != 2-True] PASSED [ 43%] tests/test_guarded_eval.py::test_evaluates_comparisons[context2-1 != 1-False] PASSED [ 43%] tests/test_guarded_eval.py::test_evaluates_comparisons[context2-1 < 4 < 3-False] PASSED [ 43%] tests/test_guarded_eval.py::test_evaluates_comparisons[context2-(1 < 4) < 3-True] PASSED [ 43%] tests/test_guarded_eval.py::test_evaluates_comparisons[context2-4 > 3 > 2 > 1-True] PASSED [ 43%] tests/test_guarded_eval.py::test_evaluates_comparisons[context2-4 > 3 > 2 > 9-False] PASSED [ 43%] tests/test_guarded_eval.py::test_evaluates_comparisons[context2-1 < 2 < 3 < 4-True] PASSED [ 43%] tests/test_guarded_eval.py::test_evaluates_comparisons[context2-9 < 2 < 3 < 4-False] PASSED [ 43%] tests/test_guarded_eval.py::test_evaluates_comparisons[context2-1 < 2 > 1 > 0 > -1 < 1-True] PASSED [ 43%] tests/test_guarded_eval.py::test_evaluates_comparisons[context2-1 in [1] in [[1]]-True] PASSED [ 43%] tests/test_guarded_eval.py::test_evaluates_comparisons[context2-1 in [1] in [[2]]-False] PASSED [ 43%] tests/test_guarded_eval.py::test_evaluates_comparisons[context2-1 in [1]-True] PASSED [ 43%] tests/test_guarded_eval.py::test_evaluates_comparisons[context2-0 in [1]-False] PASSED [ 43%] tests/test_guarded_eval.py::test_evaluates_comparisons[context2-1 not in [1]-False] PASSED [ 43%] tests/test_guarded_eval.py::test_evaluates_comparisons[context2-0 not in [1]-True] PASSED [ 43%] tests/test_guarded_eval.py::test_evaluates_comparisons[context2-True is True-True] PASSED [ 43%] tests/test_guarded_eval.py::test_evaluates_comparisons[context2-False is False-True] PASSED [ 43%] tests/test_guarded_eval.py::test_evaluates_comparisons[context2-True is False-False] PASSED [ 43%] tests/test_guarded_eval.py::test_evaluates_comparisons[context2-True is not True-False] PASSED [ 43%] tests/test_guarded_eval.py::test_evaluates_comparisons[context2-False is not True-True] PASSED [ 44%] tests/test_guarded_eval.py::test_guards_comparisons PASSED [ 44%] tests/test_guarded_eval.py::test_guards_unary_operations PASSED [ 44%] tests/test_guarded_eval.py::test_guards_binary_operations PASSED [ 44%] tests/test_guarded_eval.py::test_guards_attributes PASSED [ 44%] tests/test_guarded_eval.py::test_access_builtins[context0] PASSED [ 44%] tests/test_guarded_eval.py::test_access_builtins[context1] PASSED [ 44%] tests/test_guarded_eval.py::test_access_builtins[context2] PASSED [ 44%] tests/test_guarded_eval.py::test_access_builtins[context3] PASSED [ 44%] tests/test_guarded_eval.py::test_access_builtins_fails PASSED [ 44%] tests/test_guarded_eval.py::test_rejects_forbidden PASSED [ 44%] tests/test_guarded_eval.py::test_guards_locals_and_globals PASSED [ 44%] tests/test_guarded_eval.py::test_access_locals_and_globals PASSED [ 44%] tests/test_guarded_eval.py::test_does_not_modify_namespace[context0-x += 1] PASSED [ 44%] tests/test_guarded_eval.py::test_does_not_modify_namespace[context0-del x] PASSED [ 44%] tests/test_guarded_eval.py::test_does_not_modify_namespace[context1-x += 1] PASSED [ 44%] tests/test_guarded_eval.py::test_does_not_modify_namespace[context1-del x] PASSED [ 44%] tests/test_guarded_eval.py::test_does_not_modify_namespace[context2-x += 1] PASSED [ 44%] tests/test_guarded_eval.py::test_does_not_modify_namespace[context2-del x] PASSED [ 44%] tests/test_guarded_eval.py::test_does_not_populate_namespace[context0-def test(): pass] PASSED [ 44%] tests/test_guarded_eval.py::test_does_not_populate_namespace[context0-class test: pass] PASSED [ 44%] tests/test_guarded_eval.py::test_does_not_populate_namespace[context0-import ast as test] PASSED [ 44%] tests/test_guarded_eval.py::test_does_not_populate_namespace[context1-def test(): pass] PASSED [ 44%] tests/test_guarded_eval.py::test_does_not_populate_namespace[context1-class test: pass] PASSED [ 44%] tests/test_guarded_eval.py::test_does_not_populate_namespace[context1-import ast as test] PASSED [ 44%] tests/test_guarded_eval.py::test_does_not_populate_namespace[context2-def test(): pass] PASSED [ 44%] tests/test_guarded_eval.py::test_does_not_populate_namespace[context2-class test: pass] PASSED [ 44%] tests/test_guarded_eval.py::test_does_not_populate_namespace[context2-import ast as test] PASSED [ 44%] tests/test_guarded_eval.py::test_subscript PASSED [ 44%] tests/test_guarded_eval.py::test_unbind_method PASSED [ 44%] tests/test_guarded_eval.py::test_assumption_instance_attr_do_not_matter PASSED [ 45%] tests/test_guarded_eval.py::test_assumption_named_tuples_share_getitem PASSED [ 45%] tests/test_guarded_eval.py::test_module_access PASSED [ 45%] tests/test_guarded_eval.py::test_autoimport_module PASSED [ 45%] tests/test_guarded_eval.py::test_autoimport_deep_module PASSED [ 45%] tests/test_guisupport.py::test_get_app_wx_creates_new_app PASSED [ 45%] tests/test_guisupport.py::test_get_app_wx_keeps_explicit_redirect PASSED [ 45%] tests/test_guisupport.py::test_get_app_wx_returns_existing_app PASSED [ 45%] tests/test_guisupport.py::test_is_event_loop_running_wx_active_eventloop PASSED [ 45%] tests/test_guisupport.py::test_is_event_loop_running_wx_in_event_loop_attribute PASSED [ 45%] tests/test_guisupport.py::test_is_event_loop_running_wx_queries_toolkit PASSED [ 45%] tests/test_guisupport.py::test_is_event_loop_running_wx_falls_through_for_other_eventloop PASSED [ 45%] tests/test_guisupport.py::test_is_event_loop_running_wx_default_app PASSED [ 45%] tests/test_guisupport.py::test_start_event_loop_wx_runs_main_loop PASSED [ 45%] tests/test_guisupport.py::test_start_event_loop_wx_already_running PASSED [ 45%] tests/test_guisupport.py::test_start_event_loop_wx_default_app PASSED [ 45%] tests/test_guisupport.py::test_get_app_qt4_creates_new_app PASSED [ 45%] tests/test_guisupport.py::test_get_app_qt4_custom_args PASSED [ 45%] tests/test_guisupport.py::test_get_app_qt4_returns_existing_app PASSED [ 45%] tests/test_guisupport.py::test_is_event_loop_running_qt4_active_eventloop PASSED [ 45%] tests/test_guisupport.py::test_is_event_loop_running_qt4_in_event_loop_attribute PASSED [ 45%] tests/test_guisupport.py::test_is_event_loop_running_qt4_no_attribute PASSED [ 45%] tests/test_guisupport.py::test_is_event_loop_running_qt4_default_app PASSED [ 45%] tests/test_guisupport.py::test_start_event_loop_qt4_runs_exec PASSED [ 45%] tests/test_guisupport.py::test_start_event_loop_qt4_already_running PASSED [ 45%] tests/test_guisupport.py::test_start_event_loop_qt4_default_app PASSED [ 45%] tests/test_handlers.py::test_handlers_I[1-"no change"-"no change"] PASSED [ 45%] tests/test_handlers.py::test_handlers_I[1-lsmagic-get_ipython().run_line_magic('lsmagic', '')] PASSED [ 45%] tests/test_handlers.py::test_handlers_I[0-len "abc"-len "abc"] PASSED [ 45%] tests/test_handlers.py::test_handlers_I[0-autocallable-autocallable()] PASSED [ 46%] tests/test_handlers.py::test_handlers_I[0-autocallable()-autocallable()] PASSED [ 46%] tests/test_handlers.py::test_handlers_I[1-len "abc"-len("abc")] PASSED [ 46%] tests/test_handlers.py::test_handlers_I[1-len "abc";-len("abc");] PASSED [ 46%] tests/test_handlers.py::test_handlers_I[1-len [1,2]-len([1,2])] PASSED [ 46%] tests/test_handlers.py::test_handlers_I[1-call_idx [1]-call_idx [1]] PASSED [ 46%] tests/test_handlers.py::test_handlers_I[1-call_idx 1-call_idx(1)] PASSED [ 46%] tests/test_handlers.py::test_handlers_I[1-len-len] PASSED [ 46%] tests/test_handlers.py::test_handlers_I[2-len "abc"-len("abc")] PASSED [ 46%] tests/test_handlers.py::test_handlers_I[2-len "abc";-len("abc");] PASSED [ 46%] tests/test_handlers.py::test_handlers_I[2-len [1,2]-len([1,2])] PASSED [ 46%] tests/test_handlers.py::test_handlers_I[2-call_idx [1]-call_idx [1]] PASSED [ 46%] tests/test_handlers.py::test_handlers_I[2-call_idx 1-call_idx(1)] PASSED [ 46%] tests/test_handlers.py::test_handlers_I[2-len-len()] PASSED [ 46%] tests/test_handlers.py::test_handlers_I[0-Callable[[int], None]-Callable[[int], None]] PASSED [ 46%] tests/test_handlers.py::test_handlers_I[1-Callable[[int], None]-Callable[[int], None]0] PASSED [ 46%] tests/test_handlers.py::test_handlers_I[1-Callable[[int], None]-Callable[[int], None]1] PASSED [ 46%] tests/test_help.py::test_ipython_help PASSED [ 46%] tests/test_help.py::test_profile_help PASSED [ 46%] tests/test_help.py::test_profile_list_help PASSED [ 46%] tests/test_help.py::test_profile_create_help PASSED [ 46%] tests/test_help.py::test_locate_help PASSED [ 46%] tests/test_help.py::test_locate_profile_help PASSED [ 46%] tests/test_help.py::test_trust_help PASSED [ 46%] tests/test_history.py::test_proper_default_encoding PASSED [ 46%] tests/test_history.py::test_history PASSED [ 46%] tests/test_history.py::test_extract_hist_ranges PASSED [ 46%] tests/test_history.py::test_extract_hist_ranges_empty_str PASSED [ 46%] tests/test_history.py::test_misc_extract_hist_ranges[21-23-expected0-Just line numbers] PASSED [ 46%] tests/test_history.py::test_misc_extract_hist_ranges[25--expected1-Line start, no end] PASSED [ 46%] tests/test_history.py::test_misc_extract_hist_ranges[~4/-expected2-with trailing slash] PASSED [ 47%] tests/test_history.py::test_misc_extract_hist_ranges[~4/1-5-expected3-with line ranges and trailing slash] PASSED [ 47%] tests/test_history.py::test_misc_extract_hist_ranges[~4/1- ~5/ ~6/1-3-expected4-multiple sessions with mixed syntax] PASSED [ 47%] tests/test_history.py::test_misc_extract_hist_ranges[~10/ ~20/-expected5-larger session numbers] PASSED [ 47%] tests/test_history.py::test_misc_extract_hist_ranges[~1/-expected6-single digit session with slash] PASSED [ 47%] tests/test_history.py::test_misc_extract_hist_ranges[~2/-expected7-backward compatibility with slash] PASSED [ 47%] tests/test_history.py::test_misc_extract_hist_ranges[4--expected8-from line 4 onward in current session] PASSED [ 47%] tests/test_history.py::test_misc_extract_hist_ranges[~4/4--expected9-from line 4 onward in session 4] PASSED [ 47%] tests/test_history.py::test_misc_extract_hist_ranges[2/4--expected10-from line 4 onward in session 2] PASSED [ 47%] tests/test_history.py::test_misc_extract_hist_ranges[~5/10--expected11-from line 10 onward in session 5] PASSED [ 47%] tests/test_history.py::test_magic_rerun PASSED [ 47%] tests/test_history.py::test_timestamp_type PASSED [ 47%] tests/test_history.py::test_hist_file_config PASSED [ 47%] tests/test_history.py::test_histmanager_memory_fallback_reopens_db PASSED [ 47%] tests/test_history.py::test_histmanager_thread_start_failure_uses_memory PASSED [ 47%] tests/test_history.py::test_saving_thread_closes_db_on_normal_stop PASSED [ 47%] tests/test_history.py::test_saving_thread_closes_db_on_error PASSED [ 47%] tests/test_history.py::test_history_manager_context_manager PASSED [ 47%] tests/test_history.py::test_history_accessor_context_manager PASSED [ 47%] tests/test_history.py::test_histmanager_disabled PASSED [ 47%] tests/test_history.py::test_get_tail_session_awareness PASSED [ 47%] tests/test_history.py::test_calling_run_cell PASSED [ 47%] tests/test_history.py::test_history_magic_output_and_prompts PASSED [ 47%] tests/test_history.py::test_history_magic_grep PASSED [ 47%] tests/test_history.py::test_history_magic_limit PASSED [ 47%] tests/test_history.py::test_history_magic_range_with_pattern PASSED [ 47%] tests/test_history.py::test_history_magic_to_file PASSED [ 47%] tests/test_history.py::test_recall_magic PASSED [ 47%] tests/test_history.py::test_rerun_magic_bad_options PASSED [ 47%] tests/test_history.py::test_rerun_magic_executes PASSED [ 48%] tests/test_history.py::test_history_trim_cli[subcommand0-2] PASSED [ 48%] tests/test_history.py::test_history_trim_cli[subcommand1-0] PASSED [ 48%] tests/test_historyapp.py::test_history_trim PASSED [ 48%] tests/test_historyapp.py::test_history_trim_noop PASSED [ 48%] tests/test_historyapp.py::test_history_trim_backup PASSED [ 48%] tests/test_historyapp.py::test_history_trim_dodges_existing_new_file PASSED [ 48%] tests/test_historyapp.py::test_history_clear_force PASSED [ 48%] tests/test_historyapp.py::test_history_clear_answer_no PASSED [ 48%] tests/test_historyapp.py::test_history_clear_answer_yes PASSED [ 48%] tests/test_historyapp.py::test_history_app_no_subcommand PASSED [ 48%] tests/test_historyapp.py::test_history_app_trim_subcommand PASSED [ 48%] tests/test_hooks.py::test_command_chain_dispatcher_ff PASSED [ 48%] tests/test_hooks.py::test_command_chain_dispatcher_fofo PASSED [ 48%] tests/test_hooks.py::test_command_chain_dispatcher_eq_priority PASSED [ 48%] tests/test_hooks.py::test_command_chain_dispatcher_empty_raises_trynext PASSED [ 48%] tests/test_hooks.py::test_command_chain_dispatcher_str PASSED [ 48%] tests/test_hooks.py::test_command_chain_dispatcher_iter PASSED [ 48%] tests/test_hooks.py::test_command_chain_dispatcher_sorted_by_priority[priorities0-expected_order0] PASSED [ 48%] tests/test_hooks.py::test_command_chain_dispatcher_sorted_by_priority[priorities1-expected_order1] PASSED [ 48%] tests/test_hooks.py::test_command_chain_dispatcher_sorted_by_priority[priorities2-expected_order2] PASSED [ 48%] tests/test_hooks.py::test_command_chain_dispatcher_first_okay_stops_chain PASSED [ 48%] tests/test_hooks.py::test_command_chain_dispatcher_passes_args PASSED [ 48%] tests/test_imports.py::test_import_backgroundjobs PASSED [ 48%] tests/test_imports.py::test_import_deepreload PASSED [ 48%] tests/test_imports.py::test_import_demo PASSED [ 48%] tests/test_importstring.py::test_import_plain PASSED [ 48%] tests/test_importstring.py::test_import_nested PASSED [ 48%] tests/test_importstring.py::test_import_raises PASSED [ 48%] tests/test_importstring.py::test_import_returns_correct_object[os-os] PASSED [ 48%] tests/test_importstring.py::test_import_returns_correct_object[sys-sys] PASSED [ 49%] tests/test_importstring.py::test_import_returns_correct_object[os.path-posixpath] PASSED [ 49%] tests/test_importstring.py::test_import_invalid_raises_importerror[IPython.nonexistent_module] PASSED [ 49%] tests/test_importstring.py::test_import_invalid_raises_importerror[completely.fake.module] PASSED [ 49%] tests/test_importstring.py::test_import_invalid_raises_importerror[os.nonexistent_attribute] PASSED [ 49%] tests/test_importstring.py::test_import_deep_nested PASSED [ 49%] tests/test_importstring.py::test_import_result_is_callable_for_functions PASSED [ 49%] tests/test_inputtransformer2.py::test_check_make_token_by_line_never_ends_empty PASSED [ 49%] tests/test_inputtransformer2.py::test_continued_line PASSED [ 49%] tests/test_inputtransformer2.py::test_find_assign_magic PASSED [ 49%] tests/test_inputtransformer2.py::test_transform_assign_magic PASSED [ 49%] tests/test_inputtransformer2.py::test_find_assign_system PASSED [ 49%] tests/test_inputtransformer2.py::test_transform_assign_system PASSED [ 49%] tests/test_inputtransformer2.py::test_find_magic_escape PASSED [ 49%] tests/test_inputtransformer2.py::test_transform_magic_escape PASSED [ 49%] tests/test_inputtransformer2.py::test_find_autocalls[case0] PASSED [ 49%] tests/test_inputtransformer2.py::test_find_autocalls[case1] PASSED [ 49%] tests/test_inputtransformer2.py::test_find_autocalls[case2] PASSED [ 49%] tests/test_inputtransformer2.py::test_transform_autocall[case0] PASSED [ 49%] tests/test_inputtransformer2.py::test_transform_autocall[case1] PASSED [ 49%] tests/test_inputtransformer2.py::test_transform_autocall[case2] PASSED [ 49%] tests/test_inputtransformer2.py::test_find_help PASSED [ 49%] tests/test_inputtransformer2.py::test_transform_help PASSED [ 49%] tests/test_inputtransformer2.py::test_find_assign_op_dedent PASSED [ 49%] tests/test_inputtransformer2.py::test_check_complete_param[a = 1-complete-None] PASSED [ 49%] tests/test_inputtransformer2.py::test_check_complete_param[for a in range(5):-incomplete-4] PASSED [ 49%] tests/test_inputtransformer2.py::test_check_complete_param[for a in range(5):\n if a > 0:-incomplete-8] PASSED [ 49%] tests/test_inputtransformer2.py::test_check_complete_param[raise = 2-invalid-None] PASSED [ 49%] tests/test_inputtransformer2.py::test_check_complete_param[0b12-invalid-None] PASSED [ 49%] tests/test_inputtransformer2.py::test_check_complete_param[0o1239-invalid-None] PASSED [ 50%] tests/test_inputtransformer2.py::test_check_complete_param[0x123g-invalid-None] PASSED [ 50%] tests/test_inputtransformer2.py::test_check_complete_param[0b12+1-invalid-None] PASSED [ 50%] tests/test_inputtransformer2.py::test_check_complete_param[(0b12)-invalid-None] PASSED [ 50%] tests/test_inputtransformer2.py::test_check_complete_param[a = [1,\n2,-incomplete-0] PASSED [ 50%] tests/test_inputtransformer2.py::test_check_complete_param[(\n))-invalid-None] PASSED [ 50%] tests/test_inputtransformer2.py::test_check_complete_param[\\\r\n-incomplete-0] PASSED [ 50%] tests/test_inputtransformer2.py::test_check_complete_param[a = '''\n hi-incomplete-3] PASSED [ 50%] tests/test_inputtransformer2.py::test_check_complete_param[def a():\n x=1\n global x-invalid-None] PASSED [ 50%] tests/test_inputtransformer2.py::test_check_complete_param[a \\ -invalid-None] PASSED [ 50%] tests/test_inputtransformer2.py::test_check_complete_param[1\\\n+2-complete-None] PASSED [ 50%] tests/test_inputtransformer2.py::test_check_complete PASSED [ 50%] tests/test_inputtransformer2.py::test_check_complete_II[def foo():\n """-expected0] PASSED [ 50%] tests/test_inputtransformer2.py::test_check_complete_II[async with example:\n pass-expected1] PASSED [ 50%] tests/test_inputtransformer2.py::test_check_complete_II[async with example:\n pass\n -expected2] PASSED [ 50%] tests/test_inputtransformer2.py::test_check_complete_invalidates_sunken_brackets[)-expected0] PASSED [ 50%] tests/test_inputtransformer2.py::test_check_complete_invalidates_sunken_brackets[]-expected1] PASSED [ 50%] tests/test_inputtransformer2.py::test_check_complete_invalidates_sunken_brackets[}-expected2] PASSED [ 50%] tests/test_inputtransformer2.py::test_check_complete_invalidates_sunken_brackets[)(-expected3] PASSED [ 50%] tests/test_inputtransformer2.py::test_check_complete_invalidates_sunken_brackets[][-expected4] PASSED [ 50%] tests/test_inputtransformer2.py::test_check_complete_invalidates_sunken_brackets[}{-expected5] PASSED [ 50%] tests/test_inputtransformer2.py::test_check_complete_invalidates_sunken_brackets[]()(-expected6] PASSED [ 50%] tests/test_inputtransformer2.py::test_check_complete_invalidates_sunken_brackets[())(-expected7] PASSED [ 50%] tests/test_inputtransformer2.py::test_check_complete_invalidates_sunken_brackets[)[](-expected8] PASSED [ 50%] tests/test_inputtransformer2.py::test_check_complete_invalidates_sunken_brackets[()](-expected9] PASSED [ 50%] tests/test_inputtransformer2.py::test_null_cleanup_transformer PASSED [ 50%] tests/test_inputtransformer2.py::test_side_effects_I PASSED [ 50%] tests/test_inputtransformer2.py::test_side_effects_II PASSED [ 50%] tests/test_inputtransformer2_line.py::test_cell_magic PASSED [ 50%] tests/test_inputtransformer2_line.py::test_classic_prompt[>>> for a in range(5):\n... print(a)\n-for a in range(5):\n print(a)\n] PASSED [ 51%] tests/test_inputtransformer2_line.py::test_classic_prompt[for a in range(5):\n... print(a)\n... print(a ** 2)\n-for a in range(5):\n... print(a)\n... print(a ** 2)\n] PASSED [ 51%] tests/test_inputtransformer2_line.py::test_classic_prompt[>>> """\n... This code is inside a triple-quoted string.\n... >>> for a in range(5):\n... ... print(a)\n... """\n>>> for a in range(5):\n... print(a)\n->>> """\n... This code is inside a triple-quoted string.\n... >>> for a in range(5):\n... ... print(a)\n... """\nfor a in range(5):\n print(a)\n] PASSED [ 51%] tests/test_inputtransformer2_line.py::test_classic_prompt[>>> print(1)\n-print(1)\n] PASSED [ 51%] tests/test_inputtransformer2_line.py::test_classic_prompt[ >>> print(1)\n-print(1)\n] PASSED [ 51%] tests/test_inputtransformer2_line.py::test_classic_prompt[>>> for i in range(2):\n... print(i)\n-for i in range(2):\n print(i)\n] PASSED [ 51%] tests/test_inputtransformer2_line.py::test_classic_prompt[... print(1)\n-... print(1)\n] PASSED [ 51%] tests/test_inputtransformer2_line.py::test_classic_prompt[>>> source = (\n... r'''\n... hello\n...\n... world\n... ''')\n-source = (\n r'''\n hello\n\n world\n ''')\n] PASSED [ 51%] tests/test_inputtransformer2_line.py::test_classic_prompt[>>> source = (\n>>> r'''\n>>> hello\n>>>\n>>> world\n>>> ''')\n-source = (\n r'''\n hello\n\n world\n ''')\n] PASSED [ 51%] tests/test_inputtransformer2_line.py::test_classic_prompt[def example():\n '''\n>>> literal_doctest_prompt()\n... literal_continuation_prompt()\n '''\n-def example():\n '''\n>>> literal_doctest_prompt()\n... literal_continuation_prompt()\n '''\n] PASSED [ 51%] tests/test_inputtransformer2_line.py::test_ipython_prompt[In [1]: for a in range(5):\n ...: print(a)\n-for a in range(5):\n print(a)\n] PASSED [ 51%] tests/test_inputtransformer2_line.py::test_ipython_prompt[for a in range(5):\n ...: print(a)\n ...: print(a ** 2)\n-for a in range(5):\n print(a)\n print(a ** 2)\n] PASSED [ 51%] tests/test_inputtransformer2_line.py::test_ipython_prompt[[ins] In [11]: def a():\n ...: 123\n ...:\n ...: 123\n-def a():\n 123\n\n123\n] PASSED [ 51%] tests/test_inputtransformer2_line.py::test_ipython_prompt[[nav] In [11]: def a():\n ...: 123\n ...:\n ...: 123\n-def a():\n 123\n\n123\n] PASSED [ 51%] tests/test_inputtransformer2_line.py::test_leading_indent[ if True:\n a = 3\n-if True:\n a = 3\n] PASSED [ 51%] tests/test_inputtransformer2_line.py::test_leading_indent[\tif True:\n\t\tb = 4\n-if True:\n\tb = 4\n] PASSED [ 51%] tests/test_inputtransformer2_line.py::test_leading_indent_comment[ # comment\nif True:\n a = 3\n- # comment\nif True:\n a = 3\n] PASSED [ 51%] tests/test_inputtransformer2_line.py::test_leading_indent_comment[\t# comment\nif True:\n\tb = 4\n-\t# comment\nif True:\n\tb = 4\n] PASSED [ 51%] tests/test_inputtransformer2_line.py::test_leading_indent_comment[ # comment\n x = 1\n print(x)\n-# comment\nx = 1\nprint(x)\n] PASSED [ 51%] tests/test_inputtransformer2_line.py::test_leading_empty_lines[ \t\n\nif True:\n a = 3\n\nb = 4\n-if True:\n a = 3\n\nb = 4\n] PASSED [ 51%] tests/test_inputtransformer2_line.py::test_leading_empty_lines[ \t\n\n- \t\n\n] PASSED [ 51%] tests/test_inputtransformer2_line.py::test_crlf_magic PASSED [ 51%] tests/test_interactiveshell.py::test_stream_performance FAILED [ 51%] tests/test_interactiveshell.py::test_naked_string_cells PASSED [ 51%] tests/test_interactiveshell.py::test_run_empty_cell PASSED [ 51%] tests/test_interactiveshell.py::test_run_cell_multiline PASSED [ 51%] tests/test_interactiveshell.py::test_multiline_string_cells PASSED [ 51%] tests/test_interactiveshell.py::test_dont_cache_with_semicolon PASSED [ 51%] tests/test_interactiveshell.py::test_syntax_error PASSED [ 51%] tests/test_interactiveshell.py::test_open_standard_input_stream PASSED [ 51%] tests/test_interactiveshell.py::test_open_standard_output_stream PASSED [ 52%] tests/test_interactiveshell.py::test_open_standard_error_stream PASSED [ 52%] tests/test_interactiveshell.py::test_In_variable PASSED [ 52%] tests/test_interactiveshell.py::test_magic_names_in_string PASSED [ 52%] tests/test_interactiveshell.py::test_trailing_newline PASSED [ 52%] tests/test_interactiveshell.py::test_gh_597 PASSED [ 52%] tests/test_interactiveshell.py::test_future_flags PASSED [ 52%] tests/test_interactiveshell.py::test_can_pickle PASSED [ 52%] tests/test_interactiveshell.py::test_global_ns PASSED [ 52%] tests/test_interactiveshell.py::test_bad_custom_tb PASSED [ 52%] tests/test_interactiveshell.py::test_bad_custom_tb_return PASSED [ 52%] tests/test_interactiveshell.py::test_drop_by_id PASSED [ 52%] tests/test_interactiveshell.py::test_var_expand PASSED [ 52%] tests/test_interactiveshell.py::test_var_expand_local PASSED [ 52%] tests/test_interactiveshell.py::test_var_expand_self PASSED [ 52%] tests/test_interactiveshell.py::test_bad_var_expand PASSED [ 52%] tests/test_interactiveshell.py::test_silent_postexec PASSED [ 52%] tests/test_interactiveshell.py::test_silent_noadvance PASSED [ 52%] tests/test_interactiveshell.py::test_silent_nodisplayhook PASSED [ 52%] tests/test_interactiveshell.py::test_ofind_line_magic PASSED [ 52%] tests/test_interactiveshell.py::test_ofind_cell_magic PASSED [ 52%] tests/test_interactiveshell.py::test_ofind_property_with_error PASSED [ 52%] tests/test_interactiveshell.py::test_ofind_multiple_attribute_lookups PASSED [ 52%] tests/test_interactiveshell.py::test_ofind_slotted_attributes PASSED [ 52%] tests/test_interactiveshell.py::test_ofind_prefers_property_to_instance_level_attribute PASSED [ 52%] tests/test_interactiveshell.py::test_custom_syntaxerror_exception PASSED [ 52%] tests/test_interactiveshell.py::test_custom_exception PASSED [ 52%] tests/test_interactiveshell.py::test_showtraceback_with_surrogates PASSED [ 52%] tests/test_interactiveshell.py::test_mktempfile PASSED [ 52%] tests/test_interactiveshell.py::test_new_main_mod PASSED [ 53%] tests/test_interactiveshell.py::test_get_exception_only PASSED [ 53%] tests/test_interactiveshell.py::test_inspect_text PASSED [ 53%] tests/test_interactiveshell.py::test_last_execution_result PASSED [ 53%] tests/test_interactiveshell.py::test_reset_aliasing PASSED [ 53%] tests/test_interactiveshell.py::test_safe_execfile_nonascii_path PASSED [ 53%] tests/test_interactiveshell.py::TestSystemRaw::test_exit_code_ok PASSED [ 53%] tests/test_interactiveshell.py::TestSystemRaw::test_exit_code_error PASSED [ 53%] tests/test_interactiveshell.py::TestSystemRaw::test_exit_code_signal PASSED [ 53%] tests/test_interactiveshell.py::TestSystemRaw::test_exit_code_signal_csh PASSED [ 53%] tests/test_interactiveshell.py::TestSystemRaw::test_1 PASSED [ 53%] tests/test_interactiveshell.py::TestSystemRaw::test_control_c PASSED [ 53%] tests/test_interactiveshell.py::test_magic_warnings[pip] PASSED [ 53%] tests/test_interactiveshell.py::test_magic_warnings[conda] PASSED [ 53%] tests/test_interactiveshell.py::test_magic_warnings[cd] PASSED [ 53%] tests/test_interactiveshell.py::TestSystemPipedExitCode::test_exit_code_signal_csh PASSED [ 53%] tests/test_interactiveshell.py::TestSystemPipedExitCode::test_exit_code_ok PASSED [ 53%] tests/test_interactiveshell.py::TestSystemPipedExitCode::test_exit_code_error PASSED [ 53%] tests/test_interactiveshell.py::TestSystemPipedExitCode::test_exit_code_signal PASSED [ 53%] tests/test_interactiveshell.py::test_extraneous_loads PASSED [ 53%] tests/test_interactiveshell.py::test_ast_transform_non_int_const PASSED [ 53%] tests/test_interactiveshell.py::test_ast_transform_run_cell PASSED [ 53%] tests/test_interactiveshell.py::test_ast_transform_timeit PASSED [ 53%] tests/test_interactiveshell.py::test_ast_transform_time PASSED [ 53%] tests/test_interactiveshell.py::test_ast_transform_macro PASSED [ 53%] tests/test_interactiveshell.py::test_transform_only_once PASSED [ 53%] tests/test_interactiveshell.py::test_ast_transform2_run_cell PASSED [ 53%] tests/test_interactiveshell.py::test_ast_transform2_run_cell_non_int PASSED [ 53%] tests/test_interactiveshell.py::test_ast_transform2_timeit PASSED [ 53%] tests/test_interactiveshell.py::test_ast_transform_error_unregistering PASSED [ 53%] tests/test_interactiveshell.py::test_input_rejection PASSED [ 54%] tests/test_interactiveshell.py::test__IPYTHON__ PASSED [ 54%] tests/test_interactiveshell.py::test_user_variables PASSED [ 54%] tests/test_interactiveshell.py::test_user_expression PASSED [ 54%] tests/test_interactiveshell.py::test_syntaxerror_input_transformer PASSED [ 54%] tests/test_interactiveshell.py::test_warning_suppression PASSED [ 54%] tests/test_interactiveshell.py::test_deprecation_warning PASSED [ 54%] tests/test_interactiveshell.py::test_no_dep PASSED [ 54%] tests/test_interactiveshell.py::test_custom_exc_count PASSED [ 54%] tests/test_interactiveshell.py::test_run_cell_async PASSED [ 54%] tests/test_interactiveshell.py::test_run_cell_await PASSED [ 54%] tests/test_interactiveshell.py::test_run_cell_asyncio_run PASSED [ 54%] tests/test_interactiveshell.py::test_should_run_async PASSED [ 54%] tests/test_interactiveshell.py::test_set_custom_completer PASSED [ 54%] tests/test_interactiveshell.py::test_set_show_tracebacks_none PASSED [ 54%] tests/test_interactiveshell.py::test_set_show_tracebacks_noop PASSED [ 54%] tests/test_interactiveshell.py::test_enable_gui_tk_simple_prompt_message PASSED [ 54%] tests/test_interactiveshell.py::test_enable_gui_osx SKIPPED (This te...) [ 54%] tests/test_interactiveshell.py::TestCellMeta::test_cell_meta PASSED [ 54%] tests/test_interactiveshell.py::TestCellMeta::test_cell_meta_default_arg PASSED [ 54%] tests/test_interactiveshell.py::TestCellMeta::test_cell_meta_error PASSED [ 54%] tests/test_interactiveshell.py::TestCellMeta::test_cell_meta_listener PASSED [ 54%] tests/test_interactiveshell.py::TestCellMeta::test_cell_meta_nested_dict PASSED [ 54%] tests/test_interactivshell.py::test_changing_provider PASSED [ 54%] tests/test_interactivshell.py::test_elide PASSED [ 54%] tests/test_interactivshell.py::test_elide_typed_normal PASSED [ 54%] tests/test_interactivshell.py::test_elide_typed_short_match PASSED [ 54%] tests/test_interactivshell.py::test_elide_typed_no_match PASSED [ 54%] tests/test_interactivshell.py::test_adjust_completion_text_based_on_context[arg1=-func1(a=)-7-arg1] PASSED [ 54%] tests/test_interactivshell.py::test_adjust_completion_text_based_on_context[arg1=-func1(a)-7-arg1=] PASSED [ 55%] tests/test_interactivshell.py::test_adjust_completion_text_based_on_context[arg1=-func1(a-7-arg1=] PASSED [ 55%] tests/test_interactivshell.py::test_adjust_completion_text_based_on_context[%magic-func1(a=)-7-%magic] PASSED [ 55%] tests/test_interactivshell.py::test_adjust_completion_text_based_on_context[func2-func1(a=)-7-func2] PASSED [ 55%] tests/test_interactivshell.py::test_inputtransformer_syntaxerror PASSED [ 55%] tests/test_interactivshell.py::test_repl_not_plain_text PASSED [ 55%] tests/test_interactivshell.py::test_paste_magics_blankline PASSED [ 55%] tests/test_io.py::test_tee_simple PASSED [ 55%] tests/test_io.py::test_tee_channel[stdout] PASSED [ 55%] tests/test_io.py::test_tee_channel[stderr] PASSED [ 55%] tests/test_io.py::test_tee_invalid_channel PASSED [ 55%] tests/test_io.py::test_capture_output PASSED [ 55%] tests/test_io.py::test_capture_output_empty PASSED [ 55%] tests/test_io.py::test_tee_isatty PASSED [ 55%] tests/test_ipapp.py::test_code_to_run PASSED [ 55%] tests/test_ipapp.py::test_code_to_run_error_exit_code PASSED [ 55%] tests/test_ipapp.py::test_file_to_run PASSED [ 55%] tests/test_ipapp.py::test_file_to_run_gets_sys_argv PASSED [ 55%] tests/test_ipapp.py::test_file_to_run_directory PASSED [ 55%] tests/test_ipapp.py::test_missing_file_exits_with_2 PASSED [ 55%] tests/test_ipapp.py::test_file_raising_error_exits_with_1 PASSED [ 55%] tests/test_ipapp.py::test_module_to_run PASSED [ 55%] tests/test_ipapp.py::test_force_interact PASSED [ 55%] tests/test_ipapp.py::test_exec_lines_run_and_are_hidden PASSED [ 55%] tests/test_ipapp.py::test_exec_lines_error_continues PASSED [ 55%] tests/test_ipapp.py::test_exec_files PASSED [ 55%] tests/test_ipapp.py::test_exec_files_missing_is_only_a_warning PASSED [ 55%] tests/test_ipapp.py::test_startup_files_and_pythonstartup PASSED [ 55%] tests/test_ipapp.py::test_startup_file_error_is_not_fatal PASSED [ 55%] tests/test_ipapp.py::test_exec_files_error_is_not_fatal PASSED [ 55%] tests/test_ipapp.py::test_missing_extension_is_only_a_warning PASSED [ 56%] tests/test_ipapp.py::test_missing_extension_reraise PASSED [ 56%] tests/test_ipapp.py::test_banner_displayed PASSED [ 56%] tests/test_ipapp.py::test_no_banner PASSED [ 56%] tests/test_ipapp.py::test_quick_flag_skips_config_files PASSED [ 56%] tests/test_ipapp.py::test_locate_subcommand PASSED [ 56%] tests/test_ipapp.py::test_locate_app_direct PASSED [ 56%] tests/test_ipapp.py::test_locate_profile_subcommand PASSED [ 56%] tests/test_ipapp.py::test_init_gui_pylab_gui PASSED [ 56%] tests/test_ipapp.py::test_init_gui_pylab_matplotlib_auto PASSED [ 56%] tests/test_ipapp.py::test_init_gui_pylab_pylab PASSED [ 56%] tests/test_ipapp.py::test_init_gui_pylab_import_error PASSED [ 56%] tests/test_ipapp.py::test_init_gui_pylab_other_error PASSED [ 56%] tests/test_ipapp.py::test_pylab_inline_replaced_by_auto PASSED [ 56%] tests/test_ipapp.py::test_crash_handler_report PASSED [ 56%] tests/test_ipapp.py::test_crash_handler_report_without_shell PASSED [ 56%] tests/test_ipapp.py::test_load_default_config PASSED [ 56%] tests/test_ipapp.py::test_load_default_config_default_dir PASSED [ 56%] tests/test_iplib.py::tests.test_iplib.doctest_tb_context PASSED [ 56%] tests/test_iplib.py::tests.test_iplib.doctest_tb_plain PASSED [ 56%] tests/test_iplib.py::tests.test_iplib.doctest_tb_sysexit PASSED [ 56%] tests/test_iplib.py::tests.test_iplib.doctest_tb_verbose PASSED [ 56%] tests/test_iplib.py::test_reset PASSED [ 56%] tests/test_iplib.py::test_run_cell PASSED [ 56%] tests/test_iplib.py::test_db PASSED [ 56%] tests/test_ipstruct.py::test_init_empty PASSED [ 56%] tests/test_ipstruct.py::test_init_kwargs PASSED [ 56%] tests/test_ipstruct.py::test_init_from_dict PASSED [ 56%] tests/test_ipstruct.py::test_init_from_struct PASSED [ 56%] tests/test_ipstruct.py::test_setattr_getattr PASSED [ 57%] tests/test_ipstruct.py::test_getattr_missing_raises PASSED [ 57%] tests/test_ipstruct.py::test_setattr_protects_class_members PASSED [ 57%] tests/test_ipstruct.py::test_setitem_new_key PASSED [ 57%] tests/test_ipstruct.py::test_allow_new_attr_false_blocks_new_keys PASSED [ 57%] tests/test_ipstruct.py::test_allow_new_attr_re_enable PASSED [ 57%] tests/test_ipstruct.py::test_iadd_merge PASSED [ 57%] tests/test_ipstruct.py::test_add_returns_new_struct PASSED [ 57%] tests/test_ipstruct.py::test_sub_removes_keys PASSED [ 57%] tests/test_ipstruct.py::test_isub PASSED [ 57%] tests/test_ipstruct.py::test_copy PASSED [ 57%] tests/test_ipstruct.py::test_hasattr PASSED [ 57%] tests/test_ipstruct.py::test_merge_default_preserves_existing PASSED [ 57%] tests/test_ipstruct.py::test_merge_with_conflict_solver PASSED [ 57%] tests/test_ipstruct.py::test_dict_method PASSED [ 57%] tests/test_ipunittest.py::tests.test_ipunittest.Foo.ipdt_method PASSED [ 57%] tests/test_ipunittest.py::tests.test_ipunittest.Foo.normaldt_method PASSED [ 57%] tests/test_ipunittest.py::simple_dt::test PASSED [ 57%] tests/test_ipunittest.py::ipdt_flush::test PASSED [ 57%] tests/test_ipunittest.py::ipdt_indented_test::test PASSED [ 57%] tests/test_kitty.py::test_supports_kitty_graphics_handles_stdout_without_callable_isatty PASSED [ 57%] tests/test_kitty.py::test_import_ipython_handles_stdout_without_isatty PASSED [ 57%] tests/test_kitty.py::test_supports_kitty_graphics_handles_psutil_access_denied PASSED [ 57%] tests/test_kitty.py::test_kitty_graphics_forced_on PASSED [ 57%] tests/test_kitty.py::test_kitty_graphics_forced_off PASSED [ 57%] tests/test_kitty.py::test_kitty_graphics_force_true_spellings[1] PASSED [ 57%] tests/test_kitty.py::test_kitty_graphics_force_true_spellings[true] PASSED [ 57%] tests/test_kitty.py::test_kitty_graphics_force_true_spellings[TRUE] PASSED [ 57%] tests/test_kitty.py::test_kitty_graphics_force_false_spellings[0] PASSED [ 57%] tests/test_kitty.py::test_kitty_graphics_force_false_spellings[false] PASSED [ 57%] tests/test_kitty.py::test_kitty_graphics_force_false_spellings[FALSE] PASSED [ 58%] tests/test_kitty.py::test_kitty_graphics_unset_autodetects[] PASSED [ 58%] tests/test_kitty.py::test_kitty_graphics_unset_autodetects[None] PASSED [ 58%] tests/test_kitty.py::test_kitty_graphics_bad_value_warns_and_autodetects PASSED [ 58%] tests/test_kitty.py::test_proc_ancestor_names_walks_up_to_pid_1 PASSED [ 58%] tests/test_kitty.py::test_proc_ancestor_names_handles_names_with_spaces_and_parens PASSED [ 58%] tests/test_kitty.py::test_proc_ancestor_names_stops_when_an_ancestor_is_unreadable PASSED [ 58%] tests/test_kitty.py::test_supports_kitty_graphics_finds_terminal_through_proc PASSED [ 58%] tests/test_kitty.py::test_supports_kitty_graphics_does_not_import_psutil_on_linux PASSED [ 58%] tests/test_latextools.py::test_check_latex_to_png_dvipng_fails_when_no_cmd[latex] PASSED [ 58%] tests/test_latextools.py::test_check_latex_to_png_dvipng_fails_when_no_cmd[dvipng] PASSED [ 58%] tests/test_latextools.py::test_latex_to_png_dvipng_runs[$$x^2$$-False] PASSED [ 58%] tests/test_latextools.py::test_latex_to_png_dvipng_runs[x^2-True] PASSED [ 58%] tests/test_latextools.py::test_latex_to_png_mpl_runs[s_wrap0-no_op] PASSED [ 58%] tests/test_latextools.py::test_latex_to_png_mpl_runs[s_wrap0-patch_latextool] PASSED [ 58%] tests/test_latextools.py::test_latex_to_png_mpl_runs[s_wrap1-no_op] PASSED [ 58%] tests/test_latextools.py::test_latex_to_png_mpl_runs[s_wrap1-patch_latextool] PASSED [ 58%] tests/test_latextools.py::test_latex_to_html PASSED [ 58%] tests/test_latextools.py::test_genelatex_no_wrap PASSED [ 58%] tests/test_latextools.py::test_genelatex_wrap_with_breqn PASSED [ 58%] tests/test_latextools.py::test_genelatex_wrap_without_breqn PASSED [ 58%] tests/test_latextools.py::test_latex_to_png_color PASSED [ 58%] tests/test_latextools.py::test_latex_to_png_invalid_hex_colors PASSED [ 58%] tests/test_logger.py::test_logstart_inaccessible_file PASSED [ 58%] tests/test_logger.py::test_logstart_unicode PASSED [ 58%] tests/test_logger.py::test_invalid_logmode_raises PASSED [ 58%] tests/test_logger.py::test_logstart_twice_raises PASSED [ 58%] tests/test_logger.py::test_logstart_over_mode_truncates PASSED [ 58%] tests/test_logger.py::test_logstart_append_mode PASSED [ 58%] tests/test_logger.py::test_logstart_backup_mode PASSED [ 59%] tests/test_logger.py::test_logstart_global_mode PASSED [ 59%] tests/test_logger.py::test_logstart_rotate_mode PASSED [ 59%] tests/test_logger.py::test_log_write_timestamp PASSED [ 59%] tests/test_logger.py::test_log_write_output PASSED [ 59%] tests/test_logger.py::test_log_write_output_disabled PASSED [ 59%] tests/test_logger.py::test_log_write_inactive PASSED [ 59%] tests/test_logger.py::test_log_raw_input PASSED [ 59%] tests/test_logger.py::test_log_write_flush_failure PASSED [ 59%] tests/test_logger.py::test_switch_log_invalid_value PASSED [ 59%] tests/test_logger.py::test_switch_log_not_started PASSED [ 59%] tests/test_logger.py::test_switch_log_toggle PASSED [ 59%] tests/test_logger.py::test_logstate PASSED [ 59%] tests/test_logger.py::test_logstop_not_started PASSED [ 59%] tests/test_logger.py::test_close_log_alias PASSED [ 59%] tests/test_logger_unit.py::test_default_logmode PASSED [ 59%] tests/test_logger_unit.py::test_valid_logmode[append] PASSED [ 59%] tests/test_logger_unit.py::test_valid_logmode[backup] PASSED [ 59%] tests/test_logger_unit.py::test_valid_logmode[global] PASSED [ 59%] tests/test_logger_unit.py::test_valid_logmode[over] PASSED [ 59%] tests/test_logger_unit.py::test_valid_logmode[rotate] PASSED [ 59%] tests/test_logger_unit.py::test_invalid_logmode_raises PASSED [ 59%] tests/test_logger_unit.py::test_initial_log_active_is_false PASSED [ 59%] tests/test_logger_unit.py::test_initial_logfile_is_none PASSED [ 59%] tests/test_logger_unit.py::test_initial_log_raw_input_is_false PASSED [ 59%] tests/test_logger_unit.py::test_initial_log_output_is_false PASSED [ 59%] tests/test_logger_unit.py::test_initial_timestamp_is_false PASSED [ 59%] tests/test_logger_unit.py::test_logstart_over_mode PASSED [ 59%] tests/test_logger_unit.py::test_logstart_raises_if_already_active PASSED [ 59%] tests/test_logger_unit.py::test_logstop_closes_file PASSED [ 60%] tests/test_logger_unit.py::test_logstop_when_not_started_does_not_raise PASSED [ 60%] tests/test_logger_unit.py::test_logstart_append_mode PASSED [ 60%] tests/test_logger_unit.py::test_log_write_when_inactive_does_nothing PASSED [ 60%] tests/test_logger_unit.py::test_log_write_input PASSED [ 60%] tests/test_logger_unit.py::test_log_write_output PASSED [ 60%] tests/test_logger_unit.py::test_log_write_output_suppressed_when_flag_off PASSED [ 60%] tests/test_logger_unit.py::test_switch_log_toggles_active PASSED [ 60%] tests/test_logger_unit.py::test_switch_log_when_no_file_prints_message PASSED [ 60%] tests/test_logger_unit.py::test_logstate_when_inactive PASSED [ 60%] tests/test_logger_unit.py::test_logstate_when_active PASSED [ 60%] tests/test_macro.py::test_macro_stores_code_with_trailing_newline PASSED [ 60%] tests/test_macro.py::test_macro_multiline PASSED [ 60%] tests/test_macro.py::test_macro_strips_coding_declaration PASSED [ 60%] tests/test_macro.py::test_macro_strips_coding_declaration_equals_form PASSED [ 60%] tests/test_macro.py::test_macro_strips_coding_declaration_equals_style_spaced PASSED [ 60%] tests/test_macro.py::test_macro_empty_string PASSED [ 60%] tests/test_macro.py::test_macro_str PASSED [ 60%] tests/test_macro.py::test_macro_repr PASSED [ 60%] tests/test_macro.py::test_macro_preserves_code[x = 1] PASSED [ 60%] tests/test_macro.py::test_macro_preserves_code[import os\nprint(os.getcwd())] PASSED [ 60%] tests/test_macro.py::test_macro_preserves_code[for i in range(10):\n print(i)] PASSED [ 60%] tests/test_macro.py::test_macro_getstate PASSED [ 60%] tests/test_macro.py::test_macro_setstate PASSED [ 60%] tests/test_macro.py::test_macro_pickle_roundtrip PASSED [ 60%] tests/test_macro.py::test_macro_add_macro PASSED [ 60%] tests/test_macro.py::test_macro_add_str PASSED [ 60%] tests/test_macro.py::test_macro_add_invalid_type PASSED [ 60%] tests/test_macro.py::test_macro_runs_in_shell PASSED [ 60%] tests/test_magic.py::tests.test_magic.doctest_hist_f PASSED [ 60%] tests/test_magic.py::tests.test_magic.doctest_hist_op PASSED [ 61%] tests/test_magic.py::tests.test_magic.doctest_precision PASSED [ 61%] tests/test_magic.py::tests.test_magic.doctest_who PASSED [ 61%] tests/test_magic.py::tests.test_magic.test_debug_magic PASSED [ 61%] tests/test_magic.py::tests.test_magic.test_debug_magic_locals PASSED [ 61%] tests/test_magic.py::test_extract_code_ranges PASSED [ 61%] tests/test_magic.py::test_extract_symbols[a-expected0] PASSED [ 61%] tests/test_magic.py::test_extract_symbols[b-expected1] PASSED [ 61%] tests/test_magic.py::test_extract_symbols[A-expected2] PASSED [ 61%] tests/test_magic.py::test_extract_symbols[A,b-expected3] PASSED [ 61%] tests/test_magic.py::test_extract_symbols[A,a-expected4] PASSED [ 61%] tests/test_magic.py::test_extract_symbols[z-expected5] PASSED [ 61%] tests/test_magic.py::test_extract_symbols_raises_exception_with_non_python_code PASSED [ 61%] tests/test_magic.py::test_magic_not_found PASSED [ 61%] tests/test_magic.py::test_cell_magic_not_found PASSED [ 61%] tests/test_magic.py::test_magic_error_status PASSED [ 61%] tests/test_magic.py::test_config PASSED [ 61%] tests/test_magic.py::test_config_available_configs PASSED [ 61%] tests/test_magic.py::test_config_print_class PASSED [ 61%] tests/test_magic.py::test_rehashx PASSED [ 61%] tests/test_magic.py::test_magic_parse_options PASSED [ 61%] tests/test_magic.py::test_magic_parse_long_options PASSED [ 61%] tests/test_magic.py::test_hist_pof PASSED [ 61%] tests/test_magic.py::test_macro PASSED [ 61%] tests/test_magic.py::test_macro_run PASSED [ 61%] tests/test_magic.py::test_magic_magic PASSED [ 61%] tests/test_magic.py::test_numpy_reset_array_undec PASSED [ 61%] tests/test_magic.py::test_reset_out PASSED [ 61%] tests/test_magic.py::test_reset_in PASSED [ 61%] tests/test_magic.py::test_reset_dhist PASSED [ 62%] tests/test_magic.py::test_reset_in_length PASSED [ 62%] tests/test_magic.py::test_reset_redefine PASSED [ 62%] tests/test_magic.py::test_tb_syntaxerror PASSED [ 62%] tests/test_magic.py::test_time PASSED [ 62%] tests/test_magic.py::test_time_no_output_with_semicolon PASSED [ 62%] tests/test_magic.py::test_time_last_not_expression PASSED [ 62%] tests/test_magic.py::test_time2 PASSED [ 62%] tests/test_magic.py::test_time3 PASSED [ 62%] tests/test_magic.py::test_multiline_time PASSED [ 62%] tests/test_magic.py::test_time_local_ns PASSED [ 62%] tests/test_magic.py::test_time_microseconds_display PASSED [ 62%] tests/test_magic.py::test_capture PASSED [ 62%] tests/test_magic.py::test_doctest_mode PASSED [ 62%] tests/test_magic.py::test_parse_options PASSED [ 62%] tests/test_magic.py::test_parse_options_preserve_non_option_string PASSED [ 62%] tests/test_magic.py::test_run_magic_preserve_code_block PASSED [ 62%] tests/test_magic.py::test_dirops PASSED [ 62%] tests/test_magic.py::test_cd_force_quiet PASSED [ 62%] tests/test_magic.py::test_xmode PASSED [ 62%] tests/test_magic.py::test_reset_hard PASSED [ 62%] tests/test_magic.py::test_xdel PASSED [ 62%] tests/test_magic.py::test_whos PASSED [ 62%] tests/test_magic.py::test_whos_longstr[The quick brown fox jumps over the lazy dog-The quick brown fox jumps over the lazy dog] PASSED [ 62%] tests/test_magic.py::test_whos_longstr[The quick brown fox jumps over the lazy dog The quick brown fox jumps over the lazy dog-The quick brown fox jumps<...>x jumps over the lazy dog] PASSED [ 62%] tests/test_magic.py::test_whos_longstr[\nThis is \n\na long\n\nstring\n-\\nThis is \\n\\na long\\n\\nstring\\n] PASSED [ 62%] tests/test_magic.py::test_whos_longstr[\rThis is \r\ra long\r\rstring\r-\\rThis is \\r\\ra long\\r\\rstring\\r] PASSED [ 62%] tests/test_magic.py::test_whos_len_namedtuple PASSED [ 62%] tests/test_magic.py::test_whos_len_pandas PASSED [ 62%] tests/test_magic.py::test_debug_magic PASSED [ 62%] tests/test_magic.py::test_debug_magic_locals PASSED [ 63%] tests/test_magic.py::test_psearch PASSED [ 63%] tests/test_magic.py::test_timeit_shlex PASSED [ 63%] tests/test_magic.py::test_timeit_special_syntax PASSED [ 63%] tests/test_magic.py::test_timeit_return PASSED [ 63%] tests/test_magic.py::test_timeit_save PASSED [ 63%] tests/test_magic.py::test_timeit_quiet PASSED [ 63%] tests/test_magic.py::test_timeit_return_quiet PASSED [ 63%] tests/test_magic.py::test_timeit_invalid_return PASSED [ 63%] tests/test_magic.py::test_timeit_raise_on_interrupt PASSED [ 63%] tests/test_magic.py::test_prun_special_syntax PASSED [ 63%] tests/test_magic.py::test_prun_quotes PASSED [ 63%] tests/test_magic.py::test_extension PASSED [ 63%] tests/test_magic.py::test_notebook_export_json PASSED [ 63%] tests/test_magic.py::test_notebook_export_json_with_output SKIPPED (...) [ 63%] tests/test_magic.py::test_notebook_export_single_display PASSED [ 63%] tests/test_magic.py::test_env PASSED [ 63%] tests/test_magic.py::test_env_secret PASSED [ 63%] tests/test_magic.py::test_env_get_set_simple PASSED [ 63%] tests/test_magic.py::test_env_get_set_complex PASSED [ 63%] tests/test_magic.py::test_env_set_bad_input PASSED [ 63%] tests/test_magic.py::test_env_set_whitespace PASSED [ 63%] tests/test_magic.py::test_cell_magic_func_deco PASSED [ 63%] tests/test_magic.py::test_cell_magic_reg PASSED [ 63%] tests/test_magic.py::test_cell_magic_class PASSED [ 63%] tests/test_magic.py::test_cell_magic_class2 PASSED [ 63%] tests/test_magic.py::test_file PASSED [ 63%] tests/test_magic.py::test_file_single_quote PASSED [ 63%] tests/test_magic.py::test_file_double_quote PASSED [ 63%] tests/test_magic.py::test_file_var_expand PASSED [ 64%] tests/test_magic.py::test_file_unicode PASSED [ 64%] tests/test_magic.py::test_file_amend PASSED [ 64%] tests/test_magic.py::test_file_spaces PASSED [ 64%] tests/test_magic.py::test_script_config PASSED [ 64%] tests/test_magic.py::test_script_raise_on_interrupt PASSED [ 64%] tests/test_magic.py::test_script_do_not_raise_on_interrupt PASSED [ 64%] tests/test_magic.py::test_script_out PASSED [ 64%] tests/test_magic.py::test_script_out_multiple_lines PASSED [ 64%] tests/test_magic.py::test_script_err PASSED [ 64%] tests/test_magic.py::test_script_out_err PASSED [ 64%] tests/test_magic.py::test_script_bg_out PASSED [ 64%] tests/test_magic.py::test_script_bg_err PASSED [ 64%] tests/test_magic.py::test_script_bg_out_err PASSED [ 64%] tests/test_magic.py::test_script_bg_proc PASSED [ 64%] tests/test_magic.py::test_script_defaults[sh] PASSED [ 64%] tests/test_magic.py::test_script_defaults[bash] PASSED [ 64%] tests/test_magic.py::test_script_defaults[perl] PASSED [ 64%] tests/test_magic.py::test_script_defaults[ruby] SKIPPED (ruby not found) [ 64%] tests/test_magic.py::test_script_streams_continuously FAILED [ 64%] tests/test_magic.py::test_script_streams_multibyte_unicode PASSED [ 64%] tests/test_magic.py::test_line_cell_info PASSED [ 64%] tests/test_magic.py::test_multiple_magics PASSED [ 64%] tests/test_magic.py::test_alias_magic PASSED [ 64%] tests/test_magic.py::test_save PASSED [ 64%] tests/test_magic.py::test_save_with_no_args PASSED [ 64%] tests/test_magic.py::test_store PASSED [ 64%] tests/test_magic.py::test_edit_interactive PASSED [ 64%] tests/test_magic.py::test_edit_cell PASSED [ 64%] tests/test_magic.py::test_edit_fname PASSED [ 64%] tests/test_magic.py::test_bookmark PASSED [ 65%] tests/test_magic.py::test_ls_magic PASSED [ 65%] tests/test_magic.py::test_ls_magic_json PASSED [ 65%] tests/test_magic.py::test_strip_initial_indent PASSED [ 65%] tests/test_magic.py::test_logging_magic_quiet_from_arg PASSED [ 65%] tests/test_magic.py::test_logging_magic_quiet_from_config PASSED [ 65%] tests/test_magic.py::test_logging_magic_not_quiet PASSED [ 65%] tests/test_magic.py::test_time_no_var_expand PASSED [ 65%] tests/test_magic.py::test_timeit_arguments PASSED [ 65%] tests/test_magic.py::test_time_raise_on_interrupt PASSED [ 65%] tests/test_magic.py::test_lazy_magics PASSED [ 65%] tests/test_magic.py::test_run_module_from_import_hook PASSED [ 65%] tests/test_magic_arguments.py::test_magic_arguments PASSED [ 65%] tests/test_magic_table.py::test_builtin_lazy_magics_table_is_accurate PASSED [ 65%] tests/test_magic_table.py::test_no_magic_is_claimed_by_two_classes PASSED [ 65%] tests/test_magic_table.py::test_every_shipped_class_is_in_the_table PASSED [ 65%] tests/test_magic_table.py::test_every_shipped_class_is_importable_from_the_package PASSED [ 65%] tests/test_magic_table.py::test_magics_classes_entries_resolve PASSED [ 65%] tests/test_magic_table.py::test_registered_names_match_the_table PASSED [ 65%] tests/test_magic_table.py::test_configured_script_magics PASSED [ 65%] tests/test_magic_table.py::test_register_lazy_declares_without_importing PASSED [ 65%] tests/test_magic_table.py::test_placeholder_resolves_on_attribute_access PASSED [ 65%] tests/test_magic_table.py::test_register_lazy_validates_the_kind PASSED [ 65%] tests/test_magic_table.py::test_find_drops_a_placeholder_the_class_does_not_deliver PASSED [ 65%] tests/test_magic_table.py::test_a_class_is_only_loaded_once PASSED [ 65%] tests/test_magic_table.py::test_load_all_lazy_magics_skips_extensions PASSED [ 65%] tests/test_magic_table.py::test_load_lazy_trusts_the_placeholder_over_the_trait PASSED [ 65%] tests/test_magic_table.py::test_a_failing_lazy_load_is_retried PASSED [ 65%] tests/test_magic_table.py::test_registry_loads_a_declared_class_on_a_miss PASSED [ 65%] tests/test_magic_table.py::test_lsmagic_docs_does_not_document_the_placeholder PASSED [ 66%] tests/test_magic_table.py::test_completing_a_declared_magic_does_not_crash PASSED [ 66%] tests/test_magic_table.py::test_startup_does_not_import_the_magics_modules PASSED [ 66%] tests/test_magic_terminal.py::test_cpaste PASSED [ 66%] tests/test_magic_terminal.py::test_paste PASSED [ 66%] tests/test_magic_terminal.py::test_paste_pyprompt PASSED [ 66%] tests/test_magic_terminal.py::test_paste_py_multi PASSED [ 66%] tests/test_magic_terminal.py::test_paste_py_multi_r PASSED [ 66%] tests/test_magic_terminal.py::test_paste_email PASSED [ 66%] tests/test_magic_terminal.py::test_paste_email2 PASSED [ 66%] tests/test_magic_terminal.py::test_paste_email_py PASSED [ 66%] tests/test_magic_terminal.py::test_paste_echo PASSED [ 66%] tests/test_magic_terminal.py::test_paste_leading_commas PASSED [ 66%] tests/test_magic_terminal.py::test_paste_trailing_question PASSED [ 66%] tests/test_magics_code.py::test_extract_code_ranges_skips_invalid_tokens PASSED [ 66%] tests/test_magics_code.py::test_strip_initial_indent_blank_lines PASSED [ 66%] tests/test_magics_code.py::test_save_missing_filename PASSED [ 66%] tests/test_magics_code.py::test_save_string_variable PASSED [ 66%] tests/test_magics_code.py::test_save_raw_uses_ipy_extension PASSED [ 66%] tests/test_magics_code.py::test_save_existing_prompt_cancel PASSED [ 66%] tests/test_magics_code.py::test_save_existing_prompt_overwrite PASSED [ 66%] tests/test_magics_code.py::test_save_existing_stdin_not_implemented PASSED [ 66%] tests/test_magics_code.py::test_save_force_overwrite PASSED [ 66%] tests/test_magics_code.py::test_save_append PASSED [ 66%] tests/test_magics_code.py::test_save_bad_target_prints_error PASSED [ 66%] tests/test_magics_code.py::test_pastebin_posts_code PASSED [ 66%] tests/test_magics_code.py::test_pastebin_expiry_not_an_int PASSED [ 66%] tests/test_magics_code.py::test_pastebin_expiry_out_of_range PASSED [ 66%] tests/test_magics_code.py::test_pastebin_missing_code PASSED [ 66%] tests/test_magics_code.py::test_load_file PASSED [ 66%] tests/test_magics_code.py::test_loadpy_alias PASSED [ 67%] tests/test_magics_code.py::test_load_line_range PASSED [ 67%] tests/test_magics_code.py::test_load_symbol PASSED [ 67%] tests/test_magics_code.py::test_load_symbol_not_found_warns PASSED [ 67%] tests/test_magics_code.py::test_load_symbols_not_found_warns_plural PASSED [ 67%] tests/test_magics_code.py::test_load_symbols_non_python_source PASSED [ 67%] tests/test_magics_code.py::test_load_big_file_cancelled PASSED [ 67%] tests/test_magics_code.py::test_load_big_file_confirmed PASSED [ 67%] tests/test_magics_code.py::test_load_big_file_stdin_not_implemented PASSED [ 67%] tests/test_magics_code.py::test_load_big_file_y_flag PASSED [ 67%] tests/test_magics_code.py::test_edit_temp_file_executes PASSED [ 67%] tests/test_magics_code.py::test_edit_file_executes PASSED [ 67%] tests/test_magics_code.py::test_edit_x_does_not_execute PASSED [ 67%] tests/test_magics_code.py::test_edit_filename_with_space_is_quoted PASSED [ 67%] tests/test_magics_code.py::test_edit_raw_option PASSED [ 67%] tests/test_magics_code.py::test_edit_string_variable PASSED [ 67%] tests/test_magics_code.py::test_edit_history_range PASSED [ 67%] tests/test_magics_code.py::test_edit_macro PASSED [ 67%] tests/test_magics_code.py::test_edit_previous PASSED [ 67%] tests/test_magics_code.py::test_edit_nonexistent_warns PASSED [ 67%] tests/test_magics_code.py::test_edit_object_with_source_file PASSED [ 67%] tests/test_magics_code.py::test_edit_object_without_source_warns PASSED [ 67%] tests/test_magics_code.py::test_edit_interactively_defined PASSED [ 67%] tests/test_magics_code.py::test_edit_known_temp_file PASSED [ 67%] tests/test_magics_code.py::test_edit_editor_trynext_warns PASSED [ 67%] tests/test_magics_code.py::test_edit_pasted_block PASSED [ 67%] tests/test_magics_code.py::test_edit_temp_file_deleted_warns PASSED [ 67%] tests/test_magics_packaging.py::test_pip_runs_current_interpreter PASSED [ 67%] tests/test_magics_packaging.py::test_pip_quotes_interpreter_path PASSED [ 67%] tests/test_magics_packaging.py::test_pip_windows_quoting PASSED [ 68%] tests/test_magics_packaging.py::test_uv_runs_current_interpreter PASSED [ 68%] tests/test_magics_packaging.py::test_uv_windows_quoting PASSED [ 68%] tests/test_magics_packaging.py::test_conda_outside_conda_environment_raises PASSED [ 68%] tests/test_magics_packaging.py::test_conda_install_adds_prefix PASSED [ 68%] tests/test_magics_packaging.py::test_conda_env_flag_suppresses_prefix PASSED [ 68%] tests/test_magics_packaging.py::test_conda_adds_yes_when_stdin_disabled PASSED [ 68%] tests/test_magics_packaging.py::test_conda_does_not_duplicate_yes PASSED [ 68%] tests/test_magics_packaging.py::test_conda_command_not_requiring_prefix PASSED [ 68%] tests/test_magics_packaging.py::test_mamba_uses_mamba_exe PASSED [ 68%] tests/test_magics_packaging.py::test_micromamba_found_next_to_python PASSED [ 68%] tests/test_magics_packaging.py::test_executable_extracted_from_conda_history PASSED [ 68%] tests/test_magics_packaging.py::test_executable_falls_back_to_command_name PASSED [ 68%] tests/test_magics_packaging.py::test_conda_empty_line PASSED [ 68%] tests/test_magics_pylab.py::test_matplotlib_list PASSED [ 68%] tests/test_magics_pylab.py::test_matplotlib_explicit_backend PASSED [ 68%] tests/test_magics_pylab.py::test_matplotlib_no_arg_prints_backend PASSED [ 68%] tests/test_magics_pylab.py::test_pylab_default_no_app PASSED [ 68%] tests/test_magics_pylab.py::test_pylab_gui_argument PASSED [ 68%] tests/test_magics_pylab.py::test_pylab_no_import_all_flag PASSED [ 68%] tests/test_magics_pylab.py::test_pylab_import_all_from_app PASSED [ 68%] tests/test_magics_pylab.py::test_pylab_app_without_pylab_import_all PASSED [ 68%] tests/test_magics_pylab.py::test_pylab_warns_about_clobbered_names PASSED [ 68%] tests/test_module_paths.py::test_tempdir PASSED [ 68%] tests/test_module_paths.py::test_find_mod_1 PASSED [ 68%] tests/test_module_paths.py::test_find_mod_2 PASSED [ 68%] tests/test_module_paths.py::test_find_mod_3 PASSED [ 68%] tests/test_module_paths.py::test_find_mod_4 PASSED [ 68%] tests/test_module_paths.py::test_find_mod_5 PASSED [ 68%] tests/test_oinspect.py::test_find_source_lines PASSED [ 68%] tests/test_oinspect.py::test_getsource PASSED [ 69%] tests/test_oinspect.py::test_inspect_getfile_raises_exception PASSED [ 69%] tests/test_oinspect.py::test_find_file PASSED [ 69%] tests/test_oinspect.py::test_find_file_decorated1 PASSED [ 69%] tests/test_oinspect.py::test_find_file_decorated2 PASSED [ 69%] tests/test_oinspect.py::test_find_file_magic PASSED [ 69%] tests/test_oinspect.py::test_info PASSED [ 69%] tests/test_oinspect.py::test_class_signature PASSED [ 69%] tests/test_oinspect.py::test_info_awkward PASSED [ 69%] tests/test_oinspect.py::test_bool_raise PASSED [ 69%] tests/test_oinspect.py::test_info_serialliar PASSED [ 69%] tests/test_oinspect.py::test_calldef_none[support_function_one] PASSED [ 69%] tests/test_oinspect.py::test_calldef_none[method] PASSED [ 69%] tests/test_oinspect.py::test_calldef_none[any] PASSED [ 69%] tests/test_oinspect.py::test_calldef_none[upper] PASSED [ 69%] tests/test_oinspect.py::test_definition_kwonlyargs PASSED [ 69%] tests/test_oinspect.py::test_getdoc PASSED [ 69%] tests/test_oinspect.py::test_empty_property_has_no_source PASSED [ 69%] tests/test_oinspect.py::test_property_sources PASSED [ 69%] tests/test_oinspect.py::test_property_docstring_is_in_info_for_detail_level_0 PASSED [ 69%] tests/test_oinspect.py::test_pdef PASSED [ 69%] tests/test_oinspect.py::test_pinfo_bool_raise PASSED [ 69%] tests/test_oinspect.py::test_pinfo_getindex PASSED [ 69%] tests/test_oinspect.py::test_qmark_getindex PASSED [ 69%] tests/test_oinspect.py::test_qmark_getindex_negatif PASSED [ 69%] tests/test_oinspect.py::test_pinfo_nonascii PASSED [ 69%] tests/test_oinspect.py::test_pinfo_type PASSED [ 69%] tests/test_oinspect.py::test_pinfo_docstring_no_source PASSED [ 69%] tests/test_oinspect.py::test_pinfo_no_docstring_if_source PASSED [ 69%] tests/test_oinspect.py::test_pinfo_docstring_if_detail_and_no_source PASSED [ 70%] tests/test_oinspect.py::test_pinfo_docstring_dynamic PASSED [ 70%] tests/test_oinspect.py::test_pinfo_getattr_object PASSED [ 70%] tests/test_oinspect.py::test_pinfo_magic PASSED [ 70%] tests/test_oinspect.py::test_init_colors PASSED [ 70%] tests/test_oinspect.py::test_builtin_init PASSED [ 70%] tests/test_oinspect.py::test_render_signature_short PASSED [ 70%] tests/test_oinspect.py::test_render_signature_long PASSED [ 70%] tests/test_oinspect.py::test_pinfo_long_string_form_truncated PASSED [ 70%] tests/test_openpy.py::test_detect_encoding PASSED [ 70%] tests/test_openpy.py::test_read_file PASSED [ 70%] tests/test_openpy.py::test_source_to_unicode PASSED [ 70%] tests/test_page.py::test_detect_screen_size PASSED [ 70%] tests/test_page.py::test_display_page_string PASSED [ 70%] tests/test_page.py::test_display_page_string_no_start PASSED [ 70%] tests/test_page.py::test_display_page_dict PASSED [ 70%] tests/test_page.py::test_as_hook_strips_self PASSED [ 70%] tests/test_page.py::test_page_dumb_single_screen PASSED [ 70%] tests/test_page.py::test_page_dumb_dict_input PASSED [ 70%] tests/test_page.py::test_page_dumb_start_offset PASSED [ 70%] tests/test_page.py::test_page_dumb_multiple_screens PASSED [ 70%] tests/test_page.py::test_page_dumb_quit PASSED [ 70%] tests/test_page.py::test_page_dumb_repeats_ansi_escape PASSED [ 70%] tests/test_page.py::test_detect_screen_size_non_xterm PASSED [ 70%] tests/test_page.py::test_detect_screen_size_no_term PASSED [ 70%] tests/test_page.py::test_detect_screen_size_no_curses PASSED [ 70%] tests/test_page.py::test_detect_screen_size_termios_error PASSED [ 70%] tests/test_page.py::test_detect_screen_size_curses_incomplete PASSED [ 70%] tests/test_page.py::test_detect_screen_size_success PASSED [ 70%] tests/test_page.py::test_pager_page_dumb_term_prints PASSED [ 71%] tests/test_page.py::test_pager_page_mime_bundle PASSED [ 71%] tests/test_page.py::test_pager_page_fits_on_screen PASSED [ 71%] tests/test_page.py::test_pager_page_start_offset PASSED [ 71%] tests/test_page.py::test_pager_page_detect_failure_prints PASSED [ 71%] tests/test_page.py::test_pager_page_uses_pager PASSED [ 71%] tests/test_page.py::test_pager_page_falls_back_to_page_dumb PASSED [ 71%] tests/test_page.py::test_pager_page_broken_pipe PASSED [ 71%] tests/test_page.py::test_pager_page_oserror_falls_back PASSED [ 71%] tests/test_page.py::test_page_no_ipython_falls_back PASSED [ 71%] tests/test_page.py::test_page_uses_hook PASSED [ 71%] tests/test_page.py::test_page_hook_trynext_falls_back PASSED [ 71%] tests/test_page.py::test_page_file_uses_system_pager PASSED [ 71%] tests/test_page.py::test_page_file_fallback_to_page PASSED [ 71%] tests/test_page.py::test_page_file_unreadable PASSED [ 71%] tests/test_page.py::test_get_pager_cmd_default PASSED [ 71%] tests/test_page.py::test_get_pager_cmd_from_env PASSED [ 71%] tests/test_page.py::test_get_pager_cmd_explicit PASSED [ 71%] tests/test_page.py::test_get_pager_cmd_less_gets_R_flag PASSED [ 71%] tests/test_page.py::test_get_pager_cmd_less_respects_LESS_env PASSED [ 71%] tests/test_page.py::test_get_pager_start PASSED [ 71%] tests/test_page.py::test_page_more[-True] PASSED [ 71%] tests/test_page.py::test_page_more[y-True] PASSED [ 71%] tests/test_page.py::test_page_more[q-False] PASSED [ 71%] tests/test_page.py::test_page_more[Quit-False] PASSED [ 71%] tests/test_path.py::test_get_home_dir_1 SKIPPED (This test only runs...) [ 71%] tests/test_path.py::test_get_home_dir_2 SKIPPED (This test only runs...) [ 71%] tests/test_path.py::test_get_home_dir_3 PASSED [ 71%] tests/test_path.py::test_get_home_dir_4 PASSED [ 71%] tests/test_path.py::test_get_home_dir_5 PASSED [ 71%] tests/test_path.py::test_get_home_dir_8 SKIPPED (This test only runs...) [ 72%] tests/test_path.py::test_get_xdg_dir_0 PASSED [ 72%] tests/test_path.py::test_get_xdg_dir_1 PASSED [ 72%] tests/test_path.py::test_get_xdg_dir_2 PASSED [ 72%] tests/test_path.py::test_get_xdg_dir_3 PASSED [ 72%] tests/test_path.py::test_filefind PASSED [ 72%] tests/test_path.py::test_get_long_path_name_win32 SKIPPED (This test...) [ 72%] tests/test_path.py::test_get_long_path_name PASSED [ 72%] tests/test_path.py::test_not_writable_ipdir PASSED [ 72%] tests/test_path.py::test_get_py_filename PASSED [ 72%] tests/test_path.py::test_unicode_in_filename PASSED [ 72%] tests/test_path.py::test_shellglob_posix[patterns0-matches0] PASSED [ 72%] tests/test_path.py::test_shellglob_posix[patterns1-matches1] PASSED [ 72%] tests/test_path.py::test_shellglob_posix[patterns2-matches2] PASSED [ 72%] tests/test_path.py::test_shellglob_posix[patterns3-matches3] PASSED [ 72%] tests/test_path.py::test_shellglob_posix[patterns4-matches4] PASSED [ 72%] tests/test_path.py::test_shellglob_posix[patterns5-matches5] PASSED [ 72%] tests/test_path.py::test_shellglob_posix[patterns6-matches6] PASSED [ 72%] tests/test_path.py::test_shellglob_posix[patterns7-matches7] PASSED [ 72%] tests/test_path.py::test_shellglob_windows[patterns0-matches0] SKIPPED [ 72%] tests/test_path.py::test_shellglob_windows[patterns1-matches1] SKIPPED [ 72%] tests/test_path.py::test_shellglob_windows[patterns2-matches2] SKIPPED [ 72%] tests/test_path.py::test_shellglob_windows[patterns3-matches3] SKIPPED [ 72%] tests/test_path.py::test_shellglob_windows[patterns4-matches4] SKIPPED [ 72%] tests/test_path.py::test_shellglob_windows[patterns5-matches5] SKIPPED [ 72%] tests/test_path.py::test_shellglob_windows[patterns6-matches6] SKIPPED [ 72%] tests/test_path.py::test_unescape_glob[\\*\\[\\!\\]\\?-*[!]?] PASSED [ 72%] tests/test_path.py::test_unescape_glob[\\\\*-\\*] PASSED [ 72%] tests/test_path.py::test_unescape_glob[\\\\\\*-\\*] PASSED [ 72%] tests/test_path.py::test_unescape_glob[\\\\a-\\a] PASSED [ 73%] tests/test_path.py::test_unescape_glob[\\a-\\a] PASSED [ 73%] tests/test_path.py::test_ensure_dir_exists PASSED [ 73%] tests/test_path.py::test_link_successful PASSED [ 73%] tests/test_path.py::test_link_into_dir PASSED [ 73%] tests/test_path.py::test_link_target_exists PASSED [ 73%] tests/test_path.py::test_link_no_link PASSED [ 73%] tests/test_path.py::test_link_windows SKIPPED (This test only runs u...) [ 73%] tests/test_path.py::test_link_twice PASSED [ 73%] tests/test_path.py::test_compress_user PASSED [ 73%] tests/test_paths.py::test_get_ipython_dir_1 PASSED [ 73%] tests/test_paths.py::test_get_ipython_dir_2 PASSED [ 73%] tests/test_paths.py::test_get_ipython_dir_3 PASSED [ 73%] tests/test_paths.py::test_get_ipython_dir_4 PASSED [ 73%] tests/test_paths.py::test_get_ipython_dir_5 PASSED [ 73%] tests/test_paths.py::test_get_ipython_dir_6 PASSED [ 73%] tests/test_paths.py::test_get_ipython_dir_7 PASSED [ 73%] tests/test_paths.py::test_get_ipython_dir_8 PASSED [ 73%] tests/test_paths.py::test_get_ipython_cache_dir PASSED [ 73%] tests/test_paths.py::test_get_ipython_package_dir PASSED [ 73%] tests/test_paths.py::test_get_ipython_module_path PASSED [ 73%] tests/test_payload.py::test_write_payload_requires_dict PASSED [ 73%] tests/test_payload.py::test_write_payload_list_raises_type_error PASSED [ 73%] tests/test_payload.py::test_write_and_read_payload PASSED [ 73%] tests/test_payload.py::test_write_payload_single_replaces_same_source PASSED [ 73%] tests/test_payload.py::test_write_payload_single_keeps_other_sources PASSED [ 73%] tests/test_payload.py::test_write_payload_not_single_appends PASSED [ 73%] tests/test_payload.py::test_write_payload_without_source_appends PASSED [ 73%] tests/test_payload.py::test_read_payload_returns_all PASSED [ 73%] tests/test_payload.py::test_clear_payload PASSED [ 73%] tests/test_payload.py::test_clear_payload_idempotent PASSED [ 74%] tests/test_payload.py::test_initial_payload_is_empty PASSED [ 74%] tests/test_payload.py::test_payloadpage_string PASSED [ 74%] tests/test_payload.py::test_payloadpage_mime_bundle PASSED [ 74%] tests/test_payload.py::test_payloadpage_negative_start_clamped PASSED [ 74%] tests/test_payload.py::test_payloadpage_single_payload_overwritten PASSED [ 74%] tests/test_pickleshare.py::test_init_creates_directory PASSED [ 74%] tests/test_pickleshare.py::test_init_accepts_str_and_existing_dir PASSED [ 74%] tests/test_pickleshare.py::test_init_mkdir_race_is_tolerated PASSED [ 74%] tests/test_pickleshare.py::test_init_mkdir_other_errors_propagate PASSED [ 74%] tests/test_pickleshare.py::test_setitem_getitem_roundtrip PASSED [ 74%] tests/test_pickleshare.py::test_nested_keys_create_parent_dirs PASSED [ 74%] tests/test_pickleshare.py::test_getitem_missing_key_raises_keyerror PASSED [ 74%] tests/test_pickleshare.py::test_getitem_corrupt_file_raises_keyerror PASSED [ 74%] tests/test_pickleshare.py::test_cache_returns_same_object_when_unmodified PASSED [ 74%] tests/test_pickleshare.py::test_uncache_specific_and_all PASSED [ 74%] tests/test_pickleshare.py::test_delitem PASSED [ 74%] tests/test_pickleshare.py::test_keys_iter_len PASSED [ 74%] tests/test_pickleshare.py::test_keys_glob PASSED [ 74%] tests/test_pickleshare.py::test_gethashfile_is_stable_two_hex_chars PASSED [ 74%] tests/test_pickleshare.py::test_hset_hget PASSED [ 74%] tests/test_pickleshare.py::test_hget_default_and_missing PASSED [ 74%] tests/test_pickleshare.py::test_hset_overwrites PASSED [ 74%] tests/test_pickleshare.py::test_hdict PASSED [ 74%] tests/test_pickleshare.py::test_hdict_deletes_corrupt_files PASSED [ 74%] tests/test_pickleshare.py::test_hcompress PASSED [ 74%] tests/test_pickleshare.py::test_hset_after_hcompress PASSED [ 74%] tests/test_pickleshare.py::test_waitget_existing_key_returns_immediately PASSED [ 74%] tests/test_pickleshare.py::test_waitget_picks_up_value_after_polling PASSED [ 74%] tests/test_pickleshare.py::test_waitget_times_out PASSED [ 75%] tests/test_pickleshare.py::test_repr PASSED [ 75%] tests/test_pickleshare.py::test_getlink PASSED [ 75%] tests/test_pickleshare.py::test_setitem_tolerates_file_vanishing PASSED [ 75%] tests/test_pickleshare.py::test_setitem_other_stat_errors_propagate PASSED [ 75%] tests/test_pickleshare.py::test_link_repr_is_broken PASSED [ 75%] tests/test_pickleshare.py::test_mutable_mapping_helpers PASSED [ 75%] tests/test_prefilter.py::test_prefilter PASSED [ 75%] tests/test_prefilter.py::test_prefilter_shadowed PASSED [ 75%] tests/test_prefilter.py::test_autocall_binops PASSED [ 75%] tests/test_prefilter.py::test_issue_114 PASSED [ 75%] tests/test_prefilter.py::test_prefilter_attribute_errors PASSED [ 75%] tests/test_prefilter.py::test_autocall_type_ann PASSED [ 75%] tests/test_prefilter.py::test_autocall_should_support_unicode PASSED [ 75%] tests/test_prefilter.py::test_autocall_regression_gh_14513 PASSED [ 75%] tests/test_pretty.py::test_indentation PASSED [ 75%] tests/test_pretty.py::test_dispatch PASSED [ 75%] tests/test_pretty.py::test_callability_checking PASSED [ 75%] tests/test_pretty.py::test_sets[obj0-set()] PASSED [ 75%] tests/test_pretty.py::test_sets[obj1-frozenset()] PASSED [ 75%] tests/test_pretty.py::test_sets[obj2-{1}] PASSED [ 75%] tests/test_pretty.py::test_sets[obj3-frozenset({1})] PASSED [ 75%] tests/test_pretty.py::test_sets[obj4-{1, 2}] PASSED [ 75%] tests/test_pretty.py::test_sets[obj5-frozenset({1, 2})] PASSED [ 75%] tests/test_pretty.py::test_sets[obj6-{-3, -2, -1}] PASSED [ 75%] tests/test_pretty.py::test_pprint_heap_allocated_type PASSED [ 75%] tests/test_pretty.py::test_pprint_nomod PASSED [ 75%] tests/test_pretty.py::test_pprint_break PASSED [ 75%] tests/test_pretty.py::test_pprint_break_repr PASSED [ 75%] tests/test_pretty.py::test_bad_repr PASSED [ 75%] tests/test_pretty.py::test_really_bad_repr PASSED [ 76%] tests/test_pretty.py::test_super_repr PASSED [ 76%] tests/test_pretty.py::test_long_collection_repr[obj0-expected_last20] PASSED [ 76%] tests/test_pretty.py::test_long_collection_repr[obj1-expected_last21] PASSED [ 76%] tests/test_pretty.py::test_long_collection_repr[obj2-expected_last22] PASSED [ 76%] tests/test_pretty.py::test_long_collection_repr[obj3-expected_last23] PASSED [ 76%] tests/test_pretty.py::test_unbound_method PASSED [ 76%] tests/test_pretty.py::test_metaclass_repr PASSED [ 76%] tests/test_pretty.py::test_unicode_repr PASSED [ 76%] tests/test_pretty.py::test_basic_class PASSED [ 76%] tests/test_pretty.py::test_collections_userlist PASSED [ 76%] tests/test_pretty.py::test_collections_defaultdict[obj0-defaultdict(list, {})] PASSED [ 76%] tests/test_pretty.py::test_collections_defaultdict[obj1-defaultdict(list,\n {'key': '--------------------------------------------------'})] PASSED [ 76%] tests/test_pretty.py::test_collections_defaultdict[obj2-defaultdict(defaultdict(...), {})] PASSED [ 76%] tests/test_pretty.py::test_collections_defaultdict[obj3-defaultdict(list, {'key': defaultdict(...)})] PASSED [ 76%] tests/test_pretty.py::test_collections_ordereddict[obj0-OrderedDict()] PASSED [ 76%] tests/test_pretty.py::test_collections_ordereddict[obj1-OrderedDict([(1000, 1000),\n (1001, 1001),\n (1002, 1002),\n (1003, 1003),\n (1004, 1004),\n (1005, 1005),\n (1006, 1006),\n (1007, 1007),\n (1008, 1008),\n (1009, 1009)])] PASSED [ 76%] tests/test_pretty.py::test_collections_ordereddict[obj2-OrderedDict([('key', OrderedDict(...))])] PASSED [ 76%] tests/test_pretty.py::test_collections_deque[obj0-deque([])] PASSED [ 76%] tests/test_pretty.py::test_collections_deque[obj1-deque([1000,\n 1001,\n 1002,\n 1003,\n 1004,\n 1005,\n 1006,\n 1007,\n 1008,\n 1009,\n 1010,\n 1011,\n 1012,\n 1013,\n 1014,\n 1015,\n 1016,\n 1017,\n 1018,\n 1019])] PASSED [ 76%] tests/test_pretty.py::test_collections_deque[obj2-deque([deque(...)])] PASSED [ 76%] tests/test_pretty.py::test_collections_counter[obj0-Counter()] PASSED [ 76%] tests/test_pretty.py::test_collections_counter[obj1-Counter({'a': 1})] PASSED [ 76%] tests/test_pretty.py::test_collections_counter[obj2-MyCounter({'a': 1})] PASSED [ 76%] tests/test_pretty.py::test_collections_counter[obj3-Counter({'c': 22, 'a': 1})] PASSED [ 76%] tests/test_pretty.py::test_mappingproxy[obj0-mappingproxy({})] PASSED [ 76%] tests/test_pretty.py::test_mappingproxy[obj1-mappingproxy({None: mappingproxy({})})] PASSED [ 76%] tests/test_pretty.py::test_mappingproxy[obj2-mappingproxy({'a': 'A',\n 'b': 'B',\n 'c': 'C',\n 'd': 'D',\n 'e': 'E',\n 'f': 'F',\n 'g': 'G',\n 'h': 'H',\n 'i': 'I',\n 'j': 'J',\n 'k': 'K',\n 'l': 'L',\n 'm': 'M',\n 'n': 'N',\n 'o': 'O',\n 'p': 'P',\n 'q': 'Q',\n 'r': 'R',\n 's': 'S',\n 't': 'T',\n 'u': 'U',\n 'v': 'V',\n 'w': 'W',\n 'x': 'X',\n 'y': 'Y',\n 'z': 'Z'})] PASSED [ 76%] tests/test_pretty.py::test_mappingproxy[obj3-mappingproxy({2: {...}, 3: {2: {...}, 3: {...}}})] PASSED [ 76%] tests/test_pretty.py::test_mappingproxy[obj4-{2: mappingproxy({2: {...}, 3: {...}}), 3: {...}}] PASSED [ 77%] tests/test_pretty.py::test_simplenamespace[obj0-namespace()] PASSED [ 77%] tests/test_pretty.py::test_simplenamespace[obj1-namespace(x=namespace())] PASSED [ 77%] tests/test_pretty.py::test_simplenamespace[obj2-namespace(a_long_name=[namespace(s='abcdefghijklmnopqrstuvwxyz'),\n namespace(s='abcdefghijklmnopqrstuvwxyz'),\n namespace(s='abcdefghijklmnopqrstuvwxyz')],\n a_short_name=None)] PASSED [ 77%] tests/test_pretty.py::test_simplenamespace[obj3-namespace(first=namespace(...), second=namespace(...))] PASSED [ 77%] tests/test_pretty.py::test_pretty_environ PASSED [ 77%] tests/test_pretty.py::test_function_pretty PASSED [ 77%] tests/test_pretty.py::test_annotated_function_pretty PASSED [ 77%] tests/test_pretty.py::test_custom_repr PASSED [ 77%] tests/test_process.py::test_find_cmd_ls PASSED [ 77%] tests/test_process.py::test_find_cmd_pythonw SKIPPED (This test only...) [ 77%] tests/test_process.py::test_find_cmd_fail PASSED [ 77%] tests/test_process.py::test_arg_split[hi-argv0] PASSED [ 77%] tests/test_process.py::test_arg_split[hello there-argv1] PASSED [ 77%] tests/test_process.py::test_arg_split[h\u01cello-argv2] PASSED [ 77%] tests/test_process.py::test_arg_split[something "with quotes"-argv3] PASSED [ 77%] tests/test_process.py::test_arg_split_win32[hi-argv0] SKIPPED (This ...) [ 77%] tests/test_process.py::test_arg_split_win32[hello there-argv1] SKIPPED [ 77%] tests/test_process.py::test_arg_split_win32[h\u01cello-argv2] SKIPPED [ 77%] tests/test_process.py::test_arg_split_win32[something "with quotes"-argv3] SKIPPED [ 77%] tests/test_process.py::test_arg_split_with_quotes[foo bar-expected0] PASSED [ 77%] tests/test_process.py::test_arg_split_with_quotes["*.txt"-expected1] PASSED [ 77%] tests/test_process.py::test_arg_split_with_quotes['*.txt'-expected2] PASSED [ 77%] tests/test_process.py::test_arg_split_with_quotes[p "p" 'p' * "*" '*'-expected3] PASSED [ 77%] tests/test_process.py::test_arg_split_with_quotes[-i demo.py "*.txt" *.txt-expected4] PASSED [ 77%] tests/test_process.py::test_arg_split_with_quotes_strict_false PASSED [ 77%] tests/test_process.py::test_system PASSED [ 77%] tests/test_process.py::test_system_quotes PASSED [ 77%] tests/test_process.py::test_system_interrupt PASSED [ 77%] tests/test_process.py::test_getoutput PASSED [ 77%] tests/test_process.py::test_getoutput_quoted PASSED [ 78%] tests/test_process.py::test_getoutput_quoted2 PASSED [ 78%] tests/test_process.py::test_getoutput_error PASSED [ 78%] tests/test_process.py::test_get_output_error_code PASSED [ 78%] tests/test_profile.py::test_startup_py PASSED [ 78%] tests/test_profile.py::test_startup_ipy PASSED [ 78%] tests/test_profile.py::test_list_profiles_in PASSED [ 78%] tests/test_profile.py::test_list_bundled_profiles PASSED [ 78%] tests/test_profile.py::test_profile_create_in_process PASSED [ 78%] tests/test_profile.py::test_profile_create_reset PASSED [ 78%] tests/test_profile.py::test_profile_create_parallel_trait PASSED [ 78%] tests/test_profile.py::test_profile_create_import_app_missing PASSED [ 78%] tests/test_profile.py::test_profile_create_import_app_error PASSED [ 78%] tests/test_profile.py::test_profile_list_app PASSED [ 78%] tests/test_profile.py::test_profile_locate_app PASSED [ 78%] tests/test_profile.py::test_profile_app_no_subcommand PASSED [ 78%] tests/test_profile.py::test_profile_app_list_subcommand PASSED [ 78%] tests/test_profile.py::test_profile_create_ipython_dir PASSED [ 78%] tests/test_pt_inputhooks.py::test_inputhook_qt SKIPPED (No viable ve...) [ 78%] tests/test_ptutils.py::test_elide_point_disabled PASSED [ 78%] tests/test_ptutils.py::test_elide_point_short_string PASSED [ 78%] tests/test_ptutils.py::test_elide_point_consecutive_dots PASSED [ 78%] tests/test_ptutils.py::test_elide_point_dotted_object PASSED [ 78%] tests/test_ptutils.py::test_elide_point_file_path PASSED [ 78%] tests/test_ptutils.py::test_elide_typed PASSED [ 78%] tests/test_ptutils.py::test_elide_combined PASSED [ 78%] tests/test_ptutils.py::test_adjust_completion_text_based_on_context PASSED [ 78%] tests/test_ptutils.py::test_pt_completer_requires_shell_or_completer PASSED [ 78%] tests/test_ptutils.py::test_pt_completer_ipy_completer_property PASSED [ 78%] tests/test_ptutils.py::test_pt_completer_empty_line_yields_nothing PASSED [ 79%] tests/test_ptutils.py::test_pt_completer_completes_print PASSED [ 79%] tests/test_ptutils.py::test_pt_completer_non_function_completion PASSED [ 79%] tests/test_ptutils.py::test_pt_completer_swallows_errors PASSED [ 79%] tests/test_ptutils.py::test_pt_completer_skips_empty_text PASSED [ 79%] tests/test_ptutils.py::test_pt_completer_zero_width_character PASSED [ 79%] tests/test_ptutils.py::test_lexer_dispatch[print(1)-python] PASSED [ 79%] tests/test_ptutils.py::test_lexer_dispatch[-python] PASSED [ 79%] tests/test_ptutils.py::test_lexer_dispatch[!ls-shell] PASSED [ 79%] tests/test_ptutils.py::test_lexer_dispatch[%%bash\nls-shell] PASSED [ 79%] tests/test_ptutils.py::test_lexer_dispatch[ !ls-shell] PASSED [ 79%] tests/test_ptutils.py::test_lexer_dispatch[%%html\nhi-html] PASSED [ 79%] tests/test_ptutils.py::test_lexer_dispatch[%%HTML\nhi-HTML] PASSED [ 79%] tests/test_ptutils.py::test_lexer_dispatch[%%javascript\nvar x;-javascript] PASSED [ 79%] tests/test_ptutils.py::test_lexer_dispatch[%%js\nvar x;-js] PASSED [ 79%] tests/test_ptutils.py::test_lexer_dispatch[%%perl\nprint-perl] PASSED [ 79%] tests/test_ptutils.py::test_lexer_dispatch[%%ruby\nputs-ruby] PASSED [ 79%] tests/test_ptutils.py::test_lexer_dispatch[%%latex\n\\alpha-latex] PASSED [ 79%] tests/test_ptutils.py::test_lexer_dispatch[%%unknownmagic\nfoo-python] PASSED [ 79%] tests/test_ptutils.py::test_lexer_lex_document_returns_callable PASSED [ 79%] tests/test_pycolorize.py::test_parse_sample[linux] PASSED [ 79%] tests/test_pycolorize.py::test_parse_error[linux] PASSED [ 79%] tests/test_pycolorize.py::test_parse_sample[nocolor] PASSED [ 79%] tests/test_pycolorize.py::test_parse_error[nocolor] PASSED [ 79%] tests/test_pycolorize.py::test_parse_sample[lightbg] PASSED [ 79%] tests/test_pycolorize.py::test_parse_error[lightbg] PASSED [ 79%] tests/test_pycolorize.py::test_parse_sample[neutral] PASSED [ 79%] tests/test_pycolorize.py::test_parse_error[neutral] PASSED [ 79%] tests/test_pylabtools.py::test_figure_to_svg PASSED [ 79%] tests/test_pylabtools.py::test_figure_to_jpeg PASSED [ 80%] tests/test_pylabtools.py::test_retina_figure PASSED [ 80%] tests/test_pylabtools.py::test_select_figure_formats_str PASSED [ 80%] tests/test_pylabtools.py::test_select_figure_formats_kwargs PASSED [ 80%] tests/test_pylabtools.py::test_select_figure_formats_set[fmts0] PASSED [ 80%] tests/test_pylabtools.py::test_select_figure_formats_set[fmts1] PASSED [ 80%] tests/test_pylabtools.py::test_select_figure_formats_set[fmts2] PASSED [ 80%] tests/test_pylabtools.py::test_select_figure_formats_set[fmts3] PASSED [ 80%] tests/test_pylabtools.py::test_select_figure_formats_bad PASSED [ 80%] tests/test_pylabtools.py::test_import_pylab PASSED [ 80%] tests/test_pylabtools.py::test_just_shell_no_leak PASSED [ 80%] tests/test_pylabtools.py::test_qt PASSED [ 80%] tests/test_pylabtools.py::test_inline PASSED [ 80%] tests/test_pylabtools.py::test_inline_twice PASSED [ 80%] tests/test_pylabtools.py::test_qt_gtk PASSED [ 80%] tests/test_pylabtools.py::test_backend_module_name_case_sensitive PASSED [ 80%] tests/test_pylabtools.py::test_no_gui_backends[agg] PASSED [ 80%] tests/test_pylabtools.py::test_no_gui_backends[svg] PASSED [ 80%] tests/test_pylabtools.py::test_no_gui_backends[pdf] PASSED [ 80%] tests/test_pylabtools.py::test_no_gui_backends[ps] PASSED [ 80%] tests/test_pylabtools.py::test_figure_no_canvas PASSED [ 80%] tests/test_pylabtools.py::test_backend_builtin[gtk3-gtk3-gtk3agg] PASSED [ 80%] tests/test_pylabtools.py::test_backend_builtin[gtk4-gtk4-gtk4agg] PASSED [ 80%] tests/test_pylabtools.py::test_backend_builtin[headless-None-agg] PASSED [ 80%] tests/test_pylabtools.py::test_backend_builtin[osx-osx-macosx] PASSED [ 80%] tests/test_pylabtools.py::test_backend_builtin[qt-qt-qtagg] PASSED [ 80%] tests/test_pylabtools.py::test_backend_builtin[qt5-qt5-qt5agg] PASSED [ 80%] tests/test_pylabtools.py::test_backend_builtin[qt6-qt6-qtagg] PASSED [ 80%] tests/test_pylabtools.py::test_backend_builtin[tk-tk-tkagg] PASSED [ 80%] tests/test_pylabtools.py::test_backend_builtin[wx-wx-wxagg] PASSED [ 80%] tests/test_pylabtools.py::test_backend_builtin[agg-None-agg] PASSED [ 81%] tests/test_pylabtools.py::test_backend_builtin[cairo-None-cairo] PASSED [ 81%] tests/test_pylabtools.py::test_backend_builtin[pdf-None-pdf] PASSED [ 81%] tests/test_pylabtools.py::test_backend_builtin[ps-None-ps] PASSED [ 81%] tests/test_pylabtools.py::test_backend_builtin[svg-None-svg] PASSED [ 81%] tests/test_pylabtools.py::test_backend_builtin[template-None-template] PASSED [ 81%] tests/test_pylabtools.py::test_backend_builtin[gtk3agg-gtk3-gtk3agg] PASSED [ 81%] tests/test_pylabtools.py::test_backend_builtin[gtk3cairo-gtk3-gtk3cairo] PASSED [ 81%] tests/test_pylabtools.py::test_backend_builtin[gtk4agg-gtk4-gtk4agg] PASSED [ 81%] tests/test_pylabtools.py::test_backend_builtin[gtk4cairo-gtk4-gtk4cairo] PASSED [ 81%] tests/test_pylabtools.py::test_backend_builtin[macosx-osx-macosx] PASSED [ 81%] tests/test_pylabtools.py::test_backend_builtin[nbagg-nbagg-nbagg] PASSED [ 81%] tests/test_pylabtools.py::test_backend_builtin[notebook-nbagg-notebook] PASSED [ 81%] tests/test_pylabtools.py::test_backend_builtin[qtagg-qt-qtagg] PASSED [ 81%] tests/test_pylabtools.py::test_backend_builtin[qtcairo-qt-qtcairo] PASSED [ 81%] tests/test_pylabtools.py::test_backend_builtin[qt5agg-qt5-qt5agg] PASSED [ 81%] tests/test_pylabtools.py::test_backend_builtin[qt5cairo-qt5-qt5cairo] PASSED [ 81%] tests/test_pylabtools.py::test_backend_builtin[tkagg-tk-tkagg] PASSED [ 81%] tests/test_pylabtools.py::test_backend_builtin[tkcairo-tk-tkcairo] PASSED [ 81%] tests/test_pylabtools.py::test_backend_builtin[webagg-webagg-webagg] PASSED [ 81%] tests/test_pylabtools.py::test_backend_builtin[wxagg-wx-wxagg] PASSED [ 81%] tests/test_pylabtools.py::test_backend_builtin[wxcairo-wx-wxcairo] PASSED [ 81%] tests/test_pylabtools.py::test_backend_entry_point PASSED [ 81%] tests/test_pylabtools.py::test_backend_unknown PASSED [ 81%] tests/test_qt_loaders.py::test_import_denier PASSED [ 81%] tests/test_run.py::tests.test_run.doctest_refbug PASSED [ 81%] tests/test_run.py::tests.test_run.doctest_reset_del PASSED [ 81%] tests/test_run.py::tests.test_run.doctest_run_builtins PASSED [ 81%] tests/test_run.py::tests.test_run.doctest_run_option_parser PASSED [ 81%] tests/test_run.py::tests.test_run.doctest_run_option_parser_for_posix PASSED [ 82%] tests/test_run.py::tests.test_run.doctest_run_option_parser_for_windows SKIPPED [ 82%] tests/test_run.py::test_builtins_id PASSED [ 82%] tests/test_run.py::test_builtins_type PASSED [ 82%] tests/test_run.py::test_run_profile PASSED [ 82%] tests/test_run.py::test_run_debug_twice PASSED [ 82%] tests/test_run.py::test_run_debug_twice_with_breakpoint PASSED [ 82%] tests/test_run.py::test_simpledef PASSED [ 82%] tests/test_run.py::test_obj_del PASSED [ 82%] tests/test_run.py::test_aggressive_namespace_cleanup PASSED [ 82%] tests/test_run.py::test_run_second PASSED [ 82%] tests/test_run.py::test_tclass PASSED [ 82%] tests/test_run.py::test_run_i_after_reset PASSED [ 82%] tests/test_run.py::test_unicode PASSED [ 82%] tests/test_run.py::test_run_py_file_attribute PASSED [ 82%] tests/test_run.py::test_run_ipy_file_attribute PASSED [ 82%] tests/test_run.py::test_run_formatting PASSED [ 82%] tests/test_run.py::test_ignore_sys_exit PASSED [ 82%] tests/test_run.py::test_run_nb PASSED [ 82%] tests/test_run.py::test_run_nb_error PASSED [ 82%] tests/test_run.py::test_file_options PASSED [ 82%] tests/test_run.py::test_run_submodule[absolute-] PASSED [ 82%] tests/test_run.py::test_run_submodule[relative-] PASSED [ 82%] tests/test_run.py::test_run_submodule[absolute--p] PASSED [ 82%] tests/test_run.py::test_run_submodule[relative--p] PASSED [ 82%] tests/test_run.py::test_debug_run_submodule[absolute] PASSED [ 82%] tests/test_run.py::test_debug_run_submodule[relative] PASSED [ 82%] tests/test_run.py::test_module_options PASSED [ 82%] tests/test_run.py::test_module_options_with_separator PASSED [ 82%] tests/test_run.py::test_run_quoted_glob_arg_is_not_expanded PASSED [ 82%] tests/test_run.py::test_run__name__ PASSED [ 83%] tests/test_run.py::test_run_tb PASSED [ 83%] tests/test_run.py::test_multiprocessing_run PASSED [ 83%] tests/test_run.py::test_script_tb PASSED [ 83%] tests/test_sentinel.py::test_sentinel_repr PASSED [ 83%] tests/test_sentinel.py::test_sentinel_repr_with_dotted_module PASSED [ 83%] tests/test_sentinel.py::test_sentinel_without_docstring PASSED [ 83%] tests/test_sentinel.py::test_sentinel_with_docstring PASSED [ 83%] tests/test_sentinel.py::test_sentinel_without_docstring_not_set PASSED [ 83%] tests/test_sentinel.py::test_sentinel_identity PASSED [ 83%] tests/test_sentinel.py::test_sentinel_name_and_module_accessible PASSED [ 83%] tests/test_shellapp.py::test_py_script_file_attribute PASSED [ 83%] tests/test_shellapp.py::test_ipy_script_file_attribute PASSED [ 83%] tests/test_shellapp.py::test_py_script_file_attribute_interactively PASSED [ 83%] tests/test_shellapp.py::test_init_path_inserts_before_site_packages PASSED [ 83%] tests/test_shellapp.py::test_init_path_no_site_packages_inserts_front PASSED [ 83%] tests/test_shellapp.py::test_init_path_noop_when_already_present PASSED [ 83%] tests/test_shellapp.py::test_init_path_ignore_cwd PASSED [ 83%] tests/test_shellapp.py::test_user_ns_observer_syncs_shell PASSED [ 83%] tests/test_shellapp.py::test_init_shell_not_implemented PASSED [ 83%] tests/test_shortcuts.py::test_llm_autosuggestion SKIPPED (This test ...) [ 83%] tests/test_shortcuts.py::test_slow_llm_provider_should_not_block_init PASSED [ 83%] tests/test_shortcuts.py::test_accept[-def out(tag: str, n=50):-def out(tag: str, n=50):] PASSED [ 83%] tests/test_shortcuts.py::test_accept[def -out(tag: str, n=50):-out(tag: str, n=50):] PASSED [ 83%] tests/test_shortcuts.py::test_discard[-def out(tag: str, n=50):] PASSED [ 83%] tests/test_shortcuts.py::test_discard[def -out(tag: str, n=50):] PASSED [ 83%] tests/test_shortcuts.py::test_autosuggest_at_EOL[123456-6-123456789-True] PASSED [ 83%] tests/test_shortcuts.py::test_autosuggest_at_EOL[123456-3-123456789-False] PASSED [ 83%] tests/test_shortcuts.py::test_autosuggest_at_EOL[123456 \n789-6-123456789-True] PASSED [ 83%] tests/test_shortcuts.py::test_autosuggest_token[-def out(tag: str, n=50):-def ] PASSED [ 84%] tests/test_shortcuts.py::test_autosuggest_token[d-ef out(tag: str, n=50):-ef ] PASSED [ 84%] tests/test_shortcuts.py::test_autosuggest_token[de -f out(tag: str, n=50):-f ] PASSED [ 84%] tests/test_shortcuts.py::test_autosuggest_token[def- out(tag: str, n=50):- ] PASSED [ 84%] tests/test_shortcuts.py::test_autosuggest_token[def -out(tag: str, n=50):-out(] PASSED [ 84%] tests/test_shortcuts.py::test_autosuggest_token[def o-ut(tag: str, n=50):-ut(] PASSED [ 84%] tests/test_shortcuts.py::test_autosuggest_token[def ou-t(tag: str, n=50):-t(] PASSED [ 84%] tests/test_shortcuts.py::test_autosuggest_token[def out-(tag: str, n=50):-(] PASSED [ 84%] tests/test_shortcuts.py::test_autosuggest_token[def out(-tag: str, n=50):-tag: ] PASSED [ 84%] tests/test_shortcuts.py::test_autosuggest_token[def out(t-ag: str, n=50):-ag: ] PASSED [ 84%] tests/test_shortcuts.py::test_autosuggest_token[def out(ta-g: str, n=50):-g: ] PASSED [ 84%] tests/test_shortcuts.py::test_autosuggest_token[def out(tag-: str, n=50):-: ] PASSED [ 84%] tests/test_shortcuts.py::test_autosuggest_token[def out(tag:- str, n=50):- ] PASSED [ 84%] tests/test_shortcuts.py::test_autosuggest_token[def out(tag: -str, n=50):-str, ] PASSED [ 84%] tests/test_shortcuts.py::test_autosuggest_token[def out(tag: s-tr, n=50):-tr, ] PASSED [ 84%] tests/test_shortcuts.py::test_autosuggest_token[def out(tag: st-r, n=50):-r, ] PASSED [ 84%] tests/test_shortcuts.py::test_autosuggest_token[def out(tag: str-, n=50):-, n] PASSED [ 84%] tests/test_shortcuts.py::test_autosuggest_token[def out(tag: str,- n=50):- n] PASSED [ 84%] tests/test_shortcuts.py::test_autosuggest_token[def out(tag: str, -n=50):-n=] PASSED [ 84%] tests/test_shortcuts.py::test_autosuggest_token[def out(tag: str, n-=50):-=] PASSED [ 84%] tests/test_shortcuts.py::test_autosuggest_token[def out(tag: str, n=-50):-50)] PASSED [ 84%] tests/test_shortcuts.py::test_autosuggest_token[def out(tag: str, n=5-0):-0)] PASSED [ 84%] tests/test_shortcuts.py::test_autosuggest_token[def out(tag: str, n=50-):-):] PASSED [ 84%] tests/test_shortcuts.py::test_autosuggest_token[def out(tag: str, n=50)-:-:] PASSED [ 84%] tests/test_shortcuts.py::test_accept_character[-def out(tag: str, n=50):-d] PASSED [ 84%] tests/test_shortcuts.py::test_accept_character[d-ef out(tag: str, n=50):-e] PASSED [ 84%] tests/test_shortcuts.py::test_accept_character[de -f out(tag: str, n=50):-f] PASSED [ 84%] tests/test_shortcuts.py::test_accept_character[def- out(tag: str, n=50):- ] PASSED [ 84%] tests/test_shortcuts.py::test_accept_word[-def out(tag: str, n=50):-def ] PASSED [ 84%] tests/test_shortcuts.py::test_accept_word[d-ef out(tag: str, n=50):-ef ] PASSED [ 84%] tests/test_shortcuts.py::test_accept_word[de-f out(tag: str, n=50):-f ] PASSED [ 85%] tests/test_shortcuts.py::test_accept_word[def- out(tag: str, n=50):- ] PASSED [ 85%] tests/test_shortcuts.py::test_accept_word[def -out(tag: str, n=50):-out(tag: ] PASSED [ 85%] tests/test_shortcuts.py::test_accept_and_keep_cursor[-def out(tag: str, n=50):-def out(tag: str, n=50):-0] PASSED [ 85%] tests/test_shortcuts.py::test_accept_and_keep_cursor[def -out(tag: str, n=50):-out(tag: str, n=50):-4] PASSED [ 85%] tests/test_shortcuts.py::test_autosuggest_token_empty PASSED [ 85%] tests/test_shortcuts.py::test_reset_search_buffer PASSED [ 85%] tests/test_shortcuts.py::test_other_providers PASSED [ 85%] tests/test_shortcuts.py::test_navigable_provider PASSED [ 85%] tests/test_shortcuts.py::test_navigable_provider_multiline_entries PASSED [ 85%] tests/test_shortcuts.py::test_navigable_provider_connection PASSED [ 85%] tests/test_shortcuts.py::test_modify_unique_shortcut PASSED [ 85%] tests/test_shortcuts.py::test_disable_shortcut PASSED [ 85%] tests/test_shortcuts.py::test_modify_shortcut_with_filters PASSED [ 85%] tests/test_shortcuts.py::test_add_shortcut_for_new_command PASSED [ 85%] tests/test_shortcuts.py::test_modify_shortcut_failure PASSED [ 85%] tests/test_shortcuts.py::test_add_shortcut_for_existing_command PASSED [ 85%] tests/test_shortcuts.py::test_setting_shortcuts_before_pt_app_init PASSED [ 85%] tests/test_shortcuts.py::test_navigable_provider_disconnect_removes_cursor_handler PASSED [ 85%] tests/test_shortcuts.py::test_llm_autosuggestion_cancellation_and_error_handling PASSED [ 85%] tests/test_shortcuts.py::test_auto_match_pairs[parenthesis-()] PASSED [ 85%] tests/test_shortcuts.py::test_auto_match_pairs[brackets-[]] PASSED [ 85%] tests/test_shortcuts.py::test_auto_match_pairs[braces-{}] PASSED [ 85%] tests/test_shortcuts.py::test_auto_match_pairs[double_quote-""] PASSED [ 85%] tests/test_shortcuts.py::test_auto_match_pairs[single_quote-''] PASSED [ 85%] tests/test_shortcuts.py::test_auto_match_docstring_quotes[docstring_double_quotes-""-""""""] PASSED [ 85%] tests/test_shortcuts.py::test_auto_match_docstring_quotes[docstring_single_quotes-''-''''''] PASSED [ 85%] tests/test_shortcuts.py::test_auto_match_raw_string_pairs[raw_string_parenthesis-r"---r"--()---5] PASSED [ 85%] tests/test_shortcuts.py::test_auto_match_raw_string_pairs[raw_string_bracket-r"---r"--[]---5] PASSED [ 85%] tests/test_shortcuts.py::test_auto_match_raw_string_pairs[raw_string_braces-r"---r"--{}---5] PASSED [ 86%] tests/test_shortcuts.py::test_auto_match_raw_string_pairs[raw_string_parenthesis-R'--R'-()--4] PASSED [ 86%] tests/test_shortcuts.py::test_auto_match_raw_string_pairs[raw_string_parenthesis-r"-r"()-3] PASSED [ 86%] tests/test_shortcuts.py::test_auto_match_raw_string_pairs[raw_string_parenthesis-x-x()-2] PASSED [ 86%] tests/test_shortcuts.py::test_auto_match_skip_over PASSED [ 86%] tests/test_shortcuts.py::test_auto_match_delete_pair[()] PASSED [ 86%] tests/test_shortcuts.py::test_auto_match_delete_pair[[]] PASSED [ 86%] tests/test_shortcuts.py::test_auto_match_delete_pair[{}] PASSED [ 86%] tests/test_shortcuts.py::test_auto_match_delete_pair[""] PASSED [ 86%] tests/test_shortcuts.py::test_auto_match_delete_pair[''] PASSED [ 86%] tests/test_shortcuts.py::test_all_quotes_paired["--True] PASSED [ 86%] tests/test_shortcuts.py::test_all_quotes_paired["-a = "x"-True] PASSED [ 86%] tests/test_shortcuts.py::test_all_quotes_paired["-a = "x-False] PASSED [ 86%] tests/test_shortcuts.py::test_all_quotes_paired["-a = "x\\""-True] PASSED [ 86%] tests/test_shortcuts.py::test_all_quotes_paired['-it's-False] PASSED [ 86%] tests/test_shortcuts.py::test_all_quotes_paired['-'a' + 'b'-True] PASSED [ 86%] tests/test_shortcuts.py::test_filter_from_string_logic[always-True] PASSED [ 86%] tests/test_shortcuts.py::test_filter_from_string_logic[never-False] PASSED [ 86%] tests/test_shortcuts.py::test_filter_from_string_logic[always & never-False] PASSED [ 86%] tests/test_shortcuts.py::test_filter_from_string_logic[always | never-True] PASSED [ 86%] tests/test_shortcuts.py::test_filter_from_string_logic[~never-True] PASSED [ 86%] tests/test_shortcuts.py::test_filter_from_string_logic[~always & never-False] PASSED [ 86%] tests/test_shortcuts.py::test_filter_from_string_unknown_name PASSED [ 86%] tests/test_shortcuts.py::test_filter_from_string_unhandled_node PASSED [ 86%] tests/test_shortcuts.py::test_eval_node_none PASSED [ 86%] tests/test_shortcuts.py::test_has_focus_sets_name PASSED [ 86%] tests/test_shortcuts.py::test_preceding_following_text_filters[preceded_by_opening_round_paren-foo(-None-True] PASSED [ 86%] tests/test_shortcuts.py::test_preceding_following_text_filters[preceded_by_opening_round_paren-foo-None-False] PASSED [ 86%] tests/test_shortcuts.py::test_preceding_following_text_filters[preceded_by_opening_bracket-foo[-None-True] PASSED [ 86%] tests/test_shortcuts.py::test_preceding_following_text_filters[preceded_by_opening_brace-foo{-None-True] PASSED [ 86%] tests/test_shortcuts.py::test_preceding_following_text_filters[preceded_by_double_quote-a = "-None-True] PASSED [ 87%] tests/test_shortcuts.py::test_preceding_following_text_filters[preceded_by_single_quote-a = '-None-True] PASSED [ 87%] tests/test_shortcuts.py::test_preceding_following_text_filters[preceded_by_two_double_quotes-x = ""-None-True] PASSED [ 87%] tests/test_shortcuts.py::test_preceding_following_text_filters[preceded_by_two_double_quotes-x = "-None-False] PASSED [ 87%] tests/test_shortcuts.py::test_preceding_following_text_filters[preceded_by_two_single_quotes-x = ''-None-True] PASSED [ 87%] tests/test_shortcuts.py::test_preceding_following_text_filters[preceded_by_raw_str_prefix-r"---None-True] PASSED [ 87%] tests/test_shortcuts.py::test_preceding_following_text_filters[preceded_by_raw_str_prefix-x"---None-False] PASSED [ 87%] tests/test_shortcuts.py::test_preceding_following_text_filters[preceded_by_paired_double_quotes-a = "x"-None-True] PASSED [ 87%] tests/test_shortcuts.py::test_preceding_following_text_filters[preceded_by_paired_double_quotes-a = "x-None-False] PASSED [ 87%] tests/test_shortcuts.py::test_preceding_following_text_filters[preceded_by_paired_single_quotes-a = 'x'-None-True] PASSED [ 87%] tests/test_shortcuts.py::test_preceding_following_text_filters[followed_by_closing_round_paren-()-1-True] PASSED [ 87%] tests/test_shortcuts.py::test_preceding_following_text_filters[followed_by_closing_round_paren-(x-1-False] PASSED [ 87%] tests/test_shortcuts.py::test_preceding_following_text_filters[followed_by_closing_bracket-[]-1-True] PASSED [ 87%] tests/test_shortcuts.py::test_preceding_following_text_filters[followed_by_closing_brace-{}-1-True] PASSED [ 87%] tests/test_shortcuts.py::test_preceding_following_text_filters[followed_by_double_quote-""-1-True] PASSED [ 87%] tests/test_shortcuts.py::test_preceding_following_text_filters[followed_by_single_quote-''-1-True] PASSED [ 87%] tests/test_shortcuts.py::test_preceding_following_text_filters[followed_by_closing_paren_or_end-f(x-None-True] PASSED [ 87%] tests/test_shortcuts.py::test_preceding_following_text_filters[followed_by_closing_paren_or_end-f(x)-3-True] PASSED [ 87%] tests/test_shortcuts.py::test_preceding_following_text_filters[followed_by_closing_paren_or_end-f(xy-3-False] PASSED [ 87%] tests/test_shortcuts.py::test_not_inside_unclosed_string[print(-None-True] PASSED [ 87%] tests/test_shortcuts.py::test_not_inside_unclosed_string[print("a-None-False] PASSED [ 87%] tests/test_shortcuts.py::test_not_inside_unclosed_string[a = "x" + -None-True] PASSED [ 87%] tests/test_shortcuts.py::test_not_inside_unclosed_string['''triple quoted''' -None-True] PASSED [ 87%] tests/test_shortcuts.py::test_not_inside_unclosed_string[x = "escaped \\" quote-None-False] PASSED [ 87%] tests/test_shortcuts.py::test_cursor_in_leading_ws[-None-True] PASSED [ 87%] tests/test_shortcuts.py::test_cursor_in_leading_ws[ -None-True] PASSED [ 87%] tests/test_shortcuts.py::test_cursor_in_leading_ws[ x-None-False] PASSED [ 87%] tests/test_shortcuts.py::test_line_position_filters PASSED [ 87%] tests/test_shortcuts.py::test_preceding_following_text_cache PASSED [ 87%] tests/test_shortcuts.py::test_shell_dependent_filters PASSED [ 88%] tests/test_shortcuts.py::test_pass_through_filter PASSED [ 88%] tests/test_shortcuts.py::test_create_identifier PASSED [ 88%] tests/test_shortcuts.py::test_binding_post_init PASSED [ 88%] tests/test_shortcuts.py::test_add_binding PASSED [ 88%] tests/test_shortcuts.py::test_create_ipython_shortcuts_skip PASSED [ 88%] tests/test_shortcuts.py::test_newline_or_execute_incomplete_input PASSED [ 88%] tests/test_shortcuts.py::test_newline_or_execute_complete_input PASSED [ 88%] tests/test_shortcuts.py::test_newline_or_execute_in_middle_of_multiline PASSED [ 88%] tests/test_shortcuts.py::test_newline_or_execute_without_autoindent PASSED [ 88%] tests/test_shortcuts.py::test_newline_or_execute_with_text_after_cursor PASSED [ 88%] tests/test_shortcuts.py::test_handle_return_uses_shell_handle_return PASSED [ 88%] tests/test_shortcuts.py::test_newline_or_execute_with_completion_state PASSED [ 88%] tests/test_shortcuts.py::test_reformat_and_execute PASSED [ 88%] tests/test_shortcuts.py::test_reformat_text_before_cursor_error_restores_text PASSED [ 88%] tests/test_shortcuts.py::test_previous_and_next_history_or_completion PASSED [ 88%] tests/test_shortcuts.py::test_dismiss_completion PASSED [ 88%] tests/test_shortcuts.py::test_reset_buffer PASSED [ 88%] tests/test_shortcuts.py::test_indent_buffer PASSED [ 88%] tests/test_shortcuts.py::test_newline_autoindent PASSED [ 88%] tests/test_shortcuts.py::test_newline_autoindent_cancels_completion PASSED [ 88%] tests/test_shortcuts.py::test_suspend_to_bg PASSED [ 88%] tests/test_shortcuts.py::test_open_input_in_editor PASSED [ 88%] tests/test_shortcuts.py::test_win_paste_stub PASSED [ 88%] tests/test_shortcuts.py::test_vi_mode_with_modal_cursor PASSED [ 88%] tests/test_splitinput.py::test_split_user_input[x=1-output0] PASSED [ 88%] tests/test_splitinput.py::test_split_user_input[?-output1] PASSED [ 88%] tests/test_splitinput.py::test_split_user_input[??-output2] PASSED [ 88%] tests/test_splitinput.py::test_split_user_input[ ?-output3] PASSED [ 88%] tests/test_splitinput.py::test_split_user_input[ ??-output4] PASSED [ 88%] tests/test_splitinput.py::test_split_user_input[??x-output5] PASSED [ 89%] tests/test_splitinput.py::test_split_user_input[?x=1-output6] PASSED [ 89%] tests/test_splitinput.py::test_split_user_input[!ls-output7] PASSED [ 89%] tests/test_splitinput.py::test_split_user_input[ !ls-output8] PASSED [ 89%] tests/test_splitinput.py::test_split_user_input[!!ls-output9] PASSED [ 89%] tests/test_splitinput.py::test_split_user_input[ !!ls-output10] PASSED [ 89%] tests/test_splitinput.py::test_split_user_input[,ls-output11] PASSED [ 89%] tests/test_splitinput.py::test_split_user_input[;ls-output12] PASSED [ 89%] tests/test_splitinput.py::test_split_user_input[ ;ls-output13] PASSED [ 89%] tests/test_splitinput.py::test_split_user_input[f.g(x)-output14] PASSED [ 89%] tests/test_splitinput.py::test_split_user_input[f.g (x)-output15] PASSED [ 89%] tests/test_splitinput.py::test_split_user_input[?%hist1-output16] PASSED [ 89%] tests/test_splitinput.py::test_split_user_input[?%%hist2-output17] PASSED [ 89%] tests/test_splitinput.py::test_split_user_input[??%hist3-output18] PASSED [ 89%] tests/test_splitinput.py::test_split_user_input[??%%hist4-output19] PASSED [ 89%] tests/test_splitinput.py::test_split_user_input[?x*-output20] PASSED [ 89%] tests/test_splitinput.py::test_split_user_input[P\xe9rez Fernando-output21] PASSED [ 89%] tests/test_splitinput.py::test_LineInfo PASSED [ 89%] tests/test_splitinput.py::test_LineInfo_repr PASSED [ 89%] tests/test_splitinput.py::test_LineInfo_attributes PASSED [ 89%] tests/test_splitinput.py::test_LineInfo_continue_prompt PASSED [ 89%] tests/test_splitinput.py::test_split_user_input_pattern_no_match PASSED [ 89%] tests/test_splitinput.py::test_split_user_input_pattern_no_match_single_word PASSED [ 89%] tests/test_splitinput.py::test_split_user_input_pattern_no_match_leading_space PASSED [ 89%] tests/test_splitinput.py::test_LineInfo_ofind_deprecated PASSED [ 89%] tests/test_storemagic.py::test_store_restore PASSED [ 89%] tests/test_storemagic.py::test_autorestore PASSED [ 89%] tests/test_storemagic.py::test_store_list PASSED [ 89%] tests/test_storemagic.py::test_store_delete PASSED [ 89%] tests/test_storemagic.py::test_store_delete_no_args PASSED [ 90%] tests/test_storemagic.py::test_store_delete_failure PASSED [ 90%] tests/test_storemagic.py::test_store_reset PASSED [ 90%] tests/test_storemagic.py::test_store_list_empty PASSED [ 90%] tests/test_storemagic.py::test_store_restore_unknown_name PASSED [ 90%] tests/test_storemagic.py::test_store_unknown_variable_raises PASSED [ 90%] tests/test_storemagic.py::test_store_string_to_file PASSED [ 90%] tests/test_storemagic.py::test_store_object_to_file PASSED [ 90%] tests/test_storemagic.py::test_store_interactively_defined_class_warns PASSED [ 90%] tests/test_storemagic.py::test_refresh_corrupt_variable PASSED [ 90%] tests/test_strdispatch.py::test_s_matches_exact_string PASSED [ 90%] tests/test_strdispatch.py::test_s_matches_no_match_returns_empty PASSED [ 90%] tests/test_strdispatch.py::test_add_re_matches_pattern PASSED [ 90%] tests/test_strdispatch.py::test_add_re_no_match PASSED [ 90%] tests/test_strdispatch.py::test_flat_matches_combines_string_and_regex PASSED [ 90%] tests/test_strdispatch.py::test_priority_lower_number_comes_first PASSED [ 90%] tests/test_strdispatch.py::test_dispatch_yields_chains PASSED [ 90%] tests/test_strdispatch.py::test_dispatch_empty_for_no_match PASSED [ 90%] tests/test_strdispatch.py::test_repr_contains_class_name PASSED [ 90%] tests/test_strdispatch.py::test_multiple_values_for_same_key PASSED [ 90%] tests/test_strdispatch.py::test_docstring_example PASSED [ 90%] tests/test_sysinfo.py::test_json_getsysinfo PASSED [ 90%] tests/test_sysinfo.py::test_get_sys_info_returns_dict PASSED [ 90%] tests/test_sysinfo.py::test_get_sys_info_has_key[ipython_version] PASSED [ 90%] tests/test_sysinfo.py::test_get_sys_info_has_key[ipython_path] PASSED [ 90%] tests/test_sysinfo.py::test_get_sys_info_has_key[commit_source] PASSED [ 90%] tests/test_sysinfo.py::test_get_sys_info_has_key[commit_hash] PASSED [ 90%] tests/test_sysinfo.py::test_get_sys_info_has_key[sys_version] PASSED [ 90%] tests/test_sysinfo.py::test_get_sys_info_has_key[sys_executable] PASSED [ 90%] tests/test_sysinfo.py::test_get_sys_info_has_key[sys_platform] PASSED [ 91%] tests/test_sysinfo.py::test_get_sys_info_has_key[platform] PASSED [ 91%] tests/test_sysinfo.py::test_get_sys_info_has_key[os_name] PASSED [ 91%] tests/test_sysinfo.py::test_get_sys_info_has_key[default_encoding] PASSED [ 91%] tests/test_sysinfo.py::test_get_sys_info_sys_version_matches PASSED [ 91%] tests/test_sysinfo.py::test_get_sys_info_sys_executable_matches PASSED [ 91%] tests/test_sysinfo.py::test_get_sys_info_platform_is_string PASSED [ 91%] tests/test_sysinfo.py::test_sys_info_returns_string PASSED [ 91%] tests/test_sysinfo.py::test_sys_info_contains_version PASSED [ 91%] tests/test_syspathcontext.py::test_prepended_adds_dir_to_sys_path PASSED [ 91%] tests/test_syspathcontext.py::test_prepended_removes_dir_on_exit PASSED [ 91%] tests/test_syspathcontext.py::test_prepended_dir_at_front_of_sys_path PASSED [ 91%] tests/test_syspathcontext.py::test_prepended_returns_self PASSED [ 91%] tests/test_syspathcontext.py::test_prepended_already_in_path_not_duplicated PASSED [ 91%] tests/test_syspathcontext.py::test_prepended_already_in_path_not_removed_on_exit PASSED [ 91%] tests/test_syspathcontext.py::test_prepended_removes_after_exception PASSED [ 91%] tests/test_syspathcontext.py::test_prepended_exception_propagates PASSED [ 91%] tests/test_syspathcontext.py::test_prepended_handles_concurrent_removal PASSED [ 91%] tests/test_tempdir.py::test_named_file_in_temporary_directory PASSED [ 91%] tests/test_tempdir.py::test_temporary_working_directory PASSED [ 91%] tests/test_terminal_utils.py::test_get_terminal_size_returns_tuple PASSED [ 91%] tests/test_terminal_utils.py::test_get_terminal_size_defaults_used_when_no_tty[80-25] PASSED [ 91%] tests/test_terminal_utils.py::test_get_terminal_size_defaults_used_when_no_tty[120-40] PASSED [ 91%] tests/test_terminal_utils.py::test_get_terminal_size_defaults_used_when_no_tty[40-10] PASSED [ 91%] tests/test_terminal_utils.py::test_toggle_set_term_title_enables PASSED [ 91%] tests/test_terminal_utils.py::test_toggle_set_term_title_disables PASSED [ 91%] tests/test_terminal_utils.py::test_set_term_title_noop_when_ignored PASSED [ 91%] tests/test_terminal_utils.py::test_set_term_title_calls_impl_when_enabled PASSED [ 91%] tests/test_terminal_utils.py::test_restore_term_title_noop_when_ignored PASSED [ 91%] tests/test_text.py::test_eval_formatter PASSED [ 91%] tests/test_text.py::test_full_eval_formatter PASSED [ 92%] tests/test_text.py::test_dollar_formatter PASSED [ 92%] tests/test_text.py::test_strip_email PASSED [ 92%] tests/test_text.py::test_strip_email2 PASSED [ 92%] tests/test_text.py::test_LSString PASSED [ 92%] tests/test_text.py::test_SList PASSED [ 92%] tests/test_text_utils.py::test_indent_spaces[hello-4- hello] PASSED [ 92%] tests/test_text_utils.py::test_indent_spaces[hello\nworld-2- hello\n world] PASSED [ 92%] tests/test_text_utils.py::test_indent_spaces[a\nb-0-a\nb] PASSED [ 92%] tests/test_text_utils.py::test_indent_tabs PASSED [ 92%] tests/test_text_utils.py::test_indent_flatten PASSED [ 92%] tests/test_text_utils.py::test_list_strings[single string-expected0] PASSED [ 92%] tests/test_text_utils.py::test_list_strings[input_1-expected1] PASSED [ 92%] tests/test_text_utils.py::test_list_strings[input_2-expected2] PASSED [ 92%] tests/test_text_utils.py::test_list_strings[-expected3] PASSED [ 92%] tests/test_text_utils.py::test_list_strings_returns_same_list_object PASSED [ 92%] tests/test_text_utils.py::test_marquee_contains_text[test-20-*-test] PASSED [ 92%] tests/test_text_utils.py::test_marquee_contains_text[-10---None] PASSED [ 92%] tests/test_text_utils.py::test_marquee_contains_text[hi-14-=-hi] PASSED [ 92%] tests/test_text_utils.py::test_marquee_empty_text_fills_width[10] PASSED [ 92%] tests/test_text_utils.py::test_marquee_empty_text_fills_width[20] PASSED [ 92%] tests/test_text_utils.py::test_marquee_empty_text_fills_width[40] PASSED [ 92%] tests/test_text_utils.py::test_marquee_empty_text_fills_width[78] PASSED [ 92%] tests/test_text_utils.py::test_marquee_symmetric PASSED [ 92%] tests/test_text_utils.py::test_format_screen_removes_backslash_continuation PASSED [ 92%] tests/test_text_utils.py::test_format_screen_passthrough_plain PASSED [ 92%] tests/test_text_utils.py::test_dedent[hello-hello] PASSED [ 92%] tests/test_text_utils.py::test_dedent[\n foo\n bar-\nfoo\nbar] PASSED [ 92%] tests/test_text_utils.py::test_dedent[first\n second\n third-first\nsecond\nthird] PASSED [ 92%] tests/test_text_utils.py::test_dedent[ indented-indented] PASSED [ 93%] tests/test_text_utils.py::test_get_text_list[items0- and -, --] PASSED [ 93%] tests/test_text_utils.py::test_get_text_list[items1- and -, --a] PASSED [ 93%] tests/test_text_utils.py::test_get_text_list[items2- and -, --a and b] PASSED [ 93%] tests/test_text_utils.py::test_get_text_list[items3- and -, --a, b and c] PASSED [ 93%] tests/test_text_utils.py::test_get_text_list[items4- and -, --a, b, c and d] PASSED [ 93%] tests/test_text_utils.py::test_get_text_list[items5- or -, --a, b or c] PASSED [ 93%] tests/test_text_utils.py::test_get_text_list[items6- and -, -`-`a` and `b`] PASSED [ 93%] tests/test_text_utils.py::test_get_text_list[items7-, - + --a + b, c] PASSED [ 93%] tests/test_timing.py::test_clock_returns_float PASSED [ 93%] tests/test_timing.py::test_clock2_returns_two_floats PASSED [ 93%] tests/test_timing.py::test_timings_out_reps_1 PASSED [ 93%] tests/test_timing.py::test_timings_out_reps_multiple PASSED [ 93%] tests/test_timing.py::test_timings_out_returns_last_output PASSED [ 93%] tests/test_timing.py::test_timings_out_invalid_reps_raises PASSED [ 93%] tests/test_timing.py::test_timings_out_negative_reps_raises PASSED [ 93%] tests/test_timing.py::test_timings_returns_two_floats PASSED [ 93%] tests/test_timing.py::test_timing_returns_float PASSED [ 93%] tests/test_timing.py::test_timings_per_call_equals_total_divided_by_reps[1] PASSED [ 93%] tests/test_timing.py::test_timings_per_call_equals_total_divided_by_reps[2] PASSED [ 93%] tests/test_timing.py::test_timings_per_call_equals_total_divided_by_reps[5] PASSED [ 93%] tests/test_timing.py::test_timings_per_call_equals_total_divided_by_reps[10] PASSED [ 93%] tests/test_timing.py::test_timings_out_passes_args_and_kwargs PASSED [ 93%] tests/test_tips.py::test_tips[Use `F2` or %edit with no arguments to open an empty editor with a temporary file.] SKIPPED [ 93%] tests/test_tips.py::test_tips[Run your doctests from within IPython for development and debugging. The special %doctest_mode command toggles a mode where the prompt, output and exceptions display matches as closely as possible that of the default Python interpreter.] SKIPPED [ 93%] tests/test_tips.py::test_tips[You can use `files = !ls *.png`] SKIPPED [ 93%] tests/test_tips.py::test_tips[Use the IPython.lib.demo.Demo class to load any Python script as an interactive demo.] SKIPPED [ 93%] tests/test_tips.py::test_tips[Put a ';' at the end of a line to suppress the printing of output.] SKIPPED [ 93%] tests/test_tips.py::test_tips[You can use Ctrl-O to force a new line in terminal IPython] SKIPPED [ 93%] tests/test_tips.py::test_tips[Use `object?` to see the help on `object`, `object??` to view its source] SKIPPED [ 93%] tests/test_tips.py::test_tips[`?` alone on a line will brings up IPython's help] SKIPPED [ 94%] tests/test_tips.py::test_tips[You can use `%hist` to view history, see the options with `%history?`] SKIPPED [ 94%] tests/test_tips.py::test_tips[You can change the editing mode of IPython to behave more like vi, or emacs.] SKIPPED [ 94%] tests/test_tips.py::test_tips[IPython 9.0+ has hooks to integrate AI/LLM completions.] SKIPPED [ 94%] tests/test_tips.py::test_tips[Use `%timeit` or `%%timeit`, and the `-r`, `-n`, and `-o` options to easily profile your code.] SKIPPED [ 94%] tests/test_tips.py::test_tips[Use `ipython --help-all | less` to view all the IPython configuration options.] SKIPPED [ 94%] tests/test_tips.py::test_tips[Use `--theme`, or the `%colors` magic to change IPython's themes and colors.] SKIPPED [ 94%] tests/test_tips.py::test_tips[The `%timeit` magic has a `-o` flag, which returns the results, making it easy to plot. See `%timeit?`.] SKIPPED [ 94%] tests/test_tips.py::test_tips[You can use LaTeX or Unicode completion, `\\alpha` will insert the \u03b1 symbol.] SKIPPED [ 94%] tests/test_tips.py::test_tips[You can find how to type a LaTeX symbol by back-completing it, eg `\\\u03b8` will expand to `\\theta`.] SKIPPED [ 94%] tests/test_tips.py::test_tips[You can find how to type a Unicode symbol by back-completing it, eg `\\\u2167` will expand to `\\ROMAN NUMERAL EIGHT`.] SKIPPED [ 94%] tests/test_tips.py::test_tips[IPython supports combining unicode identifiers, eg F\\vec will become F\u20d7, useful for physics equations. Play with \\dot \\ddot and others.] SKIPPED [ 94%] tests/test_tips.py::test_tips[Run `activate-global-python-argcomplete` from your shell to enable CLI completion for IPython] SKIPPED [ 94%] tests/test_tips.py::test_tips[Happy new year!] SKIPPED (Windows cons...) [ 94%] tests/test_tips.py::test_tips[IPython's first line of code was written 25 years ago by Fernando P\xe9rez] SKIPPED [ 94%] tests/test_tips.py::test_tips[IPython 0.0.2 was announced 25 years ago: https://mail.python.org/pipermail/python-list/2001-December/093408.html] SKIPPED [ 94%] tests/test_tips.py::test_tips[Today is International Women's Day: https://www.internationalwomensday.com/] SKIPPED [ 94%] tests/test_tips.py::test_tips[Happy International Transgender Day of Visibility! You are valid. You matter. https://en.wikipedia.org/wiki/International_Transgender_Day_of_Visibility] SKIPPED [ 94%] tests/test_tips.py::test_pick_tip_special_day PASSED [ 94%] tests/test_tips.py::test_pick_tip_random_day PASSED [ 94%] tests/test_tips.py::test_tips_filtered_on_windows PASSED [ 94%] tests/test_tips.py::test_unicode_tips_on_non_windows PASSED [ 94%] tests/test_tips.py::test_argcomplete_tip_added_when_available PASSED [ 94%] tests/test_tips.py::test_argcomplete_tip_absent_when_unavailable PASSED [ 94%] tests/test_tokenutil.py::test_simple PASSED [ 94%] tests/test_tokenutil.py::test_function PASSED [ 94%] tests/test_tokenutil.py::test_multiline[a = 5\nb = hello('string', there)] PASSED [ 94%] tests/test_tokenutil.py::test_multiline[\n """\n\nxxxxxxxxxx\n\n"""\n 5, """\n """\n\nxxxxxxxxxx\n\n"""\n docstring\n multiline token\n """, [\n 2, 3, "complicated"]\n b = hello("string", there)\n] PASSED [ 94%] tests/test_tokenutil.py::test_nested_call_kwargs PASSED [ 94%] tests/test_tokenutil.py::test_nested_call_args PASSED [ 95%] tests/test_tokenutil.py::test_outer_name PASSED [ 95%] tests/test_tokenutil.py::test_attrs PASSED [ 95%] tests/test_tokenutil.py::test_line_at_cursor PASSED [ 95%] tests/test_tokenutil.py::test_multiline_statement[16-int] PASSED [ 95%] tests/test_tokenutil.py::test_multiline_statement[17-int] PASSED [ 95%] tests/test_tokenutil.py::test_multiline_statement[18-int] PASSED [ 95%] tests/test_tokenutil.py::test_multiline_statement[19-int] PASSED [ 95%] tests/test_tokenutil.py::test_multiline_statement[20-int] PASSED [ 95%] tests/test_tokenutil.py::test_multiline_statement[21-int] PASSED [ 95%] tests/test_tokenutil.py::test_multiline_statement[22-map] PASSED [ 95%] tests/test_tokenutil.py::test_multiline_statement[23-map] PASSED [ 95%] tests/test_tokenutil.py::test_multiline_statement[24-map] PASSED [ 95%] tests/test_tokenutil.py::test_multiline_statement[25-map] PASSED [ 95%] tests/test_tokenutil.py::test_multiline_statement[26-map] PASSED [ 95%] tests/test_tokenutil.py::test_multiline_statement[27-map] PASSED [ 95%] tests/test_tokenutil.py::test_generate_tokens_catch_errors_eof_reraised PASSED [ 95%] tests/test_tokenutil.py::test_generate_tokens_catch_errors_yields_errortoken['abc\n] PASSED [ 95%] tests/test_tokenutil.py::test_generate_tokens_catch_errors_yields_errortoken[0b12\n] PASSED [ 95%] tests/test_tokenutil.py::test_generate_tokens_catch_errors_yields_errortoken[0o1239\n] PASSED [ 95%] tests/test_tokenutil.py::test_generate_tokens_catch_errors_yields_errortoken[1__2\n] PASSED [ 95%] tests/test_tokenutil.py::test_generate_tokens_catch_errors_yields_errortoken[0b\n] PASSED [ 95%] tests/test_tokenutil.py::test_generate_tokens_catch_errors_yields_errortoken[0xg\n] PASSED [ 95%] tests/test_tools.py::test_full_path_posix PASSED [ 95%] tests/test_tools.py::test_full_path_win32 SKIPPED (This test only ru...) [ 95%] tests/test_tools.py::test_parser[FAILED (errors=1)-1-0] PASSED [ 95%] tests/test_tools.py::test_parser[FAILED (failures=1)-0-1] PASSED [ 95%] tests/test_tools.py::test_parser[FAILED (errors=1, failures=1)-1-1] PASSED [ 95%] tests/test_tools.py::test_temp_pyfile PASSED [ 95%] tests/test_tools.py::test_assert_prints_passing PASSED [ 95%] tests/test_tools.py::test_assert_prints_failing PASSED [ 96%] tests/test_tools.py::test_ipexec_validate_main_path PASSED [ 96%] tests/test_tools.py::test_ipexec_validate_main_path2 PASSED [ 96%] tests/test_tools.py::test_ipexec_validate_exception_path PASSED [ 96%] tests/test_tools.py::test_ipexec_validate_exception_path2 PASSED [ 96%] tests/test_ultratb.py::test_changing_py_file PASSED [ 96%] tests/test_ultratb.py::test_nonascii_path PASSED [ 96%] tests/test_ultratb.py::test_iso8859_5 PASSED [ 96%] tests/test_ultratb.py::test_nonascii_msg[plain-Exception('\xe9')] PASSED [ 96%] tests/test_ultratb.py::test_nonascii_msg[verbose-Exception('\xe9')] PASSED [ 96%] tests/test_ultratb.py::test_nonascii_msg[context-Exception('\xe9')] PASSED [ 96%] tests/test_ultratb.py::test_nonascii_msg[minimal-Exception: \xe9] PASSED [ 96%] tests/test_ultratb.py::test_nested_genexpr PASSED [ 96%] tests/test_ultratb.py::test_indentationerror_shows_line PASSED [ 96%] tests/test_ultratb.py::test_dynamic_code PASSED [ 96%] tests/test_ultratb.py::test_syntaxerror_no_stacktrace_at_compile_time PASSED [ 96%] tests/test_ultratb.py::test_syntaxerror_stacktrace_when_running_compiled_code PASSED [ 96%] tests/test_ultratb.py::test_syntax_error_changing_py_file PASSED [ 96%] tests/test_ultratb.py::test_non_syntaxerror PASSED [ 96%] tests/test_ultratb.py::test_memoryerror PASSED [ 96%] tests/test_ultratb.py::test_direct_cause_error PASSED [ 96%] tests/test_ultratb.py::test_exception_during_handling_error PASSED [ 96%] tests/test_ultratb.py::test_sysexit_while_handling_error PASSED [ 96%] tests/test_ultratb.py::test_suppress_exception_chaining PASSED [ 96%] tests/test_ultratb.py::test_plain_direct_cause_error PASSED [ 96%] tests/test_ultratb.py::test_plain_exception_during_handling_error PASSED [ 96%] tests/test_ultratb.py::test_plain_suppress_exception_chaining PASSED [ 96%] tests/test_ultratb.py::test_no_recursion PASSED [ 96%] tests/test_ultratb.py::test_recursion_one_frame PASSED [ 96%] tests/test_ultratb.py::test_recursion_three_frames PASSED [ 97%] tests/test_ultratb.py::test_verbose_reports_notes PASSED [ 97%] tests/test_ultratb.py::test_plain_reports_notes PASSED [ 97%] tests/test_ultratb.py::test_jsondecodeerror_message PASSED [ 97%] tests/test_ultratb.py::test_handlers PASSED [ 97%] tests/test_ultratb.py::testSyntaxError PASSED [ 97%] tests/test_ultratb.py::test_xmode_doctest PASSED [ 97%] tests/test_utils_misc.py::test_uniq_stable_is_deprecated PASSED [ 97%] tests/test_utils_misc.py::test_uniq_stable_accepts_iterables PASSED [ 97%] tests/test_utils_misc.py::test_chop PASSED [ 97%] tests/test_utils_misc.py::test_clock_functions PASSED [ 97%] tests/test_utils_misc.py::test_timings_out_single_rep PASSED [ 97%] tests/test_utils_misc.py::test_timings_out_multiple_reps PASSED [ 97%] tests/test_utils_misc.py::test_timings_out_rejects_bad_reps PASSED [ 97%] tests/test_utils_misc.py::test_timings PASSED [ 97%] tests/test_utils_misc.py::test_timing PASSED [ 97%] tests/test_utils_misc.py::test_timing_without_getrusage PASSED [ 97%] tests/test_utils_misc.py::test_timing_without_resource_module PASSED [ 97%] tests/test_utils_misc.py::test_extract_module_locals PASSED [ 97%] tests/test_utils_misc.py::test_extract_module_locals_depth PASSED [ 97%] tests/test_utils_misc.py::test_get_stream_enc PASSED [ 97%] tests/test_utils_misc.py::test_getdefaultencoding_from_stdin PASSED [ 97%] tests/test_utils_misc.py::test_getdefaultencoding_prefers_locale_over_ascii PASSED [ 97%] tests/test_utils_misc.py::test_getdefaultencoding_locale_error PASSED [ 97%] tests/test_utils_misc.py::test_getdefaultencoding_falls_back_to_sys PASSED [ 97%] tests/test_utils_misc.py::test_getdefaultencoding_cp0 PASSED [ 97%] tests/test_utils_misc.py::test_getdefaultencoding_prefer_stream_deprecated PASSED [ 97%] tests/test_utils_misc.py::test_default_encoding_constant PASSED [ 97%] tests/test_utils_terminal.py::test_toggle_set_term_title PASSED [ 97%] tests/test_utils_terminal.py::test_set_term_title_ignored_by_default PASSED [ 97%] tests/test_utils_terminal.py::test_set_term_title_enabled PASSED [ 98%] tests/test_utils_terminal.py::test_set_term_title_xterm_saves_once PASSED [ 98%] tests/test_utils_terminal.py::test_set_term_title_xterm_strips_control_characters PASSED [ 98%] tests/test_utils_terminal.py::test_restore_term_title_xterm PASSED [ 98%] tests/test_utils_terminal.py::test_restore_term_title_xterm_without_save_warns PASSED [ 98%] tests/test_utils_terminal.py::test_term_title_functions_bound_on_xterm PASSED [ 98%] tests/test_utils_terminal.py::test_term_title_functions_noop_on_dumb_terminal PASSED [ 98%] tests/test_utils_terminal.py::test_term_clear PASSED [ 98%] tests/test_utils_terminal.py::test_get_terminal_size_from_environment PASSED [ 98%] tests/test_utils_terminal.py::test_get_terminal_size_defaults PASSED [ 98%] tests/test_wildcard.py::test_case[a*-expected0] PASSED [ 98%] tests/test_wildcard.py::test_case[?b*.?o*-expected1] PASSED [ 98%] tests/test_wildcard.py::test_case[_a*-expected2] PASSED [ 98%] tests/test_wildcard.py::test_case[_*anka-expected3] PASSED [ 98%] tests/test_wildcard.py::test_case[_*a*-expected4] PASSED [ 98%] tests/test_wildcard.py::test_case_showall[a*-expected0] PASSED [ 98%] tests/test_wildcard.py::test_case_showall[?b*.?o*-expected1] PASSED [ 98%] tests/test_wildcard.py::test_case_showall[_a*-expected2] PASSED [ 98%] tests/test_wildcard.py::test_case_showall[_*anka-expected3] PASSED [ 98%] tests/test_wildcard.py::test_case_showall[_*a*-expected4] PASSED [ 98%] tests/test_wildcard.py::test_nocase[a*-expected0] PASSED [ 98%] tests/test_wildcard.py::test_nocase[?b*.?o*-expected1] PASSED [ 98%] tests/test_wildcard.py::test_nocase[_a*-expected2] PASSED [ 98%] tests/test_wildcard.py::test_nocase[_*anka-expected3] PASSED [ 98%] tests/test_wildcard.py::test_nocase[_*a*-expected4] PASSED [ 98%] tests/test_wildcard.py::test_nocase_showall[a*-expected0] PASSED [ 98%] tests/test_wildcard.py::test_nocase_showall[?b*.?o*-expected1] PASSED [ 98%] tests/test_wildcard.py::test_nocase_showall[_a*-expected2] PASSED [ 98%] tests/test_wildcard.py::test_nocase_showall[_*anka-expected3] PASSED [ 98%] tests/test_wildcard.py::test_nocase_showall[_*a*-expected4] PASSED [ 99%] tests/test_wildcard.py::test_dict_attributes[a*-expected0] PASSED [ 99%] tests/test_wildcard.py::test_dict_attributes[az.k*-expected1] PASSED [ 99%] tests/test_wildcard.py::test_dict_attributes[pq.k*-expected2] PASSED [ 99%] tests/test_wildcard.py::test_dict_dir PASSED [ 99%] tests/test_zzz_autoreload.py::test_reload_enums PASSED [ 99%] tests/test_zzz_autoreload.py::test_reload_class_type PASSED [ 99%] tests/test_zzz_autoreload.py::test_reload_class_attributes PASSED [ 99%] tests/test_zzz_autoreload.py::test_comparing_numpy_structures PASSED [ 99%] tests/test_zzz_autoreload.py::test_autoload_newly_added_objects PASSED [ 99%] tests/test_zzz_autoreload.py::test_autoload3_import_Y_as_Z PASSED [ 99%] tests/test_zzz_autoreload.py::test_autoload3_import_Y_as_Z_overloading PASSED [ 99%] tests/test_zzz_autoreload.py::test_autoload3_normalimport PASSED [ 99%] tests/test_zzz_autoreload.py::test_autoload3_normalimport_2 PASSED [ 99%] tests/test_zzz_autoreload.py::test_autoload_3_does_not_add_all PASSED [ 99%] tests/test_zzz_autoreload.py::test_verbose_names PASSED [ 99%] tests/test_zzz_autoreload.py::test_aimport_parsing PASSED [ 99%] tests/test_zzz_autoreload.py::test_aimport_as PASSED [ 99%] tests/test_zzz_autoreload.py::test_autoreload_output PASSED [ 99%] tests/test_zzz_autoreload.py::test_smoketest_aimport PASSED [ 99%] tests/test_zzz_autoreload.py::test_smoketest_autoreload PASSED [ 99%] tests/test_zzz_autoreload.py::test_autoreload_with_user_defined_In_variable PASSED [ 99%] tests/test_zzz_autoreload.py::test_import_from_tracker_conflict_resolution PASSED [ 99%] tests/test_zzz_autoreload.py::test_import_from_tracker_reverse_conflict PASSED [ 99%] tests/test_zzz_autoreload.py::test_import_from_tracker_invalid_import PASSED [ 99%] tests/test_zzz_autoreload.py::test_import_from_tracker_integration PASSED [ 99%] tests/test_zzz_autoreload.py::test_autoreload3_double_import PASSED [ 99%] tests/test_zzz_autoreload.py::test_import_from_tracker_unloaded_module PASSED [ 99%] tests/test_zzz_autoreload.py::test_import_from_tracker_multiple_resolved_names PASSED [ 99%] =================================== FAILURES =================================== ___________________________ test_stream_performance ____________________________ capsys = <_pytest.capture.CaptureFixture object at 0x7fbe58d2d4d0> def test_stream_performance(capsys) -> None: """It should be fast to execute.""" src = "for i in range(250_000): print(i)" start = time.perf_counter() ip.run_cell(src) end = time.perf_counter() # We try to read as otherwise on failure, pytest will print the 250k lines to stdout. capsys.readouterr() duration = end - start > assert duration < 10 E assert 10.3621511682868 < 10 tests/test_interactiveshell.py:63: AssertionError _______________________ test_script_streams_continuously _______________________ capsys = <_pytest.capture.CaptureFixture object at 0x7fbe27791a50> @pytest.mark.asyncio async def test_script_streams_continuously(capsys): ip = get_ipython() # Windows is slow to start up a thread on CI is_windows = os.name == "nt" step = 3 if is_windows else 1 code = dedent( f"""\ import time for _ in range(3): time.sleep({step}) print(".", flush=True, end="") """ ) def print_numbers(): for i in range(3): sleep(step) print(i, flush=True, end="") thread = Thread(target=print_numbers) thread.start() sleep(step / 2) ip.run_cell_magic("script", sys.executable, code) thread.join() captured = capsys.readouterr() # If the streaming was line-wise or broken # we would get `012...` > assert captured.out == "0.1.2." E AssertionError: assert '01.2..' == '0.1.2.' E E - 0.1.2. E ? - E + 01.2.. E ? + tests/test_magic.py:1622: AssertionError ============================= slowest 10 durations ============================= 12.78s call tests/test_debugger.py::test_ignore_module_all_commands 10.37s call tests/test_interactiveshell.py::test_stream_performance 9.77s call tests/test_completer.py::test_unicode_range 6.64s call tests/test_zzz_autoreload.py::test_autoload_newly_added_objects 5.75s call tests/test_completer.py::test_func_kw_completions 5.73s call tests/test_zzz_autoreload.py::test_autoreload_output 5.47s call tests/test_history.py::test_histmanager_memory_fallback_reopens_db 5.43s call tests/test_zzz_autoreload.py::test_smoketest_autoreload 5.30s call tests/test_profile.py::test_profile_create_ipython_dir 5.27s call tests/test_completer.py::test_custom_completion_error =========================== short test summary info ============================ FAILED tests/test_interactiveshell.py::test_stream_performance - assert 10.36... FAILED tests/test_magic.py::test_script_streams_continuously - AssertionError... ====== 2 failed, 2830 passed, 112 skipped, 3 xfailed in 481.22s (0:08:01) ====== ==> ERROR: A failure occurred in check().  Aborting... ==> ERROR: Build failed, check /var/lib/archbuild/extra-riscv64/felix-0/build receiving incremental file list ipython-9.17.0-1-riscv64-build.log ipython-9.17.0-1-riscv64-check.log sent 62 bytes received 38,930 bytes 77,984.00 bytes/sec total size is 309,906 speedup is 7.95