ipython 9.0.0b1__tar.gz → 9.0.1__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (442) hide show
  1. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/core/debugger.py +15 -3
  2. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/core/interactiveshell.py +7 -2
  3. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/core/magic.py +3 -2
  4. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/core/magics/code.py +1 -1
  5. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/core/magics/execution.py +92 -69
  6. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/core/release.py +3 -3
  7. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/core/tips.py +29 -5
  8. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/core/ultratb.py +32 -1
  9. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/terminal/interactiveshell.py +6 -0
  10. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/terminal/ptutils.py +3 -2
  11. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/utils/_sysinfo.py +1 -1
  12. ipython-9.0.1/IPython/utils/coloransi.py +9 -0
  13. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/utils/encoding.py +28 -10
  14. {ipython-9.0.0b1 → ipython-9.0.1}/PKG-INFO +1 -1
  15. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/config/details.rst +22 -0
  16. ipython-9.0.1/docs/source/whatsnew/version9.rst +166 -0
  17. {ipython-9.0.0b1 → ipython-9.0.1}/ipython.egg-info/PKG-INFO +1 -1
  18. {ipython-9.0.0b1 → ipython-9.0.1}/ipython.egg-info/SOURCES.txt +3 -0
  19. ipython-9.0.1/tests/__init__.py +0 -0
  20. {ipython-9.0.0b1 → ipython-9.0.1}/tests/test_embed.py +1 -1
  21. ipython-9.0.1/tests/test_tips.py +12 -0
  22. ipython-9.0.0b1/docs/source/whatsnew/version9.rst +0 -110
  23. {ipython-9.0.0b1 → ipython-9.0.1}/.flake8 +0 -0
  24. {ipython-9.0.0b1 → ipython-9.0.1}/.mailmap +0 -0
  25. {ipython-9.0.0b1 → ipython-9.0.1}/.pre-commit-config.yaml +0 -0
  26. {ipython-9.0.0b1 → ipython-9.0.1}/COPYING.rst +0 -0
  27. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/__init__.py +0 -0
  28. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/__main__.py +0 -0
  29. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/core/__init__.py +0 -0
  30. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/core/alias.py +0 -0
  31. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/core/application.py +0 -0
  32. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/core/async_helpers.py +0 -0
  33. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/core/autocall.py +0 -0
  34. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/core/builtin_trap.py +0 -0
  35. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/core/compilerop.py +0 -0
  36. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/core/completer.py +0 -0
  37. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/core/completerlib.py +0 -0
  38. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/core/crashhandler.py +0 -0
  39. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/core/display.py +0 -0
  40. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/core/display_functions.py +0 -0
  41. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/core/display_trap.py +0 -0
  42. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/core/displayhook.py +0 -0
  43. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/core/displaypub.py +0 -0
  44. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/core/doctb.py +0 -0
  45. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/core/error.py +0 -0
  46. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/core/events.py +0 -0
  47. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/core/extensions.py +0 -0
  48. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/core/formatters.py +0 -0
  49. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/core/getipython.py +0 -0
  50. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/core/guarded_eval.py +0 -0
  51. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/core/history.py +0 -0
  52. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/core/historyapp.py +0 -0
  53. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/core/hooks.py +0 -0
  54. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/core/inputtransformer2.py +0 -0
  55. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/core/latex_symbols.py +0 -0
  56. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/core/logger.py +0 -0
  57. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/core/macro.py +0 -0
  58. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/core/magic_arguments.py +0 -0
  59. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/core/magics/__init__.py +0 -0
  60. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/core/magics/ast_mod.py +0 -0
  61. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/core/magics/auto.py +0 -0
  62. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/core/magics/basic.py +0 -0
  63. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/core/magics/config.py +0 -0
  64. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/core/magics/display.py +0 -0
  65. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/core/magics/extension.py +0 -0
  66. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/core/magics/history.py +0 -0
  67. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/core/magics/logging.py +0 -0
  68. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/core/magics/namespace.py +0 -0
  69. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/core/magics/osm.py +0 -0
  70. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/core/magics/packaging.py +0 -0
  71. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/core/magics/pylab.py +0 -0
  72. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/core/magics/script.py +0 -0
  73. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/core/oinspect.py +0 -0
  74. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/core/page.py +0 -0
  75. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/core/payload.py +0 -0
  76. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/core/payloadpage.py +0 -0
  77. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/core/prefilter.py +0 -0
  78. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/core/profile/README_STARTUP +0 -0
  79. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/core/profileapp.py +0 -0
  80. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/core/profiledir.py +0 -0
  81. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/core/pylabtools.py +0 -0
  82. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/core/shellapp.py +0 -0
  83. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/core/splitinput.py +0 -0
  84. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/core/tbtools.py +0 -0
  85. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/core/usage.py +0 -0
  86. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/display.py +0 -0
  87. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/extensions/__init__.py +0 -0
  88. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/extensions/autoreload.py +0 -0
  89. {ipython-9.0.0b1/IPython/sphinxext → ipython-9.0.1/IPython/extensions/deduperreload}/__init__.py +0 -0
  90. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/extensions/deduperreload/deduperreload.py +0 -0
  91. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/extensions/deduperreload/deduperreload_patching.py +0 -0
  92. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/extensions/storemagic.py +0 -0
  93. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/extensions/tests/test_deduperreload.py +0 -0
  94. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/external/__init__.py +0 -0
  95. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/external/pickleshare.py +0 -0
  96. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/external/qt_for_kernel.py +0 -0
  97. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/external/qt_loaders.py +0 -0
  98. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/lib/__init__.py +0 -0
  99. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/lib/backgroundjobs.py +0 -0
  100. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/lib/clipboard.py +0 -0
  101. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/lib/deepreload.py +0 -0
  102. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/lib/demo.py +0 -0
  103. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/lib/display.py +0 -0
  104. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/lib/editorhooks.py +0 -0
  105. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/lib/guisupport.py +0 -0
  106. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/lib/latextools.py +0 -0
  107. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/lib/lexers.py +0 -0
  108. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/lib/pretty.py +0 -0
  109. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/paths.py +0 -0
  110. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/py.typed +0 -0
  111. {ipython-9.0.0b1/IPython/terminal → ipython-9.0.1/IPython/sphinxext}/__init__.py +0 -0
  112. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/sphinxext/custom_doctests.py +0 -0
  113. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/sphinxext/ipython_console_highlighting.py +0 -0
  114. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/sphinxext/ipython_directive.py +0 -0
  115. {ipython-9.0.0b1/IPython/testing/plugin → ipython-9.0.1/IPython/terminal}/__init__.py +0 -0
  116. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/terminal/debugger.py +0 -0
  117. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/terminal/embed.py +0 -0
  118. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/terminal/ipapp.py +0 -0
  119. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/terminal/magics.py +0 -0
  120. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/terminal/prompts.py +0 -0
  121. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/terminal/pt_inputhooks/__init__.py +0 -0
  122. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/terminal/pt_inputhooks/asyncio.py +0 -0
  123. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/terminal/pt_inputhooks/glut.py +0 -0
  124. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/terminal/pt_inputhooks/gtk.py +0 -0
  125. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/terminal/pt_inputhooks/gtk3.py +0 -0
  126. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/terminal/pt_inputhooks/gtk4.py +0 -0
  127. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/terminal/pt_inputhooks/osx.py +0 -0
  128. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/terminal/pt_inputhooks/pyglet.py +0 -0
  129. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/terminal/pt_inputhooks/qt.py +0 -0
  130. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/terminal/pt_inputhooks/tk.py +0 -0
  131. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/terminal/pt_inputhooks/wx.py +0 -0
  132. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/terminal/shortcuts/__init__.py +0 -0
  133. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/terminal/shortcuts/auto_match.py +0 -0
  134. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/terminal/shortcuts/auto_suggest.py +0 -0
  135. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/terminal/shortcuts/filters.py +0 -0
  136. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/testing/__init__.py +0 -0
  137. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/testing/decorators.py +0 -0
  138. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/testing/globalipapp.py +0 -0
  139. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/testing/ipunittest.py +0 -0
  140. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/testing/plugin/Makefile +0 -0
  141. {ipython-9.0.0b1/IPython/utils → ipython-9.0.1/IPython/testing/plugin}/__init__.py +0 -0
  142. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/testing/plugin/dtexample.py +0 -0
  143. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/testing/plugin/ipdoctest.py +0 -0
  144. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/testing/plugin/pytest_ipdoctest.py +0 -0
  145. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/testing/plugin/setup.py +0 -0
  146. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/testing/plugin/simple.py +0 -0
  147. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/testing/plugin/simplevars.py +0 -0
  148. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/testing/plugin/test_combo.txt +0 -0
  149. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/testing/plugin/test_example.txt +0 -0
  150. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/testing/plugin/test_exampleip.txt +0 -0
  151. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/testing/plugin/test_ipdoctest.py +0 -0
  152. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/testing/plugin/test_refs.py +0 -0
  153. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/testing/skipdoctest.py +0 -0
  154. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/testing/tools.py +0 -0
  155. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/utils/PyColorize.py +0 -0
  156. {ipython-9.0.0b1/tests → ipython-9.0.1/IPython/utils}/__init__.py +0 -0
  157. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/utils/_process_cli.py +0 -0
  158. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/utils/_process_common.py +0 -0
  159. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/utils/_process_emscripten.py +0 -0
  160. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/utils/_process_posix.py +0 -0
  161. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/utils/_process_win32.py +0 -0
  162. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/utils/_process_win32_controller.py +0 -0
  163. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/utils/capture.py +0 -0
  164. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/utils/contexts.py +0 -0
  165. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/utils/data.py +0 -0
  166. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/utils/decorators.py +0 -0
  167. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/utils/dir2.py +0 -0
  168. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/utils/docs.py +0 -0
  169. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/utils/eventful.py +0 -0
  170. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/utils/frame.py +0 -0
  171. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/utils/generics.py +0 -0
  172. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/utils/importstring.py +0 -0
  173. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/utils/io.py +0 -0
  174. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/utils/ipstruct.py +0 -0
  175. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/utils/jsonutil.py +0 -0
  176. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/utils/log.py +0 -0
  177. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/utils/module_paths.py +0 -0
  178. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/utils/openpy.py +0 -0
  179. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/utils/path.py +0 -0
  180. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/utils/process.py +0 -0
  181. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/utils/py3compat.py +0 -0
  182. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/utils/sentinel.py +0 -0
  183. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/utils/strdispatch.py +0 -0
  184. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/utils/sysinfo.py +0 -0
  185. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/utils/syspathcontext.py +0 -0
  186. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/utils/tempdir.py +0 -0
  187. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/utils/terminal.py +0 -0
  188. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/utils/text.py +0 -0
  189. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/utils/timing.py +0 -0
  190. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/utils/tokenutil.py +0 -0
  191. {ipython-9.0.0b1 → ipython-9.0.1}/IPython/utils/wildcard.py +0 -0
  192. {ipython-9.0.0b1 → ipython-9.0.1}/LICENSE +0 -0
  193. {ipython-9.0.0b1 → ipython-9.0.1}/MANIFEST.in +0 -0
  194. {ipython-9.0.0b1 → ipython-9.0.1}/README.rst +0 -0
  195. {ipython-9.0.0b1 → ipython-9.0.1}/_build_meta.py +0 -0
  196. {ipython-9.0.0b1 → ipython-9.0.1}/docs/Makefile +0 -0
  197. {ipython-9.0.0b1 → ipython-9.0.1}/docs/README.rst +0 -0
  198. {ipython-9.0.0b1 → ipython-9.0.1}/docs/autogen_api.py +0 -0
  199. {ipython-9.0.0b1 → ipython-9.0.1}/docs/autogen_config.py +0 -0
  200. {ipython-9.0.0b1 → ipython-9.0.1}/docs/autogen_magics.py +0 -0
  201. {ipython-9.0.0b1 → ipython-9.0.1}/docs/autogen_shortcuts.py +0 -0
  202. {ipython-9.0.0b1 → ipython-9.0.1}/docs/make.cmd +0 -0
  203. {ipython-9.0.0b1 → ipython-9.0.1}/docs/man/ipython.1 +0 -0
  204. {ipython-9.0.0b1 → ipython-9.0.1}/docs/requirements.txt +0 -0
  205. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/_images/2.0/running-crop.png +0 -0
  206. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/_images/2.0/running.png +0 -0
  207. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/_images/2.0/treeview.png +0 -0
  208. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/_images/2.0/user-interface.png +0 -0
  209. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/_images/2.0/widgets.png +0 -0
  210. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/_images/8.0/auto_suggest_1_prompt_no_text.png +0 -0
  211. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/_images/8.0/auto_suggest_2_print_hello_suggest.png +0 -0
  212. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/_images/8.0/auto_suggest_3_print_hello_suggest.png +0 -0
  213. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/_images/8.0/auto_suggest_4_print_hello.png +0 -0
  214. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/_images/8.0/auto_suggest_d_completions.png +0 -0
  215. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/_images/8.0/auto_suggest_d_phantom.png +0 -0
  216. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/_images/8.0/auto_suggest_def_completions.png +0 -0
  217. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/_images/8.0/auto_suggest_def_phantom.png +0 -0
  218. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/_images/8.0/auto_suggest_match_parens.png +0 -0
  219. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/_images/8.0/auto_suggest_second_prompt.png +0 -0
  220. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/_images/8.0/pathlib_pathlib_everywhere.jpg +0 -0
  221. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/_images/autosuggest.gif +0 -0
  222. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/_images/ipy_013_dashboard.png +0 -0
  223. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/_images/ipy_013_dashboard_cluster.png +0 -0
  224. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/_images/ipy_013_notebook_cythonmagic.png +0 -0
  225. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/_images/ipy_013_notebook_long_out.png +0 -0
  226. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/_images/ipy_013_notebook_octavemagic.png +0 -0
  227. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/_images/ipy_013_notebook_rmagic.png +0 -0
  228. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/_images/ipy_013_notebook_script_cells.png +0 -0
  229. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/_images/ipy_013_notebook_spectrogram.png +0 -0
  230. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/_images/ipy_013_notebook_tooltip.png +0 -0
  231. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/_images/ipy_013_par_tb.png +0 -0
  232. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/_images/ipy_013_qtconsole_baboon.png +0 -0
  233. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/_images/ipy_013_qtconsole_completer.png +0 -0
  234. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/_images/ipython-6-screenshot.png +0 -0
  235. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/_images/jedi_type_inference_60.png +0 -0
  236. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/_images/kernel_selector_screenshot.png +0 -0
  237. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/_images/ms_visual_studio.png +0 -0
  238. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/_images/notebook_specgram.png +0 -0
  239. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/_images/ptshell_features.png +0 -0
  240. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/_images/qtconsole.png +0 -0
  241. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/_images/qtconsole_tabbed.png +0 -0
  242. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/_images/unicode_completion.png +0 -0
  243. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/_static/favicon.ico +0 -0
  244. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/_static/logo.png +0 -0
  245. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/_static/theme_overrides.css +0 -0
  246. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/_templates/breadcrumbs.html +0 -0
  247. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/_templates/notebook_redirect.html +0 -0
  248. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/about/history.rst +0 -0
  249. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/about/index.rst +0 -0
  250. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/about/license_and_copyright.rst +0 -0
  251. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/api/index.rst +0 -0
  252. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/conf.py +0 -0
  253. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/config/callbacks.rst +0 -0
  254. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/config/custommagics.rst +0 -0
  255. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/config/eventloops.rst +0 -0
  256. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/config/extensions/autoreload.rst +0 -0
  257. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/config/extensions/index.rst +0 -0
  258. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/config/extensions/storemagic.rst +0 -0
  259. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/config/index.rst +0 -0
  260. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/config/inputtransforms.rst +0 -0
  261. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/config/integrating.rst +0 -0
  262. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/config/intro.rst +0 -0
  263. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/config/options/index.rst +0 -0
  264. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/config/shell_mimerenderer.rst +0 -0
  265. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/config/shortcuts/index.rst +0 -0
  266. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/coredev/index.rst +0 -0
  267. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/development/config.rst +0 -0
  268. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/development/execution.rst +0 -0
  269. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/development/figs/ipy_kernel_and_terminal.png +0 -0
  270. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/development/figs/ipy_kernel_and_terminal.svg +0 -0
  271. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/development/figs/other_kernels.png +0 -0
  272. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/development/figs/other_kernels.svg +0 -0
  273. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/development/how_ipython_works.rst +0 -0
  274. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/development/index.rst +0 -0
  275. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/development/inputhook_app.rst +0 -0
  276. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/development/kernels.rst +0 -0
  277. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/development/messaging.rst +0 -0
  278. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/development/pycompat.rst +0 -0
  279. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/development/wrapperkernels.rst +0 -0
  280. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/index.rst +0 -0
  281. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/install/index.rst +0 -0
  282. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/install/install.rst +0 -0
  283. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/install/kernel_install.rst +0 -0
  284. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/interactive/autoawait.rst +0 -0
  285. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/interactive/index.rst +0 -0
  286. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/interactive/magics.rst +0 -0
  287. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/interactive/plotting.rst +0 -0
  288. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/interactive/python-ipython-diff.rst +0 -0
  289. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/interactive/reference.rst +0 -0
  290. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/interactive/shell.rst +0 -0
  291. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/interactive/tips.rst +0 -0
  292. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/interactive/tutorial.rst +0 -0
  293. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/links.txt +0 -0
  294. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/overview.rst +0 -0
  295. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/parallel/index.rst +0 -0
  296. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/sphinx.toml +0 -0
  297. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/sphinxext.rst +0 -0
  298. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/whatsnew/development.rst +0 -0
  299. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/whatsnew/github-stats-0.11.rst +0 -0
  300. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/whatsnew/github-stats-0.12.rst +0 -0
  301. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/whatsnew/github-stats-0.13.rst +0 -0
  302. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/whatsnew/github-stats-1.0.rst +0 -0
  303. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/whatsnew/github-stats-2.0.rst +0 -0
  304. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/whatsnew/github-stats-3.rst +0 -0
  305. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/whatsnew/github-stats-4.rst +0 -0
  306. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/whatsnew/github-stats-5.rst +0 -0
  307. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/whatsnew/github-stats-6.rst +0 -0
  308. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/whatsnew/github-stats-7.rst +0 -0
  309. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/whatsnew/github-stats-8.rst +0 -0
  310. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/whatsnew/index.rst +0 -0
  311. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/whatsnew/pr/README.md +0 -0
  312. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/whatsnew/pr/antigravity-feature.rst +0 -0
  313. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/whatsnew/pr/incompat-switching-to-perl.rst +0 -0
  314. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/whatsnew/version0.10.rst +0 -0
  315. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/whatsnew/version0.11.rst +0 -0
  316. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/whatsnew/version0.12.rst +0 -0
  317. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/whatsnew/version0.13.rst +0 -0
  318. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/whatsnew/version0.8.rst +0 -0
  319. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/whatsnew/version0.9.rst +0 -0
  320. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/whatsnew/version1.0.rst +0 -0
  321. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/whatsnew/version2.0.rst +0 -0
  322. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/whatsnew/version3.rst +0 -0
  323. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/whatsnew/version3_widget_migration.rst +0 -0
  324. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/whatsnew/version4.rst +0 -0
  325. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/whatsnew/version5.rst +0 -0
  326. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/whatsnew/version6.rst +0 -0
  327. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/whatsnew/version7.rst +0 -0
  328. {ipython-9.0.0b1 → ipython-9.0.1}/docs/source/whatsnew/version8.rst +0 -0
  329. {ipython-9.0.0b1 → ipython-9.0.1}/docs/sphinxext/apigen.py +0 -0
  330. {ipython-9.0.0b1 → ipython-9.0.1}/docs/sphinxext/configtraits.py +0 -0
  331. {ipython-9.0.0b1 → ipython-9.0.1}/docs/sphinxext/github.py +0 -0
  332. {ipython-9.0.0b1 → ipython-9.0.1}/docs/sphinxext/magics.py +0 -0
  333. {ipython-9.0.0b1 → ipython-9.0.1}/examples/Embedding/embed_class_long.py +0 -0
  334. {ipython-9.0.0b1 → ipython-9.0.1}/examples/Embedding/embed_class_short.py +0 -0
  335. {ipython-9.0.0b1 → ipython-9.0.1}/examples/Embedding/embed_function.py +0 -0
  336. {ipython-9.0.0b1 → ipython-9.0.1}/examples/Embedding/start_ipython_config.py +0 -0
  337. {ipython-9.0.0b1 → ipython-9.0.1}/examples/IPython Kernel/example-demo.py +0 -0
  338. {ipython-9.0.0b1 → ipython-9.0.1}/examples/IPython Kernel/gui/gui-glut.py +0 -0
  339. {ipython-9.0.0b1 → ipython-9.0.1}/examples/IPython Kernel/gui/gui-gtk4.py +0 -0
  340. {ipython-9.0.0b1 → ipython-9.0.1}/examples/IPython Kernel/gui/gui-qt.py +0 -0
  341. {ipython-9.0.0b1 → ipython-9.0.1}/examples/IPython Kernel/ipython-completion.bash +0 -0
  342. {ipython-9.0.0b1 → ipython-9.0.1}/examples/IPython Kernel/ipython-get-history.py +0 -0
  343. {ipython-9.0.0b1 → ipython-9.0.1}/examples/IPython Kernel/ipython.desktop +0 -0
  344. {ipython-9.0.0b1 → ipython-9.0.1}/examples/auto_suggest_llm.py +0 -0
  345. {ipython-9.0.0b1 → ipython-9.0.1}/examples/utils/cwd_prompt.py +0 -0
  346. {ipython-9.0.0b1 → ipython-9.0.1}/examples/utils/list_pyfiles.ipy +0 -0
  347. {ipython-9.0.0b1 → ipython-9.0.1}/examples/utils/list_subdirs.ipy +0 -0
  348. {ipython-9.0.0b1 → ipython-9.0.1}/ipython.egg-info/dependency_links.txt +0 -0
  349. {ipython-9.0.0b1 → ipython-9.0.1}/ipython.egg-info/entry_points.txt +0 -0
  350. {ipython-9.0.0b1 → ipython-9.0.1}/ipython.egg-info/not-zip-safe +0 -0
  351. {ipython-9.0.0b1 → ipython-9.0.1}/ipython.egg-info/requires.txt +0 -0
  352. {ipython-9.0.0b1 → ipython-9.0.1}/ipython.egg-info/top_level.txt +0 -0
  353. {ipython-9.0.0b1 → ipython-9.0.1}/long_description.rst +0 -0
  354. {ipython-9.0.0b1 → ipython-9.0.1}/pyproject.toml +0 -0
  355. {ipython-9.0.0b1 → ipython-9.0.1}/scripts/ipython.ico +0 -0
  356. {ipython-9.0.0b1 → ipython-9.0.1}/scripts/ipython_nb.ico +0 -0
  357. {ipython-9.0.0b1 → ipython-9.0.1}/setup.cfg +0 -0
  358. {ipython-9.0.0b1 → ipython-9.0.1}/setup.py +0 -0
  359. {ipython-9.0.0b1 → ipython-9.0.1}/setupbase.py +0 -0
  360. {ipython-9.0.0b1 → ipython-9.0.1}/tests/2x2.jpg +0 -0
  361. {ipython-9.0.0b1 → ipython-9.0.1}/tests/2x2.png +0 -0
  362. {ipython-9.0.0b1 → ipython-9.0.1}/tests/bad_all.py +0 -0
  363. {ipython-9.0.0b1 → ipython-9.0.1}/tests/conftest.py +0 -0
  364. {ipython-9.0.0b1 → ipython-9.0.1}/tests/cve.py +0 -0
  365. {ipython-9.0.0b1 → ipython-9.0.1}/tests/fake_ext_dir/daft_extension.py +0 -0
  366. {ipython-9.0.0b1 → ipython-9.0.1}/tests/nonascii.py +0 -0
  367. {ipython-9.0.0b1 → ipython-9.0.1}/tests/nonascii2.py +0 -0
  368. {ipython-9.0.0b1 → ipython-9.0.1}/tests/print_argv.py +0 -0
  369. {ipython-9.0.0b1 → ipython-9.0.1}/tests/refbug.py +0 -0
  370. {ipython-9.0.0b1 → ipython-9.0.1}/tests/simpleerr.py +0 -0
  371. {ipython-9.0.0b1 → ipython-9.0.1}/tests/tclass.py +0 -0
  372. {ipython-9.0.0b1 → ipython-9.0.1}/tests/test.wav +0 -0
  373. {ipython-9.0.0b1 → ipython-9.0.1}/tests/test_alias.py +0 -0
  374. {ipython-9.0.0b1 → ipython-9.0.1}/tests/test_application.py +0 -0
  375. {ipython-9.0.0b1 → ipython-9.0.1}/tests/test_async_helpers.py +0 -0
  376. {ipython-9.0.0b1 → ipython-9.0.1}/tests/test_autocall.py +0 -0
  377. {ipython-9.0.0b1 → ipython-9.0.1}/tests/test_backgroundjobs.py +0 -0
  378. {ipython-9.0.0b1 → ipython-9.0.1}/tests/test_capture.py +0 -0
  379. {ipython-9.0.0b1 → ipython-9.0.1}/tests/test_clipboard.py +0 -0
  380. {ipython-9.0.0b1 → ipython-9.0.1}/tests/test_compilerop.py +0 -0
  381. {ipython-9.0.0b1 → ipython-9.0.1}/tests/test_completer.py +0 -0
  382. {ipython-9.0.0b1 → ipython-9.0.1}/tests/test_completerlib.py +0 -0
  383. {ipython-9.0.0b1 → ipython-9.0.1}/tests/test_debug_magic.py +0 -0
  384. {ipython-9.0.0b1 → ipython-9.0.1}/tests/test_debugger.py +0 -0
  385. {ipython-9.0.0b1 → ipython-9.0.1}/tests/test_decorators.py +0 -0
  386. {ipython-9.0.0b1 → ipython-9.0.1}/tests/test_decorators_2.py +0 -0
  387. {ipython-9.0.0b1 → ipython-9.0.1}/tests/test_deepreload.py +0 -0
  388. {ipython-9.0.0b1 → ipython-9.0.1}/tests/test_dir2.py +0 -0
  389. {ipython-9.0.0b1 → ipython-9.0.1}/tests/test_display.py +0 -0
  390. {ipython-9.0.0b1 → ipython-9.0.1}/tests/test_display_2.py +0 -0
  391. {ipython-9.0.0b1 → ipython-9.0.1}/tests/test_displayhook.py +0 -0
  392. {ipython-9.0.0b1 → ipython-9.0.1}/tests/test_editorhooks.py +0 -0
  393. {ipython-9.0.0b1 → ipython-9.0.1}/tests/test_events.py +0 -0
  394. {ipython-9.0.0b1 → ipython-9.0.1}/tests/test_exceptiongroup_tb.py +0 -0
  395. {ipython-9.0.0b1 → ipython-9.0.1}/tests/test_extension.py +0 -0
  396. {ipython-9.0.0b1 → ipython-9.0.1}/tests/test_formatters.py +0 -0
  397. {ipython-9.0.0b1 → ipython-9.0.1}/tests/test_guarded_eval.py +0 -0
  398. {ipython-9.0.0b1 → ipython-9.0.1}/tests/test_handlers.py +0 -0
  399. {ipython-9.0.0b1 → ipython-9.0.1}/tests/test_help.py +0 -0
  400. {ipython-9.0.0b1 → ipython-9.0.1}/tests/test_history.py +0 -0
  401. {ipython-9.0.0b1 → ipython-9.0.1}/tests/test_hooks.py +0 -0
  402. {ipython-9.0.0b1 → ipython-9.0.1}/tests/test_imports.py +0 -0
  403. {ipython-9.0.0b1 → ipython-9.0.1}/tests/test_importstring.py +0 -0
  404. {ipython-9.0.0b1 → ipython-9.0.1}/tests/test_inputtransformer2.py +0 -0
  405. {ipython-9.0.0b1 → ipython-9.0.1}/tests/test_inputtransformer2_line.py +0 -0
  406. {ipython-9.0.0b1 → ipython-9.0.1}/tests/test_interactiveshell.py +0 -0
  407. {ipython-9.0.0b1 → ipython-9.0.1}/tests/test_interactivshell.py +0 -0
  408. {ipython-9.0.0b1 → ipython-9.0.1}/tests/test_io.py +0 -0
  409. {ipython-9.0.0b1 → ipython-9.0.1}/tests/test_iplib.py +0 -0
  410. {ipython-9.0.0b1 → ipython-9.0.1}/tests/test_ipunittest.py +0 -0
  411. {ipython-9.0.0b1 → ipython-9.0.1}/tests/test_latextools.py +0 -0
  412. {ipython-9.0.0b1 → ipython-9.0.1}/tests/test_logger.py +0 -0
  413. {ipython-9.0.0b1 → ipython-9.0.1}/tests/test_magic.py +0 -0
  414. {ipython-9.0.0b1 → ipython-9.0.1}/tests/test_magic_arguments.py +0 -0
  415. {ipython-9.0.0b1 → ipython-9.0.1}/tests/test_magic_terminal.py +0 -0
  416. {ipython-9.0.0b1 → ipython-9.0.1}/tests/test_module_paths.py +0 -0
  417. {ipython-9.0.0b1 → ipython-9.0.1}/tests/test_oinspect.py +0 -0
  418. {ipython-9.0.0b1 → ipython-9.0.1}/tests/test_openpy.py +0 -0
  419. {ipython-9.0.0b1 → ipython-9.0.1}/tests/test_page.py +0 -0
  420. {ipython-9.0.0b1 → ipython-9.0.1}/tests/test_path.py +0 -0
  421. {ipython-9.0.0b1 → ipython-9.0.1}/tests/test_paths.py +0 -0
  422. {ipython-9.0.0b1 → ipython-9.0.1}/tests/test_prefilter.py +0 -0
  423. {ipython-9.0.0b1 → ipython-9.0.1}/tests/test_pretty.py +0 -0
  424. {ipython-9.0.0b1 → ipython-9.0.1}/tests/test_process.py +0 -0
  425. {ipython-9.0.0b1 → ipython-9.0.1}/tests/test_profile.py +0 -0
  426. {ipython-9.0.0b1 → ipython-9.0.1}/tests/test_pt_inputhooks.py +0 -0
  427. {ipython-9.0.0b1 → ipython-9.0.1}/tests/test_pycolorize.py +0 -0
  428. {ipython-9.0.0b1 → ipython-9.0.1}/tests/test_pylabtools.py +0 -0
  429. {ipython-9.0.0b1 → ipython-9.0.1}/tests/test_qt_loaders.py +0 -0
  430. {ipython-9.0.0b1 → ipython-9.0.1}/tests/test_run.py +0 -0
  431. {ipython-9.0.0b1 → ipython-9.0.1}/tests/test_shellapp.py +0 -0
  432. {ipython-9.0.0b1 → ipython-9.0.1}/tests/test_shortcuts.py +0 -0
  433. {ipython-9.0.0b1 → ipython-9.0.1}/tests/test_splitinput.py +0 -0
  434. {ipython-9.0.0b1 → ipython-9.0.1}/tests/test_storemagic.py +0 -0
  435. {ipython-9.0.0b1 → ipython-9.0.1}/tests/test_sysinfo.py +0 -0
  436. {ipython-9.0.0b1 → ipython-9.0.1}/tests/test_tempdir.py +0 -0
  437. {ipython-9.0.0b1 → ipython-9.0.1}/tests/test_text.py +0 -0
  438. {ipython-9.0.0b1 → ipython-9.0.1}/tests/test_tokenutil.py +0 -0
  439. {ipython-9.0.0b1 → ipython-9.0.1}/tests/test_tools.py +0 -0
  440. {ipython-9.0.0b1 → ipython-9.0.1}/tests/test_ultratb.py +0 -0
  441. {ipython-9.0.0b1 → ipython-9.0.1}/tests/test_wildcard.py +0 -0
  442. {ipython-9.0.0b1 → ipython-9.0.1}/tests/test_zzz_autoreload.py +0 -0
@@ -228,7 +228,12 @@ class Pdb(OldPdb):
228
228
  }
229
229
 
230
230
  def __init__(
231
- self, completekey=None, stdin=None, stdout=None, context: int = 5, **kwargs
231
+ self,
232
+ completekey=None,
233
+ stdin=None,
234
+ stdout=None,
235
+ context: int | None | str = 5,
236
+ **kwargs,
232
237
  ):
233
238
  """Create a new IPython debugger.
234
239
 
@@ -251,7 +256,11 @@ class Pdb(OldPdb):
251
256
  The possibilities are python version dependent, see the python
252
257
  docs for more info.
253
258
  """
254
-
259
+ # ipdb issue, see https://github.com/ipython/ipython/issues/14811
260
+ if context is None:
261
+ context = 5
262
+ if isinstance(context, str):
263
+ context = int(context)
255
264
  self.context = context
256
265
 
257
266
  # `kwargs` ensures full compatibility with stdlib's `pdb.Pdb`.
@@ -298,7 +307,10 @@ class Pdb(OldPdb):
298
307
  return self._context
299
308
 
300
309
  @context.setter
301
- def context(self, value: int) -> None:
310
+ def context(self, value: int | str) -> None:
311
+ # ipdb issue see https://github.com/ipython/ipython/issues/14811
312
+ if not isinstance(value, int):
313
+ value = int(value)
302
314
  assert isinstance(value, int)
303
315
  assert value >= 0
304
316
  self._context = value
@@ -1002,7 +1002,7 @@ class InteractiveShell(SingletonConfigurable):
1002
1002
  def show_banner(self, banner=None):
1003
1003
  if banner is None:
1004
1004
  banner = self.banner
1005
- print(banner)
1005
+ print(banner, end="")
1006
1006
 
1007
1007
  #-------------------------------------------------------------------------
1008
1008
  # Things related to hooks
@@ -3029,7 +3029,12 @@ class InteractiveShell(SingletonConfigurable):
3029
3029
  shell. It will both be affected by previous __future__ imports, and
3030
3030
  any __future__ imports in the code will affect the shell. If False,
3031
3031
  __future__ imports are not shared in either direction.
3032
-
3032
+ cell_id : str, optional
3033
+ A unique identifier for the cell. This is used in the messaging system
3034
+ to match output with execution requests and for tracking cell execution
3035
+ history across kernel restarts. In notebook contexts, this is typically
3036
+ a UUID generated by the frontend. If None, the kernel may generate an
3037
+ internal identifier or proceed without cell tracking capabilities.
3033
3038
  Returns
3034
3039
  -------
3035
3040
  result : :class:`ExecutionResult`
@@ -672,10 +672,11 @@ class Magics(Configurable):
672
672
  argv = arg_split(arg_str, posix, strict)
673
673
  # Do regular option processing
674
674
  try:
675
- opts,args = getopt(argv, opt_str, long_opts)
675
+ opts, args = getopt(argv, opt_str, long_opts)
676
676
  except GetoptError as e:
677
677
  raise UsageError(
678
- '%s ( allowed: "%s" %s)' % (e.msg, opt_str, " ".join(long_opts))
678
+ '%s (allowed: "%s"%s)'
679
+ % (e.msg, opt_str, " ".join(("",) + long_opts) if long_opts else "")
679
680
  ) from e
680
681
  for o, a in opts:
681
682
  if mode == "string" and preserve_non_opts:
@@ -193,7 +193,7 @@ class CodeMagics(Magics):
193
193
 
194
194
  -r: use 'raw' input. By default, the 'processed' history is used,
195
195
  so that magics are loaded in their transformed version to valid
196
- Python. If this option is given, the raw input as typed as the
196
+ Python. If this option is given, the raw input as typed at the
197
197
  command line is used instead.
198
198
 
199
199
  -f: force overwrite. If file exists, %save will prompt for overwrite
@@ -73,13 +73,22 @@ class TimeitResult:
73
73
  """
74
74
  Object returned by the timeit magic with info about the run.
75
75
 
76
- Contains the following attributes :
76
+ Contains the following attributes:
77
77
 
78
- loops: (int) number of loops done per measurement
79
- repeat: (int) number of times the measurement has been repeated
80
- best: (float) best execution time / number
81
- all_runs: (list of float) execution time of each run (in s)
82
- compile_time: (float) time of statement compilation (s)
78
+ loops: int
79
+ number of loops done per measurement
80
+
81
+ repeat: int
82
+ number of times the measurement was repeated
83
+
84
+ best: float
85
+ best execution time / number
86
+
87
+ all_runs : list[float]
88
+ execution time of each run (in s)
89
+
90
+ compile_time: float
91
+ time of statement compilation (s)
83
92
 
84
93
  """
85
94
  def __init__(self, loops, repeat, best, worst, all_runs, compile_time, precision):
@@ -90,7 +99,7 @@ class TimeitResult:
90
99
  self.all_runs = all_runs
91
100
  self.compile_time = compile_time
92
101
  self._precision = precision
93
- self.timings = [ dt / self.loops for dt in all_runs]
102
+ self.timings = [dt / self.loops for dt in all_runs]
94
103
 
95
104
  @property
96
105
  def average(self):
@@ -105,8 +114,8 @@ class TimeitResult:
105
114
  pm = '+-'
106
115
  if hasattr(sys.stdout, 'encoding') and sys.stdout.encoding:
107
116
  try:
108
- u'\xb1'.encode(sys.stdout.encoding)
109
- pm = u'\xb1'
117
+ "\xb1".encode(sys.stdout.encoding)
118
+ pm = "\xb1"
110
119
  except:
111
120
  pass
112
121
  return "{mean} {pm} {std} per loop (mean {pm} std. dev. of {runs} run{run_plural}, {loops:,} loop{loop_plural} each)".format(
@@ -121,7 +130,7 @@ class TimeitResult:
121
130
 
122
131
  def _repr_pretty_(self, p , cycle):
123
132
  unic = self.__str__()
124
- p.text(u'<TimeitResult : '+unic+u'>')
133
+ p.text("<TimeitResult : " + unic + ">")
125
134
 
126
135
 
127
136
  class TimeitTemplateFiller(ast.NodeTransformer):
@@ -195,16 +204,14 @@ class ExecutionMagics(Magics):
195
204
 
196
205
  """Run a statement through the python code profiler.
197
206
 
198
- **Usage, in line mode:**
207
+ **Usage, in line mode**::
199
208
 
200
209
  %prun [options] statement
201
210
 
202
- **Usage, in cell mode:**
211
+ **Usage, in cell mode**::
203
212
 
204
213
  %%prun [options] [statement]
205
-
206
214
  code...
207
-
208
215
  code...
209
216
 
210
217
  In cell mode, the additional code lines are appended to the (possibly
@@ -565,8 +572,8 @@ class ExecutionMagics(Magics):
565
572
  sees its environment as if it were being run as a stand-alone program
566
573
  (except for sharing global objects such as previously imported
567
574
  modules). But after execution, the IPython interactive namespace gets
568
- updated with all variables defined in the program (except for __name__
569
- and sys.argv). This allows for very convenient loading of code for
575
+ updated with all variables defined in the program (except for ``__name__``
576
+ and ``sys.argv``). This allows for very convenient loading of code for
570
577
  interactive work, while giving each program a 'clean sheet' to run in.
571
578
 
572
579
  Arguments are expanded using shell-like glob match. Patterns
@@ -606,25 +613,25 @@ class ExecutionMagics(Magics):
606
613
  time.clock(). Under Unix, an estimate of time spent on system tasks
607
614
  is also given (for Windows platforms this is reported as 0.0).
608
615
 
609
- If -t is given, an additional ``-N<N>`` option can be given, where <N>
610
- must be an integer indicating how many times you want the script to
611
- run. The final timing report will include total and per run results.
616
+ If -t is given, an additional ``-N<N>`` option can be given, where <N>
617
+ must be an integer indicating how many times you want the script to
618
+ run. The final timing report will include total and per run results.
612
619
 
613
- For example (testing the script uniq_stable.py)::
620
+ For example (testing the script uniq_stable.py)::
614
621
 
615
- In [1]: run -t uniq_stable
622
+ In [1]: run -t uniq_stable
616
623
 
617
- IPython CPU timings (estimated):
618
- User : 0.19597 s.
619
- System: 0.0 s.
624
+ IPython CPU timings (estimated):
625
+ User : 0.19597 s.
626
+ System: 0.0 s.
620
627
 
621
- In [2]: run -t -N5 uniq_stable
628
+ In [2]: run -t -N5 uniq_stable
622
629
 
623
- IPython CPU timings (estimated):
624
- Total runs performed: 5
625
- Times : Total Per run
626
- User : 0.910862 s, 0.1821724 s.
627
- System: 0.0 s, 0.0 s.
630
+ IPython CPU timings (estimated):
631
+ Total runs performed: 5
632
+ Times : Total Per run
633
+ User : 0.910862 s, 0.1821724 s.
634
+ System: 0.0 s, 0.0 s.
628
635
 
629
636
  -d
630
637
  run your program under the control of pdb, the Python debugger.
@@ -1046,16 +1053,14 @@ class ExecutionMagics(Magics):
1046
1053
  def timeit(self, line='', cell=None, local_ns=None):
1047
1054
  """Time execution of a Python statement or expression
1048
1055
 
1049
- **Usage, in line mode:**
1056
+ **Usage, in line mode**::
1050
1057
 
1051
1058
  %timeit [-n<N> -r<R> [-t|-c] -q -p<P> -o] statement
1052
1059
 
1053
- **or in cell mode:**
1060
+ **or in cell mode**::
1054
1061
 
1055
1062
  %%timeit [-n<N> -r<R> [-t|-c] -q -p<P> -o] setup_code
1056
-
1057
1063
  code
1058
-
1059
1064
  code...
1060
1065
 
1061
1066
  Time execution of a Python statement or expression using the timeit
@@ -1070,27 +1075,34 @@ class ExecutionMagics(Magics):
1070
1075
 
1071
1076
  Options:
1072
1077
 
1073
- -n<N>: execute the given statement <N> times in a loop. If <N> is not
1074
- provided, <N> is determined so as to get sufficient accuracy.
1078
+ -n<N>
1079
+ Execute the given statement N times in a loop. If N is not
1080
+ provided, N is determined so as to get sufficient accuracy.
1075
1081
 
1076
- -r<R>: number of repeats <R>, each consisting of <N> loops, and take the
1077
- average result.
1078
- Default: 7
1082
+ -r<R>
1083
+ Number of repeats R, each consisting of N loops, and take the
1084
+ average result.
1085
+ Default: 7
1079
1086
 
1080
- -t: use time.time to measure the time, which is the default on Unix.
1081
- This function measures wall time.
1087
+ -t
1088
+ Use ``time.time`` to measure the time, which is the default on Unix.
1089
+ This function measures wall time.
1082
1090
 
1083
- -c: use time.clock to measure the time, which is the default on
1084
- Windows and measures wall time. On Unix, resource.getrusage is used
1085
- instead and returns the CPU user time.
1091
+ -c
1092
+ Use ``time.clock`` to measure the time, which is the default on
1093
+ Windows and measures wall time. On Unix, ``resource.getrusage`` is used
1094
+ instead and returns the CPU user time.
1086
1095
 
1087
- -p<P>: use a precision of <P> digits to display the timing result.
1088
- Default: 3
1096
+ -p<P>
1097
+ Use a precision of P digits to display the timing result.
1098
+ Default: 3
1089
1099
 
1090
- -q: Quiet, do not print result.
1100
+ -q
1101
+ Quiet, do not print result.
1091
1102
 
1092
- -o: return a TimeitResult that can be stored in a variable to inspect
1093
- the result in more details.
1103
+ -o
1104
+ Return a ``TimeitResult`` that can be stored in a variable to inspect
1105
+ the result in more details.
1094
1106
 
1095
1107
  .. versionchanged:: 7.3
1096
1108
  User variables are no longer expanded,
@@ -1114,13 +1126,13 @@ class ExecutionMagics(Magics):
1114
1126
 
1115
1127
  In [6]: %timeit -n1 time.sleep(2)
1116
1128
 
1117
- The times reported by %timeit will be slightly higher than those
1129
+ The times reported by ``%timeit`` will be slightly higher than those
1118
1130
  reported by the timeit.py script when variables are accessed. This is
1119
- due to the fact that %timeit executes the statement in the namespace
1131
+ due to the fact that ``%timeit`` executes the statement in the namespace
1120
1132
  of the shell, compared with timeit.py, which uses a single setup
1121
1133
  statement to import function or create variables. Generally, the bias
1122
1134
  does not matter as long as results from timeit.py are not mixed with
1123
- those from %timeit."""
1135
+ those from ``%timeit``."""
1124
1136
 
1125
1137
  opts, stmt = self.parse_options(
1126
1138
  line, "n:r:tcp:qo", posix=False, strict=False, preserve_non_opts=True
@@ -1398,18 +1410,21 @@ class ExecutionMagics(Magics):
1398
1410
  """Define a macro for future re-execution. It accepts ranges of history,
1399
1411
  filenames or string objects.
1400
1412
 
1401
- Usage:\\
1413
+ Usage::
1414
+
1402
1415
  %macro [options] name n1-n2 n3-n4 ... n5 .. n6 ...
1403
1416
 
1404
1417
  Options:
1405
1418
 
1406
- -r: use 'raw' input. By default, the 'processed' history is used,
1419
+ -r
1420
+ Use 'raw' input. By default, the 'processed' history is used,
1407
1421
  so that magics are loaded in their transformed version to valid
1408
1422
  Python. If this option is given, the raw input as typed at the
1409
1423
  command line is used instead.
1410
-
1411
- -q: quiet macro definition. By default, a tag line is printed
1412
- to indicate the macro has been created, and then the contents of
1424
+
1425
+ -q
1426
+ Quiet macro definition. By default, a tag line is printed
1427
+ to indicate the macro has been created, and then the contents of
1413
1428
  the macro are printed. If this option is given, then no printout
1414
1429
  is produced once the macro is created.
1415
1430
 
@@ -1479,25 +1494,33 @@ class ExecutionMagics(Magics):
1479
1494
  print(macro, end=" ")
1480
1495
 
1481
1496
  @magic_arguments.magic_arguments()
1482
- @magic_arguments.argument('output', type=str, default='', nargs='?',
1483
- help="""The name of the variable in which to store output.
1484
- This is a utils.io.CapturedIO object with stdout/err attributes
1497
+ @magic_arguments.argument(
1498
+ "output",
1499
+ type=str,
1500
+ default="",
1501
+ nargs="?",
1502
+ help="""
1503
+
1504
+ The name of the variable in which to store output.
1505
+ This is a ``utils.io.CapturedIO`` object with stdout/err attributes
1485
1506
  for the text of the captured output.
1486
1507
 
1487
- CapturedOutput also has a show() method for displaying the output,
1488
- and __call__ as well, so you can use that to quickly display the
1508
+ CapturedOutput also has a ``show()`` method for displaying the output,
1509
+ and ``__call__`` as well, so you can use that to quickly display the
1489
1510
  output.
1490
1511
 
1491
1512
  If unspecified, captured output is discarded.
1492
- """
1513
+ """,
1493
1514
  )
1494
- @magic_arguments.argument('--no-stderr', action="store_true",
1495
- help="""Don't capture stderr."""
1515
+ @magic_arguments.argument(
1516
+ "--no-stderr", action="store_true", help="""Don't capture stderr."""
1496
1517
  )
1497
- @magic_arguments.argument('--no-stdout', action="store_true",
1498
- help="""Don't capture stdout."""
1518
+ @magic_arguments.argument(
1519
+ "--no-stdout", action="store_true", help="""Don't capture stdout."""
1499
1520
  )
1500
- @magic_arguments.argument('--no-display', action="store_true",
1521
+ @magic_arguments.argument(
1522
+ "--no-display",
1523
+ action="store_true",
1501
1524
  help="""Don't capture IPython's rich display."""
1502
1525
  )
1503
1526
  @cell_magic
@@ -1613,7 +1636,7 @@ def _format_time(timespan, precision=3):
1613
1636
  value = int(leftover / length)
1614
1637
  if value > 0:
1615
1638
  leftover = leftover % length
1616
- time.append(u'%s%s' % (str(value), suffix))
1639
+ time.append("%s%s" % (str(value), suffix))
1617
1640
  if leftover < 1:
1618
1641
  break
1619
1642
  return " ".join(time)
@@ -17,10 +17,10 @@
17
17
  # version
18
18
  _version_major = 9
19
19
  _version_minor = 0
20
- _version_patch = 0
20
+ _version_patch = 1
21
21
  _version_extra = ".dev"
22
- _version_extra = "b1"
23
- # _version_extra = "" # Uncomment this for full releases
22
+ # _version_extra = "b2"
23
+ _version_extra = "" # Uncomment this for full releases
24
24
 
25
25
  # Construct full version string from these.
26
26
  _ver = [_version_major, _version_minor, _version_patch]
@@ -1,4 +1,5 @@
1
1
  from datetime import datetime
2
+ import os
2
3
  from random import choice
3
4
  from typing import Any
4
5
 
@@ -70,19 +71,42 @@ _tips: Any = {
70
71
  "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.",
71
72
  "You can use `files = !ls *.png`",
72
73
  "Use the IPython.lib.demo.Demo class to load any Python script as an interactive demo.",
73
- "Put a ‘;’ at the end of a line to suppress the printing of output.",
74
+ "Put a ';' at the end of a line to suppress the printing of output.",
74
75
  "You can use Ctrl-O to force a new line in terminal IPython",
75
76
  "Use `object?` to see the help on `object`, `object??` to view it's source",
76
77
  "`?` alone on a line will brings up IPython's help",
77
- "You can use `%hist` to view history, the the options with `%history?`",
78
- "You can change the edditing mode of IPython to behave more like vi, or emacs",
78
+ "You can use `%hist` to view history, see the options with `%history?`",
79
+ "You can change the edditing mode of IPython to behave more like vi, or emacs.",
79
80
  "IPython 9.0+ have hooks to integrate AI/LLM completions.",
80
- "You can use latex or unicode completion, `\\alpha<tab>` will insert the alpha symbol.",
81
- "You can find how to type a symbol by back completing it `\\θ<tab>` will expand to `\\theta`.",
82
81
  "Use `%timeit` or `%%timeit`, and the `-r`, `-n`, and `-o` options to easily profile your code.",
82
+ "Use `ipython --help-all | less` to view all the IPython configurations options.",
83
+ "Use `--theme`, or the `%colors` magic to change ipython themes and colors.",
84
+ "The `%timeit` magic has an `-o` flag, which returns the results, making it easy to plot. See `%timeit?`.",
83
85
  ],
84
86
  }
85
87
 
88
+ if os.name == "nt":
89
+ _tips["random"].extend(
90
+ [
91
+ "We can't show you all tips on windows as sometime Unicode characters crash windows console, please help us debug it."
92
+ ]
93
+ )
94
+ # unicode may crash windows console, so we filter out tips with non-ASCII characters.
95
+ _tips["every_year"] = {
96
+ k: v
97
+ for k, v in _tips["every_year"].items()
98
+ if all(ord(char) < 128 for char in v)
99
+ }
100
+ else:
101
+ _tips["random"].extend(
102
+ [
103
+ "You can use latex or unicode completion, `\\alpha<tab>` will insert the α symbol.",
104
+ "You can find how to type a latex symbol by back completing it `\\θ<tab>` will expand to `\\theta`.",
105
+ "You can find how to type a unicode symbol by back completing it `\\Ⅷ<tab>` will expand to `\\ROMAN NUMERAL EIGHT`.",
106
+ "IPython support combining unicode identifiers, F\\vec<tab> will become F⃗, usefull for physics equations. Play with \\dot \\ddot and others.",
107
+ ]
108
+ )
109
+
86
110
 
87
111
  def pick_tip() -> str:
88
112
  current_date = datetime.now()
@@ -433,6 +433,10 @@ class ListTB(TBTools):
433
433
  return "<unprintable %s object>" % type(value).__name__
434
434
 
435
435
 
436
+ _sentinel = object()
437
+ _default = "default"
438
+
439
+
436
440
  # ----------------------------------------------------------------------------
437
441
  class VerboseTB(TBTools):
438
442
  """A port of Ka-Ping Yee's cgitb.py module that outputs color text instead
@@ -450,7 +454,7 @@ class VerboseTB(TBTools):
450
454
  def __init__(
451
455
  self,
452
456
  # TODO: no default ?
453
- theme_name: str = "linux",
457
+ theme_name: str = _default,
454
458
  call_pdb: bool = False,
455
459
  ostream: Any = None,
456
460
  tb_offset: int = 0,
@@ -458,6 +462,8 @@ class VerboseTB(TBTools):
458
462
  include_vars: bool = True,
459
463
  check_cache: Callable[[], None] | None = None,
460
464
  debugger_cls: type | None = None,
465
+ *,
466
+ color_scheme: Any = _sentinel,
461
467
  ):
462
468
  """Specify traceback offset, headers and color scheme.
463
469
 
@@ -465,6 +471,31 @@ class VerboseTB(TBTools):
465
471
  tb_offset=1 allows use of this handler in interpreters which will have
466
472
  their own code at the top of the traceback (VerboseTB will first
467
473
  remove that frame before printing the traceback info)."""
474
+ if color_scheme is not _sentinel:
475
+ assert isinstance(color_scheme, str)
476
+ theme_name = color_scheme.lower()
477
+
478
+ warnings.warn(
479
+ "color_scheme is deprecated as of IPython 9.0 and replaced by "
480
+ "theme_name (which should be lowercase). As you passed a "
481
+ "color_scheme value I will try to see if I have corresponding "
482
+ "theme.",
483
+ stacklevel=2,
484
+ category=DeprecationWarning,
485
+ )
486
+
487
+ if theme_name != _default:
488
+ warnings.warn(
489
+ "You passed both `theme_name` and `color_scheme` "
490
+ "(deprecated) to VerboseTB constructor. `theme_name` will "
491
+ "be ignored for the time being.",
492
+ stacklevel=2,
493
+ category=DeprecationWarning,
494
+ )
495
+
496
+ if theme_name == _default:
497
+ theme_name = "linux"
498
+
468
499
  assert isinstance(theme_name, str)
469
500
  super().__init__(
470
501
  theme_name=theme_name,
@@ -1030,6 +1030,12 @@ class TerminalInteractiveShell(InteractiveShell):
1030
1030
 
1031
1031
  _inputhook = None
1032
1032
  def inputhook(self, context):
1033
+ warn(
1034
+ "inputkook seem unused, and marked for deprecation/Removal as of IPython 9.0. "
1035
+ "Please open an issue if you are using it.",
1036
+ category=PendingDeprecationWarning,
1037
+ stacklevel=2,
1038
+ )
1033
1039
  if self._inputhook is not None:
1034
1040
  self._inputhook(context)
1035
1041
 
@@ -169,6 +169,7 @@ class IPythonPTCompleter(Completer):
169
169
  adjusted_text = _adjust_completion_text_based_on_context(
170
170
  c.text, body, offset
171
171
  )
172
+ min_elide = 30 if self.shell is None else self.shell.min_elide
172
173
  if c.type == "function":
173
174
  yield Completion(
174
175
  adjusted_text,
@@ -176,7 +177,7 @@ class IPythonPTCompleter(Completer):
176
177
  display=_elide(
177
178
  display_text + "()",
178
179
  body[c.start : c.end],
179
- min_elide=self.shell.min_elide,
180
+ min_elide=min_elide,
180
181
  ),
181
182
  display_meta=c.type + c.signature,
182
183
  )
@@ -187,7 +188,7 @@ class IPythonPTCompleter(Completer):
187
188
  display=_elide(
188
189
  display_text,
189
190
  body[c.start : c.end],
190
- min_elide=self.shell.min_elide,
191
+ min_elide=min_elide,
191
192
  ),
192
193
  display_meta=c.type,
193
194
  )
@@ -1,2 +1,2 @@
1
1
  # GENERATED BY setup.py
2
- commit = "27c466ff4"
2
+ commit = "d64897cf0"
@@ -0,0 +1,9 @@
1
+ # Deprecated/should be removed, but we break older version of ipyparallel
2
+ # https://github.com/ipython/ipyparallel/pull/924
3
+
4
+
5
+ # minimal subset of TermColors, removed from IPython
6
+ # not for public consumption, beyond ipyparallel.
7
+ class TermColors:
8
+ Normal = "\033[0m"
9
+ Red = "\033[0;31m"
@@ -3,20 +3,21 @@
3
3
  Utilities for dealing with text encodings
4
4
  """
5
5
 
6
- #-----------------------------------------------------------------------------
6
+ # -----------------------------------------------------------------------------
7
7
  # Copyright (C) 2008-2012 The IPython Development Team
8
8
  #
9
9
  # Distributed under the terms of the BSD License. The full license is in
10
10
  # the file COPYING, distributed as part of this software.
11
- #-----------------------------------------------------------------------------
11
+ # -----------------------------------------------------------------------------
12
12
 
13
- #-----------------------------------------------------------------------------
13
+ # -----------------------------------------------------------------------------
14
14
  # Imports
15
- #-----------------------------------------------------------------------------
15
+ # -----------------------------------------------------------------------------
16
16
  import sys
17
17
  import locale
18
18
  import warnings
19
19
 
20
+
20
21
  # to deal with the possibility of sys.std* not being a stream at all
21
22
  def get_stream_enc(stream, default=None):
22
23
  """Return the given stream's encoding or a default.
@@ -26,16 +27,20 @@ def get_stream_enc(stream, default=None):
26
27
  a default if it doesn't exist or evaluates as False. ``default``
27
28
  is None if not provided.
28
29
  """
29
- if not hasattr(stream, 'encoding') or not stream.encoding:
30
+ if not hasattr(stream, "encoding") or not stream.encoding:
30
31
  return default
31
32
  else:
32
33
  return stream.encoding
33
34
 
35
+
36
+ _sentinel = object()
37
+
38
+
34
39
  # Less conservative replacement for sys.getdefaultencoding, that will try
35
40
  # to match the environment.
36
41
  # Defined here as central function, so if we find better choices, we
37
42
  # won't need to make changes all over IPython.
38
- def getdefaultencoding(prefer_stream=True):
43
+ def getdefaultencoding(prefer_stream=_sentinel):
39
44
  """Return IPython's guess for the default encoding for bytes as text.
40
45
 
41
46
  If prefer_stream is True (default), asks for stdin.encoding first,
@@ -46,10 +51,20 @@ def getdefaultencoding(prefer_stream=True):
46
51
  and finally to sys.getdefaultencoding() which is the most conservative option,
47
52
  and usually UTF8 as of Python 3.
48
53
  """
54
+ if prefer_stream is not _sentinel:
55
+ warnings.warn(
56
+ "getpreferredencoding(prefer_stream=) argument is deprecated since "
57
+ "IPython 9.0, getdefaultencoding() will take no argument in the "
58
+ "future. If you rely on `prefer_stream`, please open an issue on "
59
+ "the IPython repo.",
60
+ DeprecationWarning,
61
+ stacklevel=2,
62
+ )
63
+ prefer_stream = True
49
64
  enc = None
50
65
  if prefer_stream:
51
66
  enc = get_stream_enc(sys.stdin)
52
- if not enc or enc=='ascii':
67
+ if not enc or enc == "ascii":
53
68
  try:
54
69
  # There are reports of getpreferredencoding raising errors
55
70
  # in some cases, which may well be fixed, but let's be conservative here.
@@ -60,12 +75,15 @@ def getdefaultencoding(prefer_stream=True):
60
75
  # On windows `cp0` can be returned to indicate that there is no code page.
61
76
  # Since cp0 is an invalid encoding return instead cp1252 which is the
62
77
  # Western European default.
63
- if enc == 'cp0':
78
+ if enc == "cp0":
64
79
  warnings.warn(
65
80
  "Invalid code page cp0 detected - using cp1252 instead."
66
81
  "If cp1252 is incorrect please ensure a valid code page "
67
- "is defined for the process.", RuntimeWarning)
68
- return 'cp1252'
82
+ "is defined for the process.",
83
+ RuntimeWarning,
84
+ )
85
+ return "cp1252"
69
86
  return enc
70
87
 
88
+
71
89
  DEFAULT_ENCODING = getdefaultencoding()
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: ipython
3
- Version: 9.0.0b1
3
+ Version: 9.0.1
4
4
  Summary: IPython: Productive Interactive Computing
5
5
  Author: The IPython Development Team
6
6
  Author-email: ipython-dev@python.org