� ���g� ���dZddlZddlZddlmZddlmZddlmZmZej d��Z eeGd�d������Z d �Z d �Z dS) zVersion utils.�N)� dataclass)�total_ordering)�Optional�Unionz0^(?P<major>\d+)\.(?P<minor>\d+)\.(?P<patch>\d+)$c��eZdZUdZeed<dZeeed<dZee ee fed<dZ ee ee fed<dZ ee ee fed<d�Z d �Zed ���Zd �Zd �Zd �Zd�Zed���Zdefd�ZdS)�Versiona[Dataset version `MAJOR.MINOR.PATCH`. Args: version_str (`str`): The dataset version. description (`str`): A description of what is new in this version. major (`str`): minor (`str`): patch (`str`): Example: ```py >>> VERSION = datasets.Version("1.0.0") ``` � version_strN� description�major�minor�patchc�T�t|j��\|_|_|_dS�N)�_str_to_version_tupler r r r ��selfs �f/home/asafur/pinokio/api/open-webui.git/app/env/lib/python3.11/site-packages/datasets/utils/version.py� __post_init__zVersion.__post_init__7s#��-B�4�CS�-T�-T�*�� �D�J�� � � �c�X�|jd�d|jd�d|jd��S)Nr�.��)�tuplers r�__repr__zVersion.__repr__:s0���*�Q�-�A�A�$�*�Q�-�A�A�$�*�Q�-�A�A�Arc�*�|j|j|jfSr)r r r rs rrz Version.tuple=s���z�4�:�t�z�1�1rc��t|t��rt|��St|t��r|St|�dt |���d����)Nz (type z ) cannot be compared to version.)� isinstance�strr� TypeError�type�r�others r�_validate_operandzVersion._validate_operandAs\�� �e�S� !� !� ��5�>�>� !� ��w� '� '� ��L��5�V�V��e���V�V�V�W�W�Wrc�~� |�|��}|j|jkS#ttf$rYdSwxYw)NF)r$rr � ValueErrorr"s r�__eq__zVersion.__eq__HsT�� -��*�*�5�1�1�E��:���,� ,���:�&� � � ��5�5� ���s �'�<�<c�L�|�|��}|j|jkSr)r$rr"s r�__lt__zVersion.__lt__Ps$���&�&�u�-�-���z�E�K�'�'rc�D�tt|j����Sr)�hash�_version_tuple_to_strrrs r�__hash__zVersion.__hash__Ts���)�$�*�5�5�6�6�6rc���d�tj|��D���|di�fd�|���D����S)Nc��h|] }|j�� S�)�name)�.0�fs r� <setcomp>z$Version.from_dict.<locals>.<setcomp>Ys��?�?�?�!�q�v�?�?�?rc�$��i|] \}}|�v� ||�� Sr0r0)r2�k�v� field_namess �r� <dictcomp>z%Version.from_dict.<locals>.<dictcomp>Zs)���G�G�G�t�q�!�a�;�6F�6F�a��6F�6F�6Frr0)� dataclasses�fields�items)�cls�dicr8s @r� from_dictzVersion.from_dictWsT���?�?�{�'9�#�'>�'>�?�?�?� ��s�H�H�G�G�G�G�s�y�y�{�{�G�G�G�H�H�Hr�returnc��|jSr)r rs r�_to_yaml_stringzVersion._to_yaml_string\s ����r)�__name__� __module__� __qualname__�__doc__r�__annotations__r rr r�intr r rr�propertyrr$r'r)r-� classmethodr?rBr0rrrrsP���������$����!%�K��#��%�%�%�'+�E�8�E�#�s�(�O� $�+�+�+�'+�E�8�E�#�s�(�O� $�+�+�+�'+�E�8�E�#�s�(�O� $�+�+�+�U�U�U�B�B�B��2�2��X�2�X�X�X�-�-�-�(�(�(�7�7�7��I�I��[�I� �� � � � � � rrc� �t�|��}|std|�d����td�|�d��|�d��|�d��fD����S)zFReturn the tuple (major, minor, patch) version extracted from the str.zInvalid version 'z4'. Format should be x.y.z with {x,y,z} being digits.c3�4K�|]}t|��V��dSr)rH�r2r7s r� <genexpr>z(_str_to_version_tuple.<locals>.<genexpr>es(����^�^�A��Q���^�^�^�^�^�^rr r r )� _VERSION_REG�matchr&r�group)r �ress rrr`s��� � � �[� )� )�C� �r��p�[�p�p�p�q�q�q� �^�^�#�)�)�G�"4�"4�c�i�i��6H�6H�#�)�)�T[�J\�J\�!]�^�^�^� ^� ^�^rc�@�d�d�|D����S)zDReturn the str version from the version tuple (major, minor, patch).rc3�4K�|]}t|��V��dSr)rrMs rrNz(_version_tuple_to_str.<locals>.<genexpr>js(����2�2�q�C��F�F�2�2�2�2�2�2r)�join)� version_tuples rr,r,hs#�� �8�8�2�2�M�2�2�2� 2� 2�2r)rFr:�rer� functoolsr�typingrr�compilerOrrr,r0rr�<module>r[s��� ������ � � � �!�!�!�!�!�!�$�$�$�$�$�$�"�"�"�"�"�"�"�"��r�z�U�V�V� �� �? �? �? �? �? �? �? � ����? �D_�_�_�3�3�3�3�3r
Memory