+
    …WÝj}  ã                  óÊ   € R t ^ RIHt ^ RIt^ RIt^ RIt^ RIt^ RIt^ RIt^ RI	H
t
 ^ RIHtHtHtHt R R ltR R ltR	 R
 ltR R ltR R ltR R ltR R ltR R ltR# )aM  Adopt a newly selected dependency generation inside a running process.

A plugin that installs a requirement at runtime wants it importable without a restart. That
is safe only when nothing this process already loaded would change underneath it; otherwise
the new generation waits for the next process, which boots straight into it.
)ÚannotationsN)ÚPath)Úinstall_state_dirÚselected_venvÚsite_packagesÚvenv_bin_dirc               ó    € V ^8„  d   QhRRRR/# )é   Úproject_rootr   ÚreturnzPath | None© )Úformats   "ÚIC:\Users\johnn\AppData\Local\hermes\hermes-agent\pm\environments_adopt.pyÚ__annotate__r      s   € ÷ ñ  dð ¨{ñ ó    c                óŒ  € \         P                   Uu0 uF%  q'       g   K  \        V4      P                  4       kK'  	  pp \	        V 4      pT.\        \        T 4      R,          P                  R4      4      O F%  p\        T4      P                  4       T9   g   K#  Tu # 	  R# u upi   \
        \        \        3 d     R# i ; i)a  This install's generation, selected or not, whose site-packages this process imports from.

A generation that is no longer selected still counts: an update landed under this process,
and a request from it is recorded and built but only the next process can load the result.
NÚenvironmentsz*/venv)ÚsysÚpathr   Úresolver   ÚOSErrorÚRuntimeErrorÚ
ValueErrorÚsortedr   Úglobr   )r
   ÚentryÚentriesÚselectedÚenvironments   &    r   Úrunning_environmentr      s°   € ô 36·(²(ÓD±(¨»eÔ$Œt�E‹{×"Ñ"Ö$±(€GÐDðÜ  Ó.ˆð !Ðm¤6Ô+<¸\Ó+JÈ^Õ+[×*aÑ*aÐbjÓ*kÓ#lÓmˆÜ˜Ó%×-Ñ-Ó/°7Ö:ØÒñ nñ ùò Eøô ”\¤:Ð.ô Úðús   “	B$¡B$ÁB) Â)CÃCc               ó    € V ^8„  d   QhRRRR/# )r	   r   r   r   z*dict[str, importlib.metadata.Distribution]r   )r   s   "r   r   r   &   s   € ÷ bñ b ð bÐ)Sñ br   c           	     óþ   € \         P                  P                  \        \	        V 4      4      .R 7       Uu/ uF;  p\
        P                  ! RRVP                  R,          4      P                  4       VbK=  	  up# u upi ))r   z[-_.]+Ú-ÚName)Ú	importlibÚmetadataÚdistributionsÚstrr   ÚreÚsubÚlower)r   Údists   & r   Ú_distributionsr,   &   sq   € ä!×*Ñ*×8Ñ8¼sÄ=ÐQ\ÓC]Ó?^Ð>_Ð8Ô`óbÙ`�ô �FŠF�9˜c 4§=¡=°Õ#8Ó9×?Ñ?ÓAÀ4ÒGÙ`ñbð bùò bs   ¶AA:c               ó$   € V ^8„  d   QhRRRRRR/# )r	   Úpreviousr   r   r   z	list[str]r   )r   s   "r   r   r   +   s!   € ÷ ñ  4ð °4ð ¸Iñ r   c                óÖ  a	€ \        V4      p\        4       p\        V 4      P                  4        F^  w  po	WB9  g$   W$,          P                  S	P                  8w  g   K/  TP	                  V	3R lS	P
                  ;'       g    R 4       4       K`  	  \        \        V 4      4      \        \        V 4      P                  4       4      3p. p\        \        P                  P                  4       4       Ft  w  rG\        VRR4      p\        V\        4      '       g   K*  VP                  V4      '       g   KC  \        V4      P                  4       V9   g   Kc  VP!                  V4       Kv  	  V# )zZModules loaded from a distribution whose version changed or disappeared, read from RECORD.c              3  ó†   <"  € T F6  p\        \        SP                  V4      4      4      P                  4       x € K8  	  R # 5i©N)r   r'   Úlocate_filer   )Ú.0Úfiler+   s   & €r   Ú	<genexpr>Ú'_loaded_from_changed.<locals>.<genexpr>1   s4   øé € ÐdÑScÈ4œ4¤ D×$4Ñ$4°TÓ$:Ó ;Ó<×DÑD×FÐFÓScùs   ƒ>AÚ__file__Nr   )r,   ÚsetÚitemsÚversionÚupdateÚfilesr'   r   r   Úlistr   ÚmodulesÚgetattrÚ
isinstanceÚ
startswithr   Úappend)
r.   r   ÚnewÚchangedÚnameÚrootsÚloadedÚmoduler4   r+   s
   &&       @r   Ú_loaded_from_changedrI   +   s
  ø€ ä
˜Ó
"€CÜ‹e€GÜ$ XÓ.×4Ñ4Ö6‰
ˆˆdØŒ?˜c�i×/Ñ/°4·<±<Ö?Ø�N‰NÔdÐSW×S]ÑS]×ScÐScÐacÐScÓdÖdñ 7ô ”˜xÓ(Ó)¬3¬}¸XÓ/F×/NÑ/NÓ/PÓ+QÐR€EØ€FÜœSŸ[™[×.Ñ.Ó0Ö1‰ˆÜ�v˜z¨4Ó0ˆÜ�dœC× Ô  T§_¡_°U×%;Ô%;ÄÀTÃ
×@RÑ@RÓ@TÐX_Ö@_Ø�M‰M˜$Öñ 2ð €Mr   c               ó(   € V ^8„  d   QhRRRRRRRR/# )r	   Úvaluer'   Úoldr   rC   r   r   )r   s   "r   r   r   ;   s.   € ÷ @ñ @�Cð @˜dð @¨ð @°#ñ @r   c                ó”   aa€ \         P                  P                  VV3R  lV P                  \         P                  4       4       4      # )c              3  ó¦   <"  € T FF  pV'       d8   \        V4      P                  4       SP                  4       8X  d   \        S4      MTx € KH  	  R # 5ir1   )r   r   r'   )r3   ÚpartrC   rL   s   & €€r   r5   Ú_replace.<locals>.<genexpr><   s?   øé € ð @Ù'>˜t÷ (,´°T³
×0BÑ0BÓ0DÈÏÉËÔ0Uœ3˜sœ8Ð[_Ô_Û'>ùs   ƒA�AA)ÚosÚpathsepÚjoinÚsplit)rK   rL   rC   s   &ffr   Ú_replacerU   ;   s6   ù€ Ü�:‰:�?‰?õ @Ø',§{¡{´2·:±:Ô'>ó@ó @ð @r   c               ó(   € V ^8„  d   QhRRRRRRRR/# )r	   r.   r   r   Úrunningr   Úboolr   )r   s   "r   r   r   @   s(   € ÷ ñ �Dð  Dð °4ð ¸Dñ r   c                ó|  € ^ RI Hp VP                  4       V P                  4       8w  d   R# VP                  4       V P                  4       8X  d   R# \        W4      '       d   R# V! V4       \	        V 4      \	        V4      rT\
        P                   Uu. uFC  qf'       d8   \        V4      P                  4       VP                  4       8X  d   \        V4      MTNKE  	  up\
        P                  R&   VP                  R4       Uu0 uF  qwP                  kK  	  pp\        VP                  R4      4       FA  pVP                  V9  g   K  \        P                  ! \        V4      VP                  R4       KC  	  \        P                  P!                  R4      '       d3   \#        \        P                  R,          WE4      \        P                  R&   \#        \        P                  P!                  RR	4      \%        V 4      \%        V4      4      \        P                  R&   \&        P(                  ! 4        R# u upi u upi )
z^Swap this process from ``previous`` onto ``selected``; False means only a restart can load it.)Úlease_generationFT:NNNz*.pthNÚ
PYTHONPATHÚPATHÚ )Úhermes_cli.runtime_staterZ   r   rI   r   r   r   r   r'   r   rE   r   ÚsiteÚ
addpackagerQ   ÚenvironÚgetrU   r   r$   Úinvalidate_caches)	r.   r   rW   rZ   rL   rC   r   ÚpthÚknowns	   &&&      r   Úadoptrf   @   s‰  € å9à‡�Ó˜H×,Ñ,Ó.Ô.ÙØ×ÑÓ˜X×-Ñ-Ó/Ô/ÙÜ˜H×/Ò/ÙÙ�XÔÜ˜XÓ&¬°hÓ(?ˆÜhk×hpÒhpÓqÑhpÐ_džu¬¨e«×)<Ñ)<Ó)>À#Ç+Á+Ã-Ô)O”3�s”8ÐUZÒZÑhpÑq„C‡H�HˆQ�KØ!$§¡¨'Ô!2Ó3Ñ!2˜#�XŒXÑ!2€EÐ3Ü�c—h‘h˜wÓ'Ö(ˆØ�8‰8˜5Ö Ü�OŠOœC ›H c§h¡h°Ö5ñ )ô 
‡z�z‡~�~�l×#Ò#Ü#+¬B¯J©J°|Õ,DÀcÓ#OŒ�
‰
�<Ñ Ü!¤"§*¡*§.¡.°¸Ó"<¼lÈ8Ó>TÔVbÐckÓVlÓm„B‡J�JˆvÑÜ×ÒÔ!Ùùò rùÚ3s   ÂA	H4ÄH9c               ó    € V ^8„  d   QhRRRR/# )r	   r
   r   r   ztuple[Path, Path] | Noner   )r   s   "r   r   r   X   s   € ÷ ñ ¨ð Ð1Iñ r   c                óz   € \        V 4      pVf   R #  V\        V 4      3#   \        \        \        3 d     R # i ; ir1   )r   r   r   r   r   )r
   rW   s   & r   Ú_running_and_selectedri   X   sB   € Ü! ,Ó/€GØ‚ÙðØœ lÓ3Ð3Ð3øÜ”\¤:Ð.ô Úðús   “   :¹:c               ó    € V ^8„  d   QhRRRR/# )r	   r
   r   r   z
str | Noner   )r   s   "r   r   r   b   s   € ÷ -ñ - ð -¨*ñ -r   c                óî   € \        V 4      pVe2   V^ ,          P                  4       V^,          P                  4       8X  d   R# Vw  r#RVP                  P                   RVP                  P                   2# )ac  Why this process must restart to load the selected generation, or None when it runs it.

Also None when the process does not run from one of this install's generations (a developer
venv, Nix): it never loads a PM selection, so a restart would not change what it imports.
The reason names the selected generation, so it changes with every new publication.
Nzdependency generation z) was published after this process loaded )ri   r   ÚparentrE   )r
   ÚpairrW   r   s   &   r   Úrestart_neededrn   b   sl   € ô ! Ó.€DØ‚|�t˜A•w—‘Ó(¨D°­G¯O©OÓ,=Ô=ÙØÑ€GØ$ X§_¡_×%9Ñ%9Ð$:ð ;Ø—n‘n×)Ñ)Ð*ð,ð -r   c               ó    € V ^8„  d   QhRRRR/# )r	   r
   r   r   rX   r   )r   s   "r   r   r   q   s   € ÷ <ñ < ð <¨$ñ <r   c                ót   € \        V 4      pVRJ ;'       g#    \        V^ ,          V^,          V^ ,          4      # )z¨Move this process onto the selected generation. True when it already runs it, adopted it,
or runs from no generation of this install at all (there is nothing to adopt).N)ri   rf   )r
   rm   s   & r   Úadopt_selectedrq   q   s5   € ô ! Ó.€DØ�4ˆ<×;Ð;œ5  a¥¨$¨q­'°4¸µ7Ó;Ð;r   )Ú__doc__Ú
__future__r   r$   Úimportlib.metadatarQ   r(   r_   r   Úpathlibr   Úpm.environmentsr   r   r   r   r   r,   rI   rU   rf   ri   rn   rq   r   r   r   Ú<module>rw      sT   ðñõ #ã Û Û 	Û 	Û Û 
Ý ç YÓ Yõõ"bõ
õ @õ
õ0õ-÷<r   