� <��g����dZddlmZddlZddlmZd�ZdeiZd!d�Z d"d �Z e d e d �� dd l m Z e d e d ��n #e $rYnwxYw dd lmZd#d�Ze ded��n#e $rddlmZe dd�d��YnwxYw ddlmZe ded��e ded��n #e $rYnwxYw ddlZe dejdd���e dejdd���n #e $rYnwxYwGd�de��Z ddlZejd��e deg��n#e eef$rYnwxYw ddlZe dejjd��n #e $rYnwxYw ddlZd#d�Z e de d��n #e $rYnwxYwd �Z!dS)$z9Helper functions for a standard streaming compression API�)�ZipFileN)�AbstractBufferedFilec ��|S�N�)�file�mode�kwargss �b/home/asafur/pinokio/api/open-webui.git/app/env/lib/python3.11/site-packages/fsspec/compression.py� noop_filer s�� �K�Fc��t|t��r|g}|tvr|std|�����|D]-}|tjjvr|std|�d|�d�����.|t|<|D]}|tjj|<�dS)aARegister an "inferable" file compression type. Registers transparent file compression type for use with fsspec.open. Compression can be specified by name in open, or "infer"-ed for any files ending with the given extensions. Args: name: (str) The compression type name. Eg. "gzip". callback: A callable of form (infile, mode, **kwargs) -> file-like. Accepts an input file-like object, the target mode and kwargs. Returns a wrapped file-like object. extensions: (str, Iterable[str]) A file extension, or list of file extensions for which to infer this compression scheme. Eg. "gz". force: (bool) Force re-registration of compression type or extensions. Raises: ValueError: If name or extensions already registered, and not force. z$Duplicate compression registration: z&Duplicate compression file extension: z (�)N)� isinstance�str�compr� ValueError�fsspec�utils� compressions)�name�callback� extensions�force�exts r �register_compressionrs���(�*�c�"�"�"� �\� � �u�}�}�U�}��F��F�F�G�G�G��V�V�� �&�,�+� +� +�E� +��T�c�T�T�T�T�T�T�U�U� U���E�$�K��.�.��)-�� �!�#�&�&�.�.r �rbc ����d|vr=|pd}t|fddi|�����|d���}|jf�fd� |_|St|���|�����d}�j|fddi|��S)N�rrr �w)r c�@��|��p����Sr)�close)�closer�zs �r �<lambda>zunzip.<locals>.<lambda><s���6�6�8�8�+@�q�w�w�y�y�r r)r�openr"�namelist)�infiler �filenamer �for$s @r �unzipr+7s���� �$����%�v�� �F� /� /�� /�� /� /�� �V�V�H�3�V� '� '��!#��@�@�@�@�@���� �����A����:�:�<�<��?�� �1�6�(� /� /�� /�� /� /�/r �zip)�BZ2File�bz2)�igzipc �*�tjd||d�|��S)N)�fileobjr r)r/� IGzipFile)r(r r s r �isalr3Ps����C�v�D�C�C�F�C�C�Cr �gzip�gz��GzipFilec ��tdd|i|��S)Nr1rr6)�fr s r r%r%Xs��H�$A�$A�Q�$A�&�$A�$A�r )�LZMAFile�lzma�xzT)rc�:��eZdZ�fd�Zdd�Zd d�Zd�Zd�Z�xZS) � SnappyFilec ����ddl}t��jddd|�d��dzdd�|��||_d|vr|j��|_dS|j��|_dS)Nr�snappy�bi�ɚ;)�fs�pathr �sizerr)r@�super�__init__�stripr(�StreamDecompressor�codec�StreamCompressor)�selfr(r r r@� __class__s �r rFzSnappyFile.__init__ms����� � � ������ ��(����C���3�)>�Y� � �RX� � � ��� � �$�;�;�2��2�4�4�D�J�J�J�0��0�2�2�D�J�J�Jr Fc���|j�d��|j�|j�����}|j�|��dS)NrT)�buffer�seekrI� add_chunk�readr(�write)rK�final�outs r � _upload_chunkzSnappyFile._upload_chunkysV�� � ��������j�"�"�4�;�#3�#3�#5�#5�6�6�� � ���#�����tr rc� �td���)NzSnappyFile is not seekable)�NotImplementedError)rK�loc�whences r rOzSnappyFile.seeks��!�">�?�?�?r c��dS)NFr)rKs r �seekablezSnappyFile.seekable�s���ur c�p�|j�||z ��}|j�|��S)z*Get the specified set of bytes from remote)r(rQrI� decompress)rK�start�end�datas r � _fetch_rangezSnappyFile._fetch_range�s1���{����e� �,�,���z�$�$�T�*�*�*r �F)r) �__name__� __module__� __qualname__rFrUrOr[ra� __classcell__)rLs@r r>r>ls�������� 3� 3� 3� 3� 3����� @�@�@�@����+�+�+�+�+�+�+r r>r r@�lz4c��d|vr(tj��}|�|��Stjd���}|�|��S)Nr� )�level)�zstd�ZstdDecompressor� stream_reader�ZstdCompressor� stream_writer)r(r �cctxs r �zstandard_filerq�sT�� �$�;�;��(�*�*�D��%�%�f�-�-� -��&�R�0�0�0�D��%�%�f�-�-� -r rk�zstc�*�tt��S)z.Return a list of the implemented compressions.)�listrrr r �available_compressionsru�s�� ��;�;�r rb)rN)r)"�__doc__�zipfiler� fsspec.utilsr� fsspec.specrr rrr+r.r-� ImportErrorr3r/r4r7r;r:�lzmaffir>r@�compress� NameError�AttributeError� lz4.framerg�framer&� zstandardrkrqrurr r �<module>r�s���?�?�����������,�,�,�,�,�,���� �y���".�".�".�".�J 0� 0� 0� 0���U�E�5�)�)�)�0������������/�/�/�/��� � � ��D� ���� �������D�D�D�D�����t�,�,�,�,���������������A�A�4���������� �����������6�2�2�2����x��.�.�.�.��� � � ��D� ���� ��N�N�N�����!1�6��F�F�F�F����w�/��T�B�B�B�B�B��� � � ��D� ����+�+�+�+�+�%�+�+�+�>  ��M�M�M��F�O�C�������:�r�2�2�2�2���Y��/� � � ��D� ���� ��������� ���6�6�6�6��� � � ��D� ����  �����.�.�.�.������7�7�7�7��� � � ��D� ��������s}�A�A � A �A(�(B�B� B)�)B1�0B1�5,C"�"C*�)C*�<!D�D)�(D)�-E � E�E�E+�+E3�2E3
Memory