Ë
    Kêj˜  ã                  ó´   — d dl mZ d dlmZ d dlmZ d dlmZ d dlm	Z	 d dl
mZ ddlmZmZmZ  ee«      Z G d	„ d
eeeef   «      Z G d„ deeeef   «      Zy)é    )Úannotations)Údefaultdict)ÚMapping)Ú	getLogger)ÚAny)ÚBaseReporteré   )Ú	CandidateÚ
ConstraintÚRequirementc                  ó   — e Zd Zddd„Zdd„Zy)ÚPipReporterNc                óX   — t        t        «      | _        |xs i | _        ddddœ| _        y )Nz�pip is looking at multiple versions of {package_name} to determine which version is compatible with other requirements. This could take a while.z–pip is still looking at multiple versions of {package_name} to determine which version is compatible with other requirements. This could take a while.zëThis is taking longer than usual. You might need to provide the dependency resolver with stricter constraints to reduce runtime. See https://pip.pypa.io/warnings/backtracking for guidance. If you want to abort this run, press Ctrl + C.)é   é   é   )r   ÚintÚreject_count_by_packageÚ_constraintsÚ_messages_at_reject_count)ÚselfÚconstraintss     úq/home/oem/CyberBrain26-unified/.venv/lib/python3.12/site-packages/pip/_internal/resolution/resolvelib/reporter.pyÚ__init__zPipReporter.__init__   s6   € Ü>IÌ#Ó>NˆÔ$Ø'Ò-¨2ˆÔð
9ð
9ð
Kñ*
ˆÕ&ó    c                óÊ  — | j                   |j                  xx   dz  cc<   | j                   |j                     }|| j                  v r?| j                  |   }t        j	                  d|j                  |j                  ¬«      «       d}|j                  D ]Y  }|j                  |j                  }}|dz  }|r ||j                  › d|j                  › d�z  }n|dz  }||j                  «       z  }Œ[ | j                  rQ|j                  }	| j                  j                  |	«      }
|
r(|
j                  r|	› |
j                  «       › �}|d	|› �z  }t        j                  |«       y
)zÀReport a candidate being rejected.

        Logs both the rejection count message (if applicable) and details about
        the requirements and constraints that caused the rejection.
        r	   zINFO: %s)Úpackage_namez0Will try a different candidate, due to conflict:z
    ú z depends on zThe user requested z%
    The user requested (constraint) N)r   Únamer   ÚloggerÚinfoÚformatÚinformationÚrequirementÚparentÚversionÚformat_for_errorr   ÚgetÚ	specifierÚdebug)r   Ú	criterionÚ	candidateÚcountÚmessageÚmsgÚreq_infoÚreqr%   r   Ú
constraintÚconstraint_texts               r   Úrejecting_candidatezPipReporter.rejecting_candidate(   sP  € ð 	×$Ñ$ Y§^¡^Ó4¸Ñ9Ó4à×,Ñ,¨Y¯^©^Ñ<ˆØ�D×2Ñ2Ñ2Ø×4Ñ4°UÑ;ˆGÜ�K‰K˜
 G§N¡NÀ	ÇÁ NÓ$OÔPà@ˆØ!×-Ñ-ò 	*ˆHØ"×.Ñ.°·±�ˆCØ�8‰OˆCÙØ˜&Ÿ+™+˜ a¨¯©Ð'7°|ÐDÑD‘àÐ,Ñ,�Ø�3×'Ñ'Ó)Ñ)‰Cð	*ð ×ÒØ—>‘>ˆDØ×*Ñ*×.Ñ.¨tÓ4ˆJÙ˜j×2Ò2Ø%) F¨:×+FÑ+FÓ+HÐ*IÐ"J�ØÐ?ÀÐ?PÐQÑQ�ä�‰�SÕr   )N)r   zMapping[str, Constraint] | NoneÚreturnÚNone©r+   r   r,   r
   r5   r6   )Ú__name__Ú
__module__Ú__qualname__r   r4   © r   r   r   r      s   „ ô
ô0r   r   c                  óT   — e Zd ZdZd
d„Zdd„Zdd„Zdd„Z	 	 	 	 	 	 dd„Zdd„Z	dd„Z
y	)ÚPipDebuggingReporterz9A reporter that does an info log for every event it sees.c                ó.   — t         j                  d«       y )NzReporter.starting()©r    r!   )r   s    r   ÚstartingzPipDebuggingReporter.startingM   s   € Ü�‰Ð)Õ*r   c                ó0   — t         j                  d|«       y )NzReporter.starting_round(%r)r?   )r   Úindexs     r   Ústarting_roundz#PipDebuggingReporter.starting_roundP   s   € Ü�‰Ð1°5Õ9r   c                ó^   — t         j                  d|«       t         j                  d||«       y )Nz Reporter.ending_round(%r, state)zReporter.ending_round(%r, %r))r    r!   r*   )r   rB   Ústates      r   Úending_roundz!PipDebuggingReporter.ending_roundS   s"   € Ü�‰Ð6¸Ô>Ü�‰Ð4°e¸UÕCr   c                ó0   — t         j                  d|«       y )NzReporter.ending(%r)r?   )r   rE   s     r   ÚendingzPipDebuggingReporter.endingW   s   € Ü�‰Ð)¨5Õ1r   c                ó2   — t         j                  d||«       y )Nz#Reporter.adding_requirement(%r, %r)r?   )r   r$   r%   s      r   Úadding_requirementz'PipDebuggingReporter.adding_requirementZ   s   € ô 	�‰Ð9¸;ÈÕOr   c                ó2   — t         j                  d||«       y )Nz$Reporter.rejecting_candidate(%r, %r)r?   )r   r+   r,   s      r   r4   z(PipDebuggingReporter.rejecting_candidate_   s   € Ü�‰Ð:¸IÀyÕQr   c                ó0   — t         j                  d|«       y )NzReporter.pinning(%r)r?   )r   r,   s     r   ÚpinningzPipDebuggingReporter.pinningb   s   € Ü�‰Ð*¨IÕ6r   N)r5   r6   )rB   r   r5   r6   )rB   r   rE   r   r5   r6   )rE   r   r5   r6   )r$   r   r%   zCandidate | Noner5   r6   r7   )r,   r
   r5   r6   )r8   r9   r:   Ú__doc__r@   rC   rF   rH   rJ   r4   rM   r;   r   r   r=   r=   J   sF   „ ÙCó+ó:óDó2ðPØ&ðPØ0@ðPà	óPó
Rô7r   r=   N)Ú
__future__r   Úcollectionsr   Úcollections.abcr   Úloggingr   Útypingr   Ú pip._vendor.resolvelib.reportersr   Úbaser
   r   r   r8   r    Ústrr   r=   r;   r   r   ú<module>rW      sX   ðÝ "å #Ý #Ý Ý å 9ç 4Ñ 4á	�8Ó	€ô8�,˜{¨I°sÐ:Ñ;ô 8ôv7˜<¨°YÀÐ(CÑDõ 7r   