
    ^h                     F   S r SSKr\R                  S:  a  \" S5      eSSKJr  SSKJr  SSKJ	r	  SS	K
Jr  SS
KJr  SSKJr  SSKJr  / SQr\R&                  < S\R(                  < S3r\R,                  r\R0                  r\R                  rSS1rSS jrSS jrSS jrg)zW
IPython: tools for interactive and parallel computing in Python.

https://ipython.org
    N)   	   a  
IPython 8.13+ supports Python 3.9 and above, following NEP 29.
IPython 8.0-8.12 supports Python 3.8 and above, following NEP 29.
When using Python 2.7, please install IPython 5.x LTS Long Term Support version.
Python 3.3 and 3.4 were supported up to IPython 6.x.
Python 3.5 was supported with IPython 7.0 to 7.9.
Python 3.6 was supported with IPython up to 7.16.
Python 3.7 was still supported with the 7.x branch.

See IPython `README.rst` file for more information:

    https://github.com/ipython/ipython/blob/main/README.rst

   )get_ipython)release)Application)embed)InteractiveShell)sys_info)extract_module_locals)start_ipythonr	   start_kernelembed_kernelz <>zCVE-2022-21699zCVE-2023-24816c                 R    [        S5      u  p4U c  Un Uc  UnSSKJn  U" SXS.UD6  g)a6  Embed and start an IPython kernel in a given scope.

If you don't want the kernel to initialize the namespace
from the scope of the surrounding function,
and/or you want to load full IPython configuration,
you probably want `IPython.start_kernel()` instead.

Parameters
----------
module : types.ModuleType, optional
    The module to load into IPython globals (default: caller)
local_ns : dict, optional
    The namespace to load into IPython user namespace (default: caller)
**kwargs : various, optional
    Further keyword args are relayed to the IPKernelApp constructor,
    such as `config`, a traitlets :class:`Config` object (see :ref:`configure_start_ipython`),
    allowing configuration of the kernel (see :ref:`kernel_options`).  Will only have an effect
    on the first embed_kernel call for a given process.
r   Nr   )r   )modulelocal_ns )r   ipykernel.embedr   )r   r   kwargscaller_modulecaller_localsreal_embed_kernels         J/home/james-whalen/.local/lib/python3.13/site-packages/IPython/__init__.pyr   r   H   s<    * &;1%="]~  BAVA&A    c                 "    SSK Jn  U" SSU 0UD6$ )a  Launch a normal IPython instance (as opposed to embedded)

`IPython.embed()` puts a shell in a particular calling scope,
such as a function or method for debugging purposes,
which is often not desirable.

`start_ipython()` does full, regular IPython initialization,
including loading startup files, configuration, etc.
much of which is skipped by `embed()`.

This is a public API method, and will survive implementation changes.

Parameters
----------
argv : list or None, optional
    If unspecified or None, IPython will parse command-line options from sys.argv.
    To prevent any command-line parsing, pass an empty list: `argv=[]`.
user_ns : dict, optional
    specify this dictionary to initialize the IPython user namespace with particular values.
**kwargs : various, optional
    Any other kwargs will be passed to the Application constructor,
    such as `config`, a traitlets :class:`Config` object (see :ref:`configure_start_ipython`),
    allowing configuration of the instance (see :ref:`terminal_options`).
r   launch_new_instanceargvr   )IPython.terminal.ipappr   )r   r   r   s      r   r   r   g   s    2 ;3D3F33r   c                 T    SSK nUR                  S[        SS9  SSKJn  U" SSU 0UD6$ )	a  Launch a normal IPython kernel instance (as opposed to embedded)

`IPython.embed_kernel()` puts a shell in a particular calling scope,
such as a function or method for debugging purposes,
which is often not desirable.

`start_kernel()` does full, regular IPython initialization,
including loading startup files, configuration, etc.
much of which is skipped by `embed_kernel()`.

Parameters
----------
argv : list or None, optional
    If unspecified or None, IPython will parse command-line options from sys.argv.
    To prevent any command-line parsing, pass an empty list: `argv=[]`.
user_ns : dict, optional
    specify this dictionary to initialize the IPython user namespace with particular values.
**kwargs : various, optional
    Any other kwargs will be passed to the Application constructor,
    such as `config`, a traitlets :class:`Config` object (see :ref:`configure_start_ipython`),
    allowing configuration of the kernel (see :ref:`kernel_options`).
r   Nz`start_kernel is deprecated since IPython 8.0, use from `ipykernel.kernelapp.launch_new_instance`   )
stacklevelr   r   r   )warningswarnDeprecationWarningipykernel.kernelappr   )r   r   r$   r   s       r   r   r      s9    . MMj  
 83D3F33r   )NN)N)__doc__sysversion_infoImportErrorcore.getipythonr   corer   core.applicationr   terminal.embedr	   core.interactiveshellr
   utils.sysinfor   utils.framer   __all__authorauthor_email
__author__license__license__version__version____patched_cves__r   r   r   r   r   r   <module>r<      s   (  f
	 * )  ) ! 3 # .
D "..'*>*>?
## %&67 B>484r   