| Server IP : 3.111.61.48 / Your IP : 216.73.216.67 Web Server : Apache System : Linux ip-10-0-5-176 6.8.0-1057-aws #60~22.04.1-Ubuntu SMP Wed May 27 08:16:59 UTC 2026 x86_64 User : ubuntu ( 1000) PHP Version : 8.2.31 Disable Function : exec,passthru,shell_exec,system MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /usr/lib/python3.10/test/__pycache__/ |
Upload File : |
o
�9j�K � @ s� d dl Z d dlZd dlZd dlZd dlZd dlZd dlmZ d dlm Z d dl
mZ ddgZdZ
dZdZg d �Zej�d
�rLe jrFdZ
dZn*e�d� n$ej�d
�rWdZ
dZnejdkr_dZnejdkrgdZn ejdkrpdZ
dZd Zeejdvo�ee d�o�ee d��Zdd� ZdZede�ZG dd� de�ZdZdZdada da!dd� Z"G dd � d ej#�Z$G d!d"� d"e$�Z%e j&e�'e�(d#�d$�G d%d&� d&e$���Z)d'd(� Z*e+d)kr�e�,� dS dS )*� N)�
namedtuple)�support)�run_python_until_end�Cz
invalid.ascii�asciiT)zC.UTF-8zC.utf8�UTF-8�linux�utf-8�POSIX�aixz iso8859-1�darwin�cygwinF�vxworks)r r �nl_langinfo�CODESETc C s6 d}t r|d7 }|�| �}td|dd�\}}|jdkS )Nz=import locale; print(locale.setlocale(locale.LC_CTYPE, '{}'))z>; import sys; sys.exit(not locale.nl_langinfo(locale.CODESET))�-c� ��PYTHONCOERCECLOCALEr )�_check_nl_langinfo_CODESET�formatr �rc)�locale_name�cmd_fmt�cmd�result�py_cmd� r �2/usr/lib/python3.10/test/test_c_locale_coercion.py�_set_locale_in_subprocessW s
r zBfsencoding stdin_info stdout_info stderr_info lang lc_ctype lc_all�EncodingDetailsc @ s2 e Zd Zd�g d��Zedd� �Zedd� �ZdS )r �;)zimport sys, osz"print(sys.getfilesystemencoding())z2print(sys.stdin.encoding + ':' + sys.stdin.errors)z4print(sys.stdout.encoding + ':' + sys.stdout.errors)z4print(sys.stderr.encoding + ':' + sys.stderr.errors)z(print(os.environ.get('LANG', 'not set'))z,print(os.environ.get('LC_CTYPE', 'not set'))z*print(os.environ.get('LC_ALL', 'not set'))c C s| |d }d|� d�g }|�|� d�� |�dd�}|rt}n|�dd�}|�dd�} ||| f}
t| |g|�|
�R � �� �S ) z;Returns expected child process details for a given encodingz:{}� �surrogateescape�backslashreplace�LANGznot set�LC_CTYPE�LC_ALL)r �append�get�CLI_COERCION_TARGET�dict�_asdict)�cls�coercion_expected�fs_encoding�stream_encoding�env_vars�_stream�stream_info�
expected_lang�expected_lc_ctype�expected_lc_all�env_infor r r �get_expected_detailsr s
z$EncodingDetails.get_expected_detailsc C sl t ddd| jfi |��\}}|jdks|�|� |j�d��� }t| |� �� �}|j �d��
� �� }||fS )aj Retrieves fsencoding and standard stream details from a child process
Returns (encoding_details, stderr_lines):
- encoding_details: EncodingDetails for eager decoding
- stderr_lines: result of calling splitlines() on the stderr output
The child is run in isolated mode if the current interpreter supports
that.
z-Xzutf8=0r r r )r �CHILD_PROCESS_SCRIPTr �fail�out�decode�
splitlinesr+ r, �err�rstrip)r- r1 r r �stdout_lines�child_encoding_details�stderr_linesr r r �get_child_details� s
�
�
z!EncodingDetails.get_child_detailsN)�__name__�
__module__�__qualname__�joinr9 �classmethodr8 rC r r r r r e s
z�Python runtime initialized with LC_CTYPE=C (a locale with default ASCII encoding), which may cause Unicode compatibility problems. Using C.UTF-8, C.utf8, or UTF-8 (if available) as alternative Unicode-compatible locales is recommended.z�Python detected LC_CTYPE=C: LC_CTYPE coerced to {} (set another locale or PYTHONCOERCECLOCALE=0 to disable this locale coercion behavior).c C s� t d urd S g a tD ]} t| �rt �| � q
t r!t d at�t�atj rWt
dt ��� t
dt��� t
dt��� t
dt
��� t
dt��� t
dt��� t
dt��� d S d S ) Nr zAVAILABLE_TARGETS = z EXPECTED_C_LOCALE_EQUIVALENTS = z$EXPECTED_C_LOCALE_STREAM_ENCODING = z EXPECTED_C_LOCALE_FS_ENCODING = z$EXPECT_COERCION_IN_DEFAULT_LOCALE = z_C_UTF8_LOCALES = z_check_nl_langinfo_CODESET = )�AVAILABLE_TARGETS�_C_UTF8_LOCALESr r( r* �CLI_COERCION_WARNING_FMTr �CLI_COERCION_WARNINGr �verbose�print�EXPECTED_C_LOCALE_EQUIVALENTS�!EXPECTED_C_LOCALE_STREAM_ENCODING�EXPECTED_C_LOCALE_FS_ENCODING�!EXPECT_COERCION_IN_DEFAULT_LOCALEr )�
target_localer r r �setUpModule� s&