HEX
Server: Apache
System: Linux zacp120.webway.host 4.18.0-553.50.1.lve.el8.x86_64 #1 SMP Thu Apr 17 19:10:24 UTC 2025 x86_64
User: govancoz (1003)
PHP: 8.3.26
Disabled: exec,system,passthru,shell_exec,proc_close,proc_open,dl,popen,show_source,posix_kill,posix_mkfifo,posix_getpwuid,posix_setpgid,posix_setsid,posix_setuid,posix_setgid,posix_seteuid,posix_setegid,posix_uname
Upload Files
File: //usr/local/lib/python3.7/test/__pycache__/pythoninfo.cpython-37.opt-1.pyc
B

��g�J�@shdZddlmZddlZddlZddlZddlZddlZdd�ZGdd�d�Z	dd�d	d
�Z
dd�Zdd�d
d�Zdd�Z
dd�Zdd�Zdd�Zdd�Zdd�Zdd�Zdd�Zdd �Zd!d"�Zd#d$�Zd%d&�Zd'd(�Zd)d*�Zd+d,�Zd-d.�Zd/d0�Zd1d2�Zd3d4�Zd5d6�Z d7d8�Z!d9d:�Z"d;d<�Z#d=d>�Z$d?d@�Z%dAdB�Z&dHdCdD�Z'dEdF�Z(e)dGk�rde(�dS)IzK
Collect various information about Python to help debugging test failures.
�)�print_functionNcCs*|dkrdSt|�}t�dd|�}|��S)Nz\s+� )�str�re�sub�strip)�text�r	�+/usr/local/lib/python3.7/test/pythoninfo.py�normalize_texts
rc@s$eZdZdd�Zdd�Zdd�ZdS)�
PythonInfocCs
i|_dS)N)�info)�selfr	r	r
�__init__szPythonInfo.__init__cCs\||jkrtd|��|dkr"dSt|t�sNt|t�s>t|�}|��}|sNdS||j|<dS)Nzduplicate key: %r)r
�
ValueError�
isinstance�intrr)r�key�valuer	r	r
�adds


zPythonInfo.addcCsdd�|j��D�S)zU
        Get information as a key:value dictionary where values are strings.
        cSsi|]\}}t|�|�qSr	)r)�.0rrr	r	r
�
<dictcomp>.sz(PythonInfo.get_infos.<locals>.<dictcomp>)r
�items)rr	r	r
�	get_infos*szPythonInfo.get_infosN)�__name__�
__module__�__qualname__rrrr	r	r	r
rsr)�	formattercCsLxF|D]>}t||d�}|dkr q||}|dk	r:|||�}|||�qWdS)N)�getattr)�info_add�objZname_fmt�
attributesr�attrr�namer	r	r
�copy_attributes1s

r$cCs2yt||�}Wntk
r"dSX|||�dS)N)r�AttributeError)rr#�modZ	attr_namerr	r	r
�	copy_attr<s
r'cCsHyt||�}Wntk
r"dSX|�}|dk	r:||�}|||�dS)N)rr%)rr#r&Z	func_namer�funcrr	r	r
�	call_funcDsr)cCs�d}t|td|�t|dtd�t|dtd�t��}ttd�rPd|t��f}|d	|�x\d
D]T}tt|�}|dkrxq`t|dd�}|s�q`t|dd�}|r�d||f}|d
||�q`Wttd�}|r�d}nd}|d|�dS)N)�
_framework�abiflags�api_version�builtin_module_names�	byteorder�dont_write_bytecode�
executable�flags�
float_info�float_repr_style�	hash_info�
hexversion�implementation�int_info�maxsize�
maxunicode�path�platform�prefix�thread_info�version�version_infoZwinverzsys.%szsys.androidapilevelZgetandroidapilevelzsys.windowsversionZgetwindowsversion�getfilesystemencodeerrorsz%s/%szsys.filesystem_encoding)�stdin�stdout�stderr�encoding�errorszsys.%s.encodingZgettotalrefcountz$Yes (sys.gettotalrefcount() present)z#No (sys.gettotalrefcount() missing)�Py_DEBUG)r$�sysr)�getfilesystemencoding�hasattrr@r)rr!rDr#�streamrErFrr	r	r
�collect_sysOs0




rKcCslddl}|��}d�tt|��}|d|�|d|���|d|jdd��d|����}|rh|d	|�dS)
Nrrzplatform.architecturezplatform.python_implementationzplatform.platformT)Zaliasedz%s %szplatform.libc_ver)r;Zarchitecture�join�filter�boolZpython_implementation�libc_verr)rr;ZarchrOr	r	r
�collect_platform�s

rPcCsddl}|d|�d��dS)Nrzlocale.encodingF)�locale�getpreferredencoding)rrQr	r	r
�collect_locale�srScCs$|dt�d��|dt�d��dS)Nzbuiltins.float.float_format�floatzbuiltins.float.double_formatZdouble)rT�
__getformat__)rr	r	r
�collect_builtins�srVc

Cs�ddl}dd�}d}t||d||d�t|d|d�t|d	|d
�t|d|d�t|d
|d�dd�}t|d|d|d�t|d�r�y|��}Wntk
r�YnX|d|�t|d|d�t|d|d�td�}xV|j��D]H\}}|�	�}	|	|k�s|	�
d��s|	�
d�r�|	�d�r�|d||�q�Wt|d��rX|�d�}
|�|
�|dd |
�t|d!��r�yRy|�
d"|j�d#}Wn,tk
�r�}zd$|}Wdd}~XYnX|d%|�Wn4tk
�r�}z|jtjk�rڂWdd}~XYnXdS)&NrcSs&|dkrttdd�|D���S|SdS)N)�supports_follow_symlinks�supports_fd�supports_effective_idscss|]}|jVqdS)N)r)rr(r	r	r
�	<genexpr>�sz2collect_os.<locals>.format_attr.<locals>.<genexpr>)r�sorted)r"rr	r	r
�format_attr�szcollect_os.<locals>.format_attr)r#�supports_bytes_environrYrXrWzos.%s)rzos.cwd�getcwdzos.uid�getuidzos.gid�getgidzos.uname�unamecSsd�tt|��S)Nz, )rL�mapr)�groupsr	r	r
�
format_groups�sz!collect_os.<locals>.format_groupsz	os.groups�	getgroups�getloginzos.loginzos.cpu_count�	cpu_countz
os.loadavg�
getloadavg)>�APPDATAZARZ	ARCHFLAGSZARFLAGSZAUDIODEV�CC�CFLAGS�COLUMNSZCOMPUTERNAMEZCOMSPECZCPPZCPPFLAGSZDISPLAYZDISTUTILS_DEBUGZDISTUTILS_USE_SDKZDYLD_LIBRARY_PATHZENSUREPIP_OPTIONSZHISTORY_FILE�HOMEZ	HOMEDRIVEZHOMEPATHZIDLESTARTUP�LANGZLDFLAGSZLDSHAREDZLD_LIBRARY_PATHZLINESZMACOSX_DEPLOYMENT_TARGETZMAILCAPSZ	MAKEFLAGSZMIXERDEVZMSSDK�PATHZPATHEXTZPIP_CONFIG_FILEZPLATZPOSIXLY_CORRECTZ
PY_SAX_PARSERZProgramFileszProgramFiles(x86)ZRUNNING_ON_VALGRINDZ
SDK_TOOLS_BINZSERVER_SOFTWARE�SHELL�SOURCE_DATE_EPOCHZ
SYSTEMROOTZTEMPZTERMZTILE_LIBRARYZTIX_LIBRARYZTMPZTMPDIRZTRAVISZTZZUSERPROFILEZVIRTUAL_ENVZWAYLAND_DISPLAYZWINDIRZ_PYTHON_HOST_PLATFORMZ_PYTHON_PROJECT_BASEZ_PYTHON_SYSCONFIGDATA_NAME�__PYVENV_LAUNCHER__)ZPYTHON�LC_ZVSZ	COMNTOOLSzos.environ[%s]�umaskzos.umaskz%03o�	getrandom�zready (initialized)znot seeded yet (%s)zos.getrandom)�osr$r)rIrf�OSError�	frozenset�environr�upper�
startswith�endswithrtru�
GRND_NONBLOCK�BlockingIOError�errnoZENOSYS)
rrwr\r!rdZloginZENV_VARSr#rra�mask�state�excr	r	r
�
collect_os�sR

?


r�cCs�yddl}Wntk
r dSXdd�}d}t||d||d�t|d�s|t|dd	�}d
|krj|dd
�nd|kr||dd�dS)
NrcSst|t�rd|S|SdS)Nz%#x)rr)r"rr	r	r
r\7s
z%collect_readline.<locals>.format_attr)Z_READLINE_VERSIONZ_READLINE_RUNTIME_VERSION�_READLINE_LIBRARY_VERSIONzreadline.%s)rr��__doc__�zlibedit readlinezreadline.libraryzGNU readline)�readline�ImportErrorr$rIr)rr�r\r!�docr	r	r
�collect_readline1s

r�cCsnddl}y6|jdddg|j|jdd�}|��d}|jr<dSWntk
rRdSX|��d}|d|�dS)NrZgdbz-nxz	--versionT)rBrC�universal_newlinesZgdb_version)�
subprocess�Popen�PIPE�communicate�
returncoderx�
splitlines)rr��procr>r	r	r
�collect_gdbNsr�cCsxyddl}Wntk
r YnXd}t||d|�yddl}Wntk
rTYn X|��}|�dd�}|d|�dS)Nr)Z
TK_VERSIONZTCL_VERSIONz
tkinter.%sr
�
patchlevelztkinter.info_patchlevel)�_tkinterr�r$�tkinterZTclZcall)rr�r!r�Ztclr�r	r	r
�collect_tkinterbsr�c
Cs�ddl}|d|���d}t||d|�t|d�r�xVdD]N}y&tjdd��|�|�}WdQRXWntk
rvYq8X|d	||�q8WdS)
Nrz	time.time)ZaltzoneZdaylightZtimezoneZtznameztime.%s�get_clock_info)�clockZ	monotonicZperf_counterZprocess_timeZthread_time�timeT)�recordztime.get_clock_info(%s))r�r$rI�warnings�catch_warningsr�r)rr�r!r�Z
clock_infor	r	r
�collect_timeus

r�cCs6yddl}Wntk
r dSX|d|j���dS)Nrzdatetime.datetime.now)�datetimer�Znow)rr�r	r	r
�collect_datetime�s
r�cCsHddl}x:dD]2}|�|�}|dkr*|s*qt|�}|d||�qWdS)Nr)ZABIFLAGS�ANDROID_API_LEVELrjZCCSHAREDrkZCFLAGSFORSHAREDZCONFIG_ARGSZ
HOST_GNU_TYPEZMACHDEPZ	MULTIARCHZOPTZ	PY_CFLAGSZPY_CFLAGS_NODISTZPY_CORE_LDFLAGSZ
PY_LDFLAGSZPY_LDFLAGS_NODISTZPY_STDMODULE_CFLAGSrFZPy_ENABLE_SHAREDrpZSOABIr<r�z
sysconfig[%s])�	sysconfig�get_config_varr)rr�r#rr	r	r
�collect_sysconfig�s
r�c	Cs8ddl}yddl}Wntk
r(dSXyddl}Wntk
rNd}YnXdd�}d}t||d||d�xHd|��fd|��fd	|��ffD]"\}}d
}t||d|�d�|�q�Wd
dg}|dk	r�t|d�r�|�	�}	|�
|	d|	df�xB|D]:}y|j|}
Wntk
�r w�YnX|d||
�q�WdS)NrcSs|�d�rd|S|SdS)NZOP_z%#8x)r|)r"rr	r	r
r\�s
z collect_ssl.<locals>.format_attr)ZOPENSSL_VERSIONZOPENSSL_VERSION_INFOZHAS_SNIZOP_ALLZ
OP_NO_TLSv1_1zssl.%s)r�
SSLContextZdefault_https_contextZstdlib_context)Zminimum_versionZmaximum_versionZprotocol�optionsZverify_modezssl.z.%sZOPENSSL_CONFZ
SSLKEYLOGFILE�get_default_verify_paths�zssl.environ[%s])
rw�sslr��_sslr$r�Z_create_default_https_contextZ_create_stdlib_contextrIr��extendrz�KeyError)rrwr�r�r\r!r#ZctxZ	env_names�partsrr	r	r
�collect_ssl�s8



r�cCsddl}|��}|d|�dS)Nrzsocket.hostname)�socketZgethostname)rr�Zhostnamer	r	r
�collect_socket�sr�cCs8yddl}Wntk
r dSXd}t||d|�dS)Nr)r>Zsqlite_versionz
sqlite3.%s)�sqlite3r�r$)rr�r!r	r	r
�collect_sqlite�sr�cCs8yddl}Wntk
r dSXd}t||d|�dS)Nr)ZZLIB_VERSIONZZLIB_RUNTIME_VERSIONzzlib.%s)�zlibr�r$)rr�r!r	r	r
�collect_zlibsr�cCs<yddlm}Wntk
r$dSXd}t||d|�dS)Nr)�expat)Z
EXPAT_VERSIONzexpat.%s)Zxml.parsersr�r�r$)rr�r!r	r	r
�
collect_expatsr�cCs8yddl}Wntk
r dSXd}t||d|�dS)Nr)Z__libmpdec_version__z_decimal.%s)�_decimalr�r$)rr�r!r	r	r
�collect_decimalsr�cCsByddl}Wntk
r dSXt|d|d�t|d|d�dS)Nrzpymem.allocatorZpymem_getallocatorsnamezpymem.with_pymallocZ
WITH_PYMALLOC)�	_testcapir�r)r')rr�r	r	r
�collect_testcapi sr�cCsvyddl}Wntk
r dSXdd�t|�D�}x.|D]&}t||�}|�|�}|d||�q:Wt|d|d�dS)NrcSsg|]}|�d�r|�qS)ZRLIMIT_)r|)rr"r	r	r
�
<listcomp>0sz$collect_resource.<locals>.<listcomp>zresource.%szresource.pagesizeZgetpagesize)�resourcer��dirrZ	getrlimitr))rr�Zlimitsr#rrr	r	r
�collect_resource*s


r�cCsJyddlm}Wntk
r$dSXdd�t|�D�}t||d|�dS)Nr)�test_socketcSsg|]}|�d�r|�qS)ZHAVE_)r|)rr#r	r	r
r�@sz'collect_test_socket.<locals>.<listcomp>ztest_socket.%s)�testr�r�r�r$)rr�r!r	r	r
�collect_test_socket9sr�cCsXyddlm}Wntk
r$dSXd}t||d|�t|d|d�t|d|d�dS)	Nr)�support)ZIPV6_ENABLEDztest_support.%sztest_support._is_gui_availableZ_is_gui_availablez test_support.python_is_optimizedZpython_is_optimized)r�r�r�r$r))rr�r!r	r	r
�collect_test_supportEsr�c	Cs�ddl}ddl}|�d�}|s"dSyddl}|�|�}Wntk
rT|��}YnX|�d�y|j||j|j	dd�}Wnt
k
r�dSX|��d}|jr�dS|�
�d}t|�}|d|�dS)Nrrjz	--versionT)rBrCr�z
CC.version)r�r�r��shlex�splitr��appendr�r�ZSTDOUTrxr�r�r�r)	rr�r�rjr��argsr�rBrr	r	r
�
collect_ccRs0

r�cCs@yddlm}Wntk
r$dSX|dd�tt|���dS)Nr)�
_GDBM_VERSIONzgdbm.GDBM_VERSION�.)Z_gdbmr�r�rLrbr)rr�r	r	r
�collect_gdbmus
r�cCsvyddlm}Wntk
r$dSX|�}xDt|�D]8}||}x*t|�D]}|d||ft||��qLWq6WdS)Nr)�get_configsz%s[%s])Z_testinternalcapir�r�r[�repr)rr�Zall_configsZconfig_typeZconfigrr	r	r
�collect_get_config~sr�cCsddl}t||dd�dS)Nrz
subprocess.%s)Z_USE_POSIX_SPAWN)r�r$)rr�r	r	r
�collect_subprocess�sr�cCs�d}|j}x�ttttttttt	t
ttt
ttttttttttttfD]p}y||�WqBtk
r�}z@d}td|jtjd�tj tjd�ttjd�tj�!�Wdd}~XYqBXqBW|S)NFTzERROR: %s() failed)�file)"rr�rVr�rSrPr�r�r�r�rKr�r�r�r�r�r�r�r�r�r�r�r�r�r�r��	Exception�printrrGrC�	traceback�	print_exc�flush)r
�errorrZcollect_funcr�r	r	r
�collect_info�sL


 r�cCsnd}t|�tdt|��t�|��}t|���}x,|D]$\}}|�dd�}td||f�q<Wt�dS)NzPython debug information�=�
rz%s: %s)r��lenrr[r�replace)r
r��titleZinfosrrr	r	r
�	dump_info�sr�cCs6t�}t|�}t|�|r2tdtjd�t�d�dS)Nz"Collection failed: exit with error)r�rv)rr�r�r�rGrC�exit)r
r�r	r	r
�main�sr��__main__)N)*r�Z
__future__rr�rrGr�r�rrr$r'r)rKrPrSrVr�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�rr	r	r	r
�<module>sT9	#5





#	0