← Back
Editing: sysinfo.cpython-311.pyc
� �@�c� � �l � d Z ddlZddlZddlZddlZddlZddlmZ ddlm Z m Z d� Zd� Zd� Z d� Zd � ZdS ) zQ Utilities for getting information about IPython and the system it's running in. � N)�release)�_sysinfo�encodingc �< � t j rdt j fS t j d� d� � t j t j | �� � }|� � � \ }}|r)d|� � � � d� � fS dS )a" Get short form of commit hash given directory `pkg_path` We get the commit hash from (in order of preference): * IPython.utils._sysinfo.commit * git output, if we are in a git repository If these fail, we return a not-found placeholder tuple Parameters ---------- pkg_path : str directory containing package only used for getting commit from active repo Returns ------- hash_from : str Where we got the hash from - description hash_str : str short form of hash �installationzgit rev-parse --short HEAD� )�stdout�stderr�cwd� repository�ascii)z(none found)z<not found>) r �commit� subprocess�Popen�split�PIPE�communicate�strip�decode)�pkg_path�proc�repo_commit�_s �7/usr/lib/python3/dist-packages/IPython/utils/sysinfo.py�pkg_commit_hashr s� � �0 �� /��x��.�.� ��8�>�>�s�C�C�#-�?�#-�?� (�*� *� *�D� �%�%�'�'�N�K��� A��[�.�.�0�0�7�7��@�@�@�@�(�(� c �� � t | � � \ }}t t j | ||t j t j t j t j � � t j t j �� � S )z�Return dict describing the context of this package Parameters ---------- pkg_path : str path containing __init__.py for package Returns ------- context : dict with named parameters of interest ) �ipython_version�ipython_path� commit_source�commit_hash�sys_version�sys_executable�sys_platform�platform�os_name�default_encoding)r �dictr �version�sys� executabler% �os�namer �DEFAULT_ENCODING)r �src�hshs r �pkg_infor1 D s` � � �x�(�(�H�C���������K��~��\��"�$�$���!�2� � � � r c �� � t j } | � | � | � | � t d� � � � � � � � }t |� � S )zBReturn useful information about IPython and the system, as a dict.z..)r, �path�realpath�dirname�abspath�join�__file__r1 )�pr3 s r �get_sys_infor: _ sL � � ��A��:�:�a�i�i�� � �!�&�&��4�*@�*@� A� A�B�B�C�C�D��D�>�>�r c �B � t j t � � � � S )au Return useful information about IPython and the system, as a string. Examples -------- :: In [2]: print(sys_info()) {'commit_hash': '144fdae', # random 'commit_source': 'repository', 'ipython_path': '/home/fperez/usr/lib/python2.6/site-packages/IPython', 'ipython_version': '0.11.dev', 'os_name': 'posix', 'platform': 'Linux-2.6.35-22-generic-i686-with-Ubuntu-10.10-maverick', 'sys_executable': '/usr/bin/python', 'sys_platform': 'linux2', 'sys_version': '2.6.6 (r266:84292, Sep 15 2010, 15:52:39) \n[GCC 4.4.5]'} )�pprint�pformatr: � r r �sys_infor? e s � �$ �>�,�.�.�)�)�)r c �n � ddl } | � dt d�� � t j � � pdS )a� DEPRECATED Return the effective number of CPUs in the system as an integer. This cross-platform function makes an attempt at finding the total number of available CPUs in the system, as returned by various underlying system and python calls. If it can't find a sensible answer, it returns 1 (though an error *may* make it return a large positive number that's actually incorrect). r NzG`num_cpus` is deprecated since IPython 8.0. Use `os.cpu_count` instead.� )� stacklevel� )�warnings�warn�DeprecationWarningr, � cpu_count)rD s r �num_cpusrH z sD � � �O�O�O��M�M�Q��� � � � � �<�>�>��Q�r )�__doc__r, r% r<