HOME


Mini Shell 1.0
Redirecting to https://devs.lapieza.net/iniciar-sesion Redirecting to https://devs.lapieza.net/iniciar-sesion.
DIR: /proc/1784574/root/usr/share/python3/debpython/__pycache__/
Upload File :
Current File : //proc/1784574/root/usr/share/python3/debpython/__pycache__/version.cpython-311.pyc
�

ґ2d�7��D�ddlZddlZddlmZddlmZddlmZddlm	Z	dZ
eje
��Zejdej
��Zeje��Zejd��Zejd	��Zereske��Ze�d
��ese�dd��d
d�Zes*e�dd���dd��Z	ed�e�d��D����Zn #e$re�d��YnwxYw	ed�e�d��D����Zn #e$re�d��YnwxYwGd�d��Zdd�Zd�Z d�Z!d�Z"d�Z#d�Z$d d�Z%dS)!�N)�environ��exists)�ConfigParser)�
GeneratorTypez(-)?(\d\.\d+)(?:(-)(\d\.\d+)?)?z�
    (?P<major>\d+)\.?
    (?P<minor>\d+)?\.?
    (?P<micro>\d+)?[.\s]?
    (?P<releaselevel>alpha|beta|candidate|final)?[.\s]?
    (?P<serial>\d+)?�DEBPYTHON3_SUPPORTED�DEBPYTHON3_DEFAULTz"/usr/share/python3/debian_defaults�DEFAULTzdefault-version�zsupported-versions�python�c#�4K�|]}t|��V��dS�N��int��.0�is  �'/usr/share/python3/debpython/version.py�	<genexpr>r5s(����8�8�q�C��F�F�8�8�8�8�8�8��.zcannot read debian_defaultsc#�K�|]B}td�|����d��D����V��CdS)c3�4K�|]}t|��V��dSrr)r�js  rrz<genexpr>.<genexpr>9s(����A�A�q�C��F�F�A�A�A�A�A�ArrN)�tuple�strip�splitrs  rrr9sa����6�6���A�A�A�G�G�I�I�O�O�C�,@�,@�A�A�A�A�A�6�6�6�6�6�6r�,c�j�eZdZ		dd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d	�Z
d
�Zd�Zd�Z
d
�Zd�Zdd�ZdS)�VersionNc	��t|ttf��rd�d�|D����}t|t��r&dD]!}t||t
||�����"dSt��}|d=|d=|rYt�	|��}	|	r&|	�
�����ngD]\}}|�
||�|||<�|���D]-\}}|dkr|�t|��}t|||���.|j
std���dS)Nrc3�4K�|]}t|��V��dSr��strrs  rrz#Version.__init__.<locals>.<genexpr>Cs(����3�3��S��V�V�3�3�3�3�3�3r��major�minor�micro�releaselevel�serial�self�valuer*zmajor component is required)�
isinstancer�list�joinr!�setattr�getattr�locals�
VERSION_RE�match�	groupdict�itemsrr'�
ValueError)
r,r-r'r(r)r*r+�name�compr5s
          r�__init__zVersion.__init__@si���e�e�T�]�+�+�	4��H�H�3�3�U�3�3�3�3�3�E��e�W�%�%�	�M�
:�
:����d�G�E�4�$8�$8�9�9�9�9��F��x�x����L���M��	'��$�$�U�+�+�E�<A�I�u���0�0�6�6�8�8�8�r�
'�
'���e��$��d��);�!&�D��J���:�:�<�<�	'�	'�K�D�%��~�%�%�%�*;��E�
�
���D�$��&�&�&�&��z�	<��:�;�;�;�	<�	<rc�v�t|j��}|j�|d�|j��z
}|S)z�Return major.minor or major string.

        >>> str(Version(major=3, minor=2, micro=1, releaselevel='final', serial=4))
        '3.2'
        >>> str(Version(major=2))
        '2'
        N�.{})r%r'r(�format)r,�results  r�__str__zVersion.__str__Ws6���T�Z�����:�!��e�l�l�4�:�.�.�.�F��
rc�:�tt|����Sr)�hash�repr)r,s r�__hash__zVersion.__hash__ds���D��J�J���rc��d�|��}dD].}t||��}|sn|d�|��z
}�/|dzS)z�Return full version string.

        >>> repr(Version(major=3, minor=2, micro=1, releaselevel='final', serial=4))
        "Version('3.2.1.final.4')"
        >>> repr(Version(major=2))
        "Version('2')"
        zVersion('{})r)r*r+r=z'))r>r2)r,r?r9r-s    r�__repr__zVersion.__repr__gsd���%�%�d�+�+��7�	*�	*�D��D�$�'�'�E��
����e�l�l�5�)�)�)�F�F���}�rc��t|��}|j�|xjt|��z
c_n|xjt|��z
c_|S)z�Return next version.

        >>> Version('3.1') + 1
        Version('3.2')
        >>> Version('2') + '1'
        Version('3')
        )r!r(r'r)r,�otherr?s   r�__add__zVersion.__add__wsJ��������:���L�L�C��J�J�&�L�L�L��L�L�C��J�J�&�L�L��
rc���t|��}|j�%|xjt|��zc_|j}n$|xjt|��zc_|j}|dkrt	d���|S)z�Return previous version.

        >>> Version('3.1') - 1
        Version('3.0')
        >>> Version('3') - '1'
        Version('2')
        Nrzcannot decrease version further)r!r(r'rr8)r,rHr?�news    r�__sub__zVersion.__sub__�sp��������:���L�L�C��J�J�&�L�L��,�C�C��L�L�C��J�J�&�L�L��,�C���7�7��>�?�?�?��
rc�4�|�|��dkS�Nr��
_Version__cmp�r,rHs  r�__eq__zVersion.__eq__�����z�z�%� � �A�%�%rc�4�|�|��dkSrNrOrQs  r�__lt__zVersion.__lt__�����z�z�%� � �1�$�$rc�4�|�|��dkSrNrOrQs  r�__le__zVersion.__le__�rSrc�4�|�|��dkSrNrOrQs  r�__gt__zVersion.__gt__�rVrc�4�|�|��dkSrNrOrQs  r�__ge__zVersion.__ge__�rSrc���t|t��st|��}|j�|j�|�|d���dkS|�|d���dkS)akCompare major.minor or major only (if minor is not set).

        >>> Version('2.6') << Version('2.7')
        True
        >>> Version('2.6') << Version('2.6.6')
        False
        >>> Version('3') << Version('2')
        False
        >>> Version('3.1') << Version('2')
        False
        >>> Version('2') << Version('3.2.1.alpha.3')
        True
        Nr(��ignorerr)�r.r!r(rPrQs  r�
__lshift__zVersion.__lshift__��f���%��)�)�	#��E�N�N�E��:����!4��:�:�e�G�:�4�4�q�8�8��:�:�e�G�:�4�4�q�8�8rc���t|t��st|��}|j�|j�|�|d���dkS|�|d���dkS)aoCompare major.minor or major only (if minor is not set).

        >>> Version('2.6') >> Version('2.7')
        False
        >>> Version('2.6.7') >> Version('2.6.6')
        False
        >>> Version('3') >> Version('2')
        True
        >>> Version('3.1') >> Version('2')
        True
        >>> Version('2.1') >> Version('3.2.1.alpha.3')
        False
        Nr(r^rr)r`rQs  r�
__rshift__zVersion.__rshift__�rbrc�L�t|t��st|��}dD]|}||krnst||��pd}t||��pd}|dkr3ddddd�}|�|d��}|�|d��}||kr�n||k||kz
cSdS)Nr&rr*���������)�alpha�beta�	candidate�final)r.r!r2�get)r,rHr_r9�value1�value2�rmaps       r�__cmpz
Version.__cmp�s����%��)�)�	#��E�N�N�E�I�	9�	9�D��v�~�~����T�4�(�(�-�A�F��U�D�)�)�.�Q�F��~�%�%�!#�R�b�1�M�M�����&�!�,�,�����&�!�,�,��������V�O����8�8�8�8��qr)NNNNNNr)�__name__�
__module__�__qualname__r;r@rDrFrIrLrRrUrXrZr\rardrP�rrr!r!?s�������AE�+/�<�<�<�<�.��� � � ���� 
�
�
����&&�&�&�%�%�%�&�&�&�%�%�%�&�&�&�9�9�9�*9�9�9�*�����rr!c����t|t��rt|��}|rt|��ddgkrt	t
��}ns|d�dn|d�|d�dn|d���kr(t	�t
vr�fn
t
����}n!t	��fd�t
D����}|rt	d�|D����}n|durt	d	�|D����}|S)
aJReturn a set of requested and supported Python versions.

    :param available: if set to `True`, return installed versions only,
        if set to `False`, return requested versions that are not installed.
        By default returns all requested versions.
    :type available: bool

    >>> sorted(get_requested_versions([(3, 0), None]))
    [(3, 2), (3, 3)]
    >>> sorted(get_requested_versions('')) == sorted(SUPPORTED)
    True
    >>> sorted(get_requested_versions([None, None])) == sorted(SUPPORTED)
    True
    >>> get_requested_versions([(5, 0), None]) == set()
    True
    Nr)rr�)�crxc3�<�K�|]}�|cxkr�k�nn|V��dSrru)r�v�maxv�minvs  ��rrz)get_requested_versions.<locals>.<genexpr>sD�����D�D��4�1�3C�3C�3C�3C�t�3C�3C�3C�3C�3C�1�3C�3C�3C�3C�D�Drc3�>K�|]}td|z���|V��dS�z/usr/bin/python%d.%dNr�rrzs  rrz)get_requested_versions.<locals>.<genexpr>sH����>�>�Q� �!7�!�!;�<�<�>�q�>�>�>�>�>�>rFc3�>K�|]}td|z���|V��dSr~rrs  rrz)get_requested_versions.<locals>.<genexpr>sQ����B�B�Q�$�%;�a�%?�@�@�B�q�B�B�B�B�B�Br)r.r%�parse_vranger/�set�	SUPPORTEDr)�vrange�	available�versionsr{r|s   @@r�get_requested_versionsr��sD����"�&�#���&��f�%�%���E�T�&�\�\�d�D�\�1�1��y�>�>������*�v�v��q�	��!�!�9�,�x�x�&��)���4�<�<��d�i�&7�&7�D�7�7�U�W�W�E�E�H�H��D�D�D�D�D�i�D�D�D�D�D�H��B��>�>�(�>�>�>�>�>���	�e�	�	��B�B�(�B�B�B�B�B���Orc��|dvrdSt�|��}|std|z���|���}t	|���d��dkr6t
d�|d�d��D����}||fSdx}}|d	r	|d}n|d}|d}|r,t
d
�|�d��D����nd}|r,t
d�|�d��D����nd}|r|r||krtd|z���||fS)a�Return minimum and maximum Python version from given range.

    >>> parse_vrange('3.0-')
    ((3, 0), None)
    >>> parse_vrange('3.1-3.3')
    ((3, 1), (3, 3))
    >>> parse_vrange('3.2-4.0')
    ((3, 2), (4, 0))
    >>> parse_vrange('-3.7')
    (None, (3, 7))
    >>> parse_vrange('3.2')
    ((3, 2), (3, 2))
    >>> parse_vrange('') == parse_vrange('-') == (None, None)
    True
    )r
�-�NNzversion range is invalid: %sN�c3�4K�|]}t|��V��dSrrrs  rrzparse_vrange.<locals>.<genexpr>%s(����:�:��S��V�V�:�:�:�:�:�:rrwrrc3�4K�|]}t|��V��dSrrrs  rrzparse_vrange.<locals>.<genexpr>/�(����1�1�A��Q���1�1�1�1�1�1rc3�4K�|]}t|��V��dSrrrs  rrzparse_vrange.<locals>.<genexpr>0r�r)�RANGE_REr5r8�groupsr/�countrr)r-r5r�r|r{s     rr�r�sn�� 
�	����z��N�N�5�!�!�E��A��7�%�?�@�@�@�
�\�\�^�^�F��F�|�|���$���1�$�$��:�:�V�A�Y�_�_�S�%9�%9�:�:�:�:�:���T�z����D�4�
�a�y���a�y����a�y���a�y��59�C�5�1�1����C���1�1�1�1�1�1�t�D�59�C�5�1�1����C���1�1�1�1�1�1�t�D��A��A������7�%�?�@�@�@���:�rc���dx}}t��}|�d��D]�}|���}tjd|��}|rd|�d��z}�Ftjd|��}|rd|�d��z}�vtjd|��}|r+|�d|�d��z����t|��dkr2|���}t|��t|��fS|s|rt|��d}|rt|��nd|rt|��ndfS)	aParse X-Python3-Version.

    >>> parse_pycentral_vrange('>= 3.1')
    ((3, 1), None)
    >>> parse_pycentral_vrange('<< 4.0')
    (None, (4, 0))
    >>> parse_pycentral_vrange('3.1')
    ((3, 1), (3, 1))
    >>> parse_pycentral_vrange('3.1, 3.2')
    ((3, 1), None)
    Nrz>=\s*([\d\.]+)z%.3srwz<<\s*([\d\.]+)z	^[\d\.]+$r)r�rr�rer5�group�add�len�pop�getver�sorted)r-r|r{�	hardcoded�itemr5�vers       r�parse_pycentral_vranger�8s[����D�4����I����C� � �
3�
3���z�z�|�|����*�D�1�1���	��E�K�K��N�N�*�D����*�D�1�1���	��E�K�K��N�N�*�D�����t�,�,���	3��M�M�&�5�;�;�q�>�>�1�2�2�2��
�9�~�~�����m�m�o�o���c�{�{�F�3�K�K�'�'��$�I�$��i� � ��#���)�6�$�<�<�<�T�4�+I�6�$�<�<�<�T�I�Irc��|d|dcxur�nndS|d|dkr%d�d�|dD����S|d�(dd�d�|dD����zS|d�(d�d�|dD����dzSd�d	�|dD�����dd�d
�|dD������S)aMReturn version range string from given range.

    >>> vrange_str(((3, 4), None))
    '3.4-'
    >>> vrange_str(((3, 4), (3, 6)))
    '3.4-3.6'
    >>> vrange_str(((3, 4), (4, 0)))
    '3.4-4.0'
    >>> vrange_str((None, (3, 7)))
    '-3.7'
    >>> vrange_str(((3, 5), (3, 5)))
    '3.5'
    >>> vrange_str((None, None))
    '-'
    rrwNr�rc3�4K�|]}t|��V��dSrr$rs  rrzvrange_str.<locals>.<genexpr>v�(����2�2�1��A���2�2�2�2�2�2rc3�4K�|]}t|��V��dSrr$rs  rrzvrange_str.<locals>.<genexpr>xs(����8�8��c�!�f�f�8�8�8�8�8�8rc3�4K�|]}t|��V��dSrr$rs  rrzvrange_str.<locals>.<genexpr>zr�rc3�4K�|]}t|��V��dSrr$rs  rrzvrange_str.<locals>.<genexpr>|�(����"=�"=�a�3�q�6�6�"=�"=�"=�"=�"=�"=rc3�4K�|]}t|��V��dSrr$rs  rrzvrange_str.<locals>.<genexpr>}r�r)r0)r�s r�
vrange_strr�cs%�� �a�y�F�1�I�%�%�%�%�%�%�%�%��s�
�a�y�F�1�I����x�x�2�2��q�	�2�2�2�2�2�2�	���	��S�X�X�8�8�f�Q�i�8�8�8�8�8�8�8�	���	��x�x�2�2��q�	�2�2�2�2�2�S�8�8��(�(�"=�"=�6�!�9�"=�"=�"=�=�=�=�=��(�(�"=�"=�6�!�9�"=�"=�"=�=�=�=�?�	?rc��t|t��r|St|ttf��s:t|dt��rd�d�|D����Sg}|D]_}t|t��r|�|���-|�d�d�|D�������`|S)z�
    >>> vrepr(([3, 4], [3, 2]))
    ['3.4', '3.2']
    >>> vrepr(('2.6', '3.1'))
    ['2.6', '3.1']
    >>> vrepr('3.2')
    '3.2'
    >>> vrepr((3, 2))
    '3.2'
    rrc3�4K�|]}t|��V��dSrr$rs  rrzvrepr.<locals>.<genexpr>�s(����.�.�1��A���.�.�.�.�.�.rc3�4K�|]}t|��V��dSrr$rs  rrzvrepr.<locals>.<genexpr>�s(����";�";�a�3�q�6�6�";�";�";�";�";�";r)r.r%rr�rr0�append)r-r?�versions   r�vreprr��s����%����/���
��
�s�3�
4�
4�/��E�!�H�c�9R�9R�/��x�x�.�.��.�.�.�.�.�.�
�F��=�=���g�s�#�#�	=��M�M�'�"�"�"�"��M�M�#�(�(�";�";�7�";�";�";�;�;�<�<�<�<��Mrc��|sdSt|t��r
|dd�Std�|�dd��D����dd�S)z�Return pair of integers that represent version.

    >>> getver('3.2')
    (3, 2)
    >>> getver('3.1.4')
    (3, 1)
    >>> getver((3, 3, 1))
    (3, 3)
    >>> getver(None)
    ''
    r
N�c3�4K�|]}t|��V��dSrrrs  rrzgetver.<locals>.<genexpr>�s(����5�5�A��Q���5�5�5�5�5�5rr)r.rr)r-s rr�r��se�����r��%������R�a�R�y���5�5����S�!�!4�!4�5�5�5�5�5�b�q�b�9�9rc�P�g}g}t|��D]\}t|t��rt|��}|tkr|�|���G|�|���]|�t|����|r|rt|��S|S)a�Return sorted list of versions starting with default Python
    version (if available) then list of suppored versions greater than default
    one followed by reversed list of older versions.

    List of versions sorted this way can be used in Depends field.

    :param vrepr: return string represenatations of versions, by default the
        same format is used as in :param:`versions`

    >>> debsorted([(2, 6), (3, 1), (3, 2), (3, 3), (2, 7)])[0] == DEFAULT
    True
    >>> debsorted(('2.4', '3.2', '2.6', '2.7'))[-1]
    (2, 4)
    >>> debsorted(set([(2, 1), (2, 2)]))
    [(2, 2), (2, 1)]
    >>> debsorted([(2, 1), (2, 2)], return_str=True)
    ['2.2', '2.1']
    )	r�r.r%r�r
r��extend�reversedr�)r��
return_strr?�old_versionsr�s     r�	debsortedr��s���&�F��L��(�#�#�#�#���g�s�#�#�	&��W�o�o�G��W�������(�(�(�(��M�M�'�"�"�"�"�
�M�M�(�<�(�(�)�)�)���f���V�}�}���Mrr�r)&�loggingr��osr�os.pathr�configparserr�typesr�
RANGE_PATTERN�compiler��VERBOSEr4�	getLoggerrr�logrm�
_supported�_default�_config�read�replacerrr
�	Exception�	exceptionr�r!r�r�r�r�r�r�r�rurr�<module>r�s���,����	�	�	�	�������������%�%�%�%�%�%�������2�
��2�:�m�$�$��
�R�Z��
��%�%�
��g���!�!���W�[�/�
0�
0�
��7�;�+�,�,���#��#��l�n�n�G��L�L�5�6�6�6��A��;�;�y�*;�<�<�Q�R�R�@���#��[�[��,@�A�A�
�W�X�r�
"�
"�	�1��e�8�8�H�N�N�3�$7�$7�8�8�8�8�8�G�G���1�1�1��M�M�/�0�0�0�0�0�1����1���6�6�)�/�/��4�4�6�6�6�6�6�I�I���1�1�1��M�M�/�0�0�0�0�0�1����b�b�b�b�b�b�b�b�J%�%�%�%�P)�)�)�X(J�(J�(J�V?�?�?�:���2:�:�:�&�����s$�)(D�D/�.D/�3(E�E9�8E9