ó
    T=Œj¹  ã                  óê   • % S r SSKJr  SSKrSSKrSSKrSSKJrJr  SSK	J
r
  SSKJr  Sr " S S	\5      rSqS
\S'     S             SS jjrSS jrSSSSS.               SS jjrg)zN
A module that implements tooling to enable easy warnings about deprecations.
é    )ÚannotationsN)ÚAnyÚTextIO)Úparse)Ú__version__zDEPRECATION: c                  ó$   • \ rS rSr% SrS\S'   Srg)ÚPipDeprecationWarningé   FÚboolÚinclude_source© N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__r   Ú__annotations__Ú__static_attributes__r   ó    Úc/Users/stevendouglas/BidBrain/.venv/lib/python3.13/site-packages/pip/_internal/utils/deprecation.pyr	   r	      s   ‡ Ø €N�DÖ r   r	   r   Ú_original_showwarningc                ó>  • Ub  [         b  [        XX#XE5        g g [        U[        5      (       ab  [        R                  " S5      n[        U [        5      (       a%  U R                  (       a  UR                  SXU5        g UR                  U 5        g [        XX#XE5        g )Nzpip._internal.deprecationsz
%s (%s:%s))r   Ú
issubclassr	   ÚloggingÚ	getLoggerÚ
isinstancer   Úwarning)ÚmessageÚcategoryÚfilenameÚlinenoÚfileÚlineÚloggers          r   Ú_showwarningr$      s€   € ð ÑÜ Ñ,Ü! '°XÀtÕRð -ä	�HÔ3×	4Ñ	4ô ×"Ò"Ð#?Ó@ˆÜ�gÔ4×5Ñ5¸'×:P×:PØ�N‰N˜<¨¸FÕCà�N‰N˜7Õ#ä˜g°À4ÕNr   c                 ó  • [         R                  R                  SS 5      (       a  [        R                  " S[
        5        O[        R                  " S[
        SS9  [        c   [        R                  q[        [        l        g g )NÚ_PIP_TEST_ENVÚerrorÚdefaultT)Úappend)	ÚosÚenvironÚgetÚwarningsÚsimplefilterr	   r   Úshowwarningr$   r   r   r   Úinstall_warning_loggerr0   2   s^   € ô 
‡z�z‡~�~�o t×,Ñ,Ü×Ò˜gÔ'<Õ=ä×Ò˜iÔ)>ÀtÒLô Ñ$Ü (× 4Ñ 4ÐÜ+ŒÕð %r   é   F)Úfeature_flagÚissueÚ
stacklevelr   c                óB  • USL=(       a    [        [        5      [        U5      :¬  nU [         S34UU(       d  SOS4US4UU(       d  SOS4US4/nSR                  S	 U 5       5      n	U(       a  [	        U	5      e[	        U	5      n
Xjl        [        R                  " X¥S
9  g)aÖ  Helper to deprecate existing functionality.

reason:
    Textual reason shown to the user about why this functionality has
    been deprecated. Should be a complete sentence.
replacement:
    Textual suggestion shown to the user about what alternative
    functionality they can use.
gone_in:
    The version of pip does this functionality should get removed in.
    Raises an error if pip's current version is greater than or equal to
    this.
feature_flag:
    Command-line flag of the form --use-feature={feature_flag} for testing
    upcoming functionality.
issue:
    Issue number on the tracker that would serve as a useful place for
    users to find related discussion and provide feedback.
stacklevel:
    How many frames up the call stack to attribute the warning to.
    Defaults to 2 (the caller of deprecated()).
include_source:
    If True, include the source filename and line number in the warning
    output. Useful when the warning originates from external code.
Nz{}z*pip {} will enforce this behaviour change.z*Since pip {}, this is no longer supported.zA possible replacement is {}.zEYou can use the flag --use-feature={} to test the upcoming behaviour.z@Discussion can be found at https://github.com/pypa/pip/issues/{}Ú c              3  ó\   #   • U  H"  u  pUc  M
  Uc  M  UR                  U5      v •  M$     g 7f)N)Úformat)Ú.0ÚvalueÚ
format_strs      r   Ú	<genexpr>Údeprecated.<locals>.<genexpr>„   s5   é € ð â!.ÑˆEØó 	!à&+ó 	!ˆ
×Ñ˜%× Ð Ú!.ùs   ‚	,�,”,)r4   )r   Úcurrent_versionÚDEPRECATION_MSG_PREFIXÚjoinr	   r   r-   Úwarn)ÚreasonÚreplacementÚgone_inr2   r3   r4   r   Úis_goneÚmessage_partsr   r   s              r   Ú
deprecatedrG   A   sÌ   € ðJ ˜TÐ!×N¤e¬OÓ&<ÄÀgÃÑ&N€Gð 
Ô*Ð+¨4Ð0Ð1àö ñ =àAð	
ð Ø+ð	
ð
 ö ñ Xàð	
ð ØNð	
ð-€Mð8 �h‰hñ á!.óó €Gö Ü# GÓ,Ð,ä# GÓ,€GØ+ÔÜ‡M‚M�'Ó1r   )NN)r   zWarning | strr   ztype[Warning]r   Ústrr    Úintr!   zTextIO | Noner"   ú
str | NoneÚreturnÚNone)rK   rL   )rB   rH   rC   rJ   rD   rJ   r2   rJ   r3   z
int | Noner4   rI   r   r   rK   rL   )Ú__doc__Ú
__future__r   r   r*   r-   Útypingr   r   Úpip._vendor.packaging.versionr   Úpipr   r>   r?   ÚWarningr	   r   r   r$   r0   rG   r   r   r   Ú<module>rS      s  ðòõ #ã Û 	Û ß å /å .à(Ð ô!˜Gô !ð "Ð �sÓ !ð ØðOØðOàðOð ðOð ð	Oð
 ðOð ðOð 
õOô.,ð(  $ØØØ ñO2àðO2ð ðO2ð ð	O2ð
 ðO2ð ðO2ð ðO2ð ðO2ð 
öO2r   