File manager - Edit - /opt/saltstack/salt/lib/python3.10/site-packages/setuptools/__pycache__/_normalization.cpython-310.pyc
Back
o ;j� � @ sB d Z ddlZddlmZ ddlZe�dej�Ze�dej�Ze�dej�Z e�dej�Z ded efd d�Zded efd d�Z ded efdd�Zded efdd�Zded efdd�Zded efdd�Zded efdd�Zded efdd�Zded efdd�Zd ed efd!d"�Zz dd#lmZ W dS ey� es�eZY dS Y dS w )$zZ Helpers for normalization as expected in wheel/sdist/module file names and core metadata � N)� TYPE_CHECKINGz)^([A-Z0-9]|[A-Z0-9][A-Z0-9._-]*[A-Z0-9])$z [^A-Z0-9._-]+z [^A-Z0-9]+z,^v?(?P<safe>(?:[0-9]+!)?[0-9]+(?:\.[0-9]+)*)�name�returnc C s t �dd| �}|�� s J �|S )z�Make a string safe to be used as Python identifier. >>> safe_identifier("12abc") '_12abc' >>> safe_identifier("__editable__.myns.pkg-78.9.3_local") '__editable___myns_pkg_78_9_3_local' z \W|^(?=\d)�_)�re�sub�isidentifier)r �safe� r �M/opt/saltstack/salt/lib/python3.10/site-packages/setuptools/_normalization.py�safe_identifier s r � componentc C s t �d| �S )z�Escape a component used as a project name according to Core Metadata. >>> safe_name("hello world") 'hello-world' >>> safe_name("hello?world") 'hello-world' >>> safe_name("hello_world") 'hello_world' �-)�_UNSAFE_NAME_CHARSr )r r r r � safe_name s r �versionc C sR | � dd�}z ttj�|��W S tjjy( t�d|�}ttj�|�� Y S w )a� Convert an arbitrary string into a valid version string. Can still raise an ``InvalidVersion`` exception. To avoid exceptions use ``best_effort_version``. >>> safe_version("1988 12 25") '1988.12.25' >>> safe_version("v0.2.1") '0.2.1' >>> safe_version("v0.2?beta") '0.2b0' >>> safe_version("v0.2 beta") '0.2b0' >>> safe_version("ubuntu lts") Traceback (most recent call last): ... packaging.version.InvalidVersion: Invalid version: 'ubuntu.lts' � �.r )�replace�str� packagingr �Version�InvalidVersionr r )r �v�attemptr r r �safe_version, s �r c C s� zt | �W S tjjyH | �dd�}t�|�}|r(|d }|t|�d� }nd}| }t� d|�� d�}d|� �� d�}t |� d|� �� Y S w )a� Convert an arbitrary string into a version-like string. Fallback when ``safe_version`` is not safe enough. >>> best_effort_version("v0.2 beta") '0.2b0' >>> best_effort_version("ubuntu lts") '0.dev0+sanitized.ubuntu.lts' >>> best_effort_version("0.23ubuntu1") '0.23.dev0+sanitized.ubuntu1' >>> best_effort_version("0.23-") '0.23.dev0+sanitized' >>> best_effort_version("0.-_") '0.dev0+sanitized' >>> best_effort_version("42.+?1") '42.dev0+sanitized.1' r r r N�0z sanitized.z.dev0+)r r r r r �_PEP440_FALLBACK�search�len�_NON_ALPHANUMERICr �strip)r r �matchr �restZ safe_rest�localr r r �best_effort_versionE s �r% �extrac C s t �d| ��d��� S )z�Normalize extra name according to PEP 685 >>> safe_extra("_FrIeNdLy-._.-bArD") 'friendly-bard' >>> safe_extra("FrIeNdLy-._.-bArD__._-") 'friendly-bard' r )r r r! �lower)r&