File: //usr/share/python3/debpython/__pycache__/version.cpython-312.pyc
�
    ��b�7  �                   ��  � d dl Z d dlZd dlmZ d dlmZ d dlmZ d dlm	Z	 dZ
 ej                  e
�      Z ej                  dej                  �      Z e j                  e�      Z ej$                  d�      Z ej$                  d	�      ZeresS e�       Zej-                  d
�       esej%                  dd�      d
d Zes"ej%                  dd�      j/                  dd�      Z	  ed� ej3                  d�      D �       �      Z	  ed� ej3                  d�      D �       �      Z G d� d�      Zdd�Zd� Z d� Z!d� Z"d� Z#d� Z$d d�Z%y# e$ r ej9                  d�       Y �Yw xY w# e$ r ej9                  d�       Y �Vw xY w)!�    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              #   �2   K  � | ]  }t        |�      �� � y �w�N��int��.0�is     �'/usr/share/python3/debpython/version.py�	<genexpr>r   5   s   � �� �8�$7�q�C��F�$7��   ��.zcannot read debian_defaultsc              #   �z   K  � | ]3  }t        d � |j                  �       j                  d�      D �       �      �� �5 y�w)c              3   �2   K  � | ]  }t        |�      �� � y �wr   r   )r   �js     r   r   z<genexpr>.<genexpr>9   s   � �� �A�,@�q�C��F�,@�r   r   N)�tuple�strip�splitr   s     r   r   r   9   s2   � �� � 6�4�!� �A�A�G�G�I�O�O�C�,@�A�A�4�s   �9;�,c                   �h   � e Zd Z	 	 dd�Zd� Zd� Zd� Zd� Zd� Zd� Z	d	� Z
d
� Zd� Zd� Z
d
� Zd� Zdd�Zy)�VersionNc           	      �  � t        |t        t        f�      rdj                  d� |D �       �      }t        |t        �      rdD ]  }t        | |t
        ||�      �       � y t        �       }|d= |d= |rMt        j                  |�      }	|	r|	j                  �       j                  �       ng D ]  \  }}|��	||   ��|||<