File manager - Edit - /usr/lib/python3/dist-packages/sos/__pycache__/utilities.cpython-310.pyc
Back
o -�_g P � @ st d dl Z d dlZd dlZd dlZd dlmZmZmZ d dlZd dl Z d dl Z d dlZd dlZd dl Z d dlZd dlZd dlZd dlmZ d dlmZ zd dlmZ W n eya d dlmZ Y nw e�d�ZdZz d dlZe�e� d ZW n! ee fy� d d l!m"Z" dZ#e�$de"e#d dd�� d�� Y nw dZ%g d�Z&dd� Z'dKdd�Z(dd� Z)dLdd�Z*dd� Z+dd� Z,dMdd�Z-d d!� Z.dNd"d#�Z/e%ddddddddddfd$d%�Z0dNd&d'�Z1dOd)d*�Z2dPd,d-�Z3e j4fd.d/�Z5d0d1� Z6d2d3� Z7d4d5� Z8d6d7� Z9d8d9� Z:e j;d:�d;d<�Z<d=d>� Z=g fd?d@�Z>G dAdB� dB�Z?G dCdD� dDej@�ZAG dEdF� dF�ZBG dGdH� dH�ZCG dIdJ� dJeD�ZEdS )Q� N)�Popen�PIPE�STDOUT)�closing)�deque)�parse)� parse_version�sosFT)�fillz�WARNING: Failed to load 'magic' module version >= 0.4.20 which sos aims to use for detecting binary files. A less effective method will be used. It is recommended to install proper python3-magic package with the module. � �H )�replace_whitespacei, )�TIMEOUT_DEFAULT�ImporterHelper�SoSTimeoutError�TempFileUtil�bold�file_is_binary�fileobj�find�get_human_readable�grep� import_module� is_executable�listdirr �path_exists� path_isdir�path_isfile�path_islink� path_join�recursive_dict_values_by_key� shell_out�sos_get_command_output�tailc C s� t �d�}z#|j| dd�\}}}|s| W S t �dd|��d�}|� d|� �}|W S tyG } zt�d| � d |� �� | W Y d }~S d }~ww )z< Convert the version into a PEP440 compliant version scheme.z2^([0-9][0-9.]*(?:(?:a|b|rc|.post|.dev)[0-9]+)*)\+?� )�maxsplitz[+~]+�.�-�+zUnable to format z to pep440 format: N)�re�compile�split�sub�strip� Exception�log�debug)�ver�public_version_re�_�public�local�sanitized_local�pep440_version�err� r9 �//usr/lib/python3/dist-packages/sos/utilities.py�format_version_to_pep440N s ���r; c C s |r t | �}t|�S t| �S )z6 Converts the version to PEP440 format before parsing )r; r )r1 �pep440� ver_pep440r9 r9 r: �sos_parse_version_ s r>