+
    WBi                       ^ RI Ht ^ RIt^ RIt^ RIHt ^ RIHt ^ RIH	t	H
t
HtHt ^ RIHtHtHtHt ^ RIHt ^ RIHt ^ R	IHt ]	'       d%   ^ R
IHt ^ RIHt ^ RIHt ^ RIHt ^ RI H!t! ^ RI"H#t# ]PH                  R8  d   ^ RI%t%M^ RI&t%R R lt' ! R R]],          4      t( ! R R4      t) ! R R4      t* ! R R]],          4      t+ ! R R]],          4      t, ! R R]],          4      t-R t.R# )     )annotationsN)suppressdeepcopy)TYPE_CHECKINGAnyGenericcast)format_dependencyis_valid_project_namenormalize_project_namenormalize_requirement)PluginManagerBound)DEFAULT_CONFIG_FILE)locate_file)RequirementSpecifierSet)MetadataHookInterfaceContext)VersionSchemeInterface)VersionSourceInterfacec                    V ^8  d   QhRRRR/# )   pathstrreturndict[str, Any] )formats   "</usr/lib/python3.14/site-packages/hatchling/metadata/core.py__annotate__r#   "   s     ' 'C 'N '    c                    \        V R R7      ;_uu_ 4       p\        P                  ! VP                  4       4      uuRRR4       #   + '       g   i     R# ; i)utf-8encodingN)opentomllibloadsread)r   fs   & r"   	load_tomlr.   "   s2    	dW	%	%}}QVVX& 
&	%	%	%s   $AA	c                     ] tR t^'tRR R lltR R lt]R R l4       t]R R	 l4       t]R
 R l4       t	]R R l4       t
]R R l4       t]R R l4       t]R R l4       t]R R l4       t]R R l4       tRR R lltR R ltRtR# )ProjectMetadataNc               (    V ^8  d   QhRRRRRRRR/# )	r   rootr   plugin_managerzPluginManagerBound | Noneconfigzdict[str, Any] | Noner   Noner    )r!   s   "r"   r#   ProjectMetadata.__annotate__(   s8     F FF 2F &	F
 
Fr$   c                	
   Wn         W n        W0n        R V n        R V n        R V n        R V n        R V n        R V n        R V n	        R V n
        R V n        Ve.   Ve(   \        P                  P                  VR4      V n        R # R # R # Nzpyproject.toml)r2   r3   _config_context_build_core_hatch_core_raw_metadata_dynamic_name_version_project_fileosr   join)selfr2   r3   r4   s   &&&&r"   __init__ProjectMetadata.__init__(   s     	,(,,0*.
,09=*.!%
$()- $"2!#d4D!ED #3r$   c                   V ^8  d   QhRR/# r   r   boolr    )r!   s   "r"   r#   r6   A   s     2 2$ 2r$   c                	    V P                   pV P                  f   R# \        P                  P	                  V P                  4      # NF)r4   rB   rC   r   isfilerE   _s   & r"   has_project_file ProjectMetadata.has_project_fileA   s3    KK%ww~~d0011r$   c                   V ^8  d   QhRR/# )r   r   r   r    )r!   s   "r"   r#   r6   H   s       r$   c                	p    V P                   f   ^ RIHp V! V P                  4      V n         V P                   # )Nr   )r:   hatchling.utils.contextr   r2   )rE   r   s   & r"   contextProjectMetadata.contextG   s)    == 7#DII.DM}}r$   c                   V ^8  d   QhRR/# r   r   r   r    )r!   s   "r"   r#   r6   Q   s     ' '> 'r$   c                	   V P                   EfB   RV P                  9  d   Rp\        V4      hV P                  R,          p\        V\        4      '       g   Rp\        V4      h\        V4      p\        P                  P                  V P                  R4      p\        P                  P                  V4      '       d   ^ RIHpHp \        VRR7      ;_uu_ 4       pVP!                  4       pR R R 4       V! X4      pVP#                  R. 4      p	\%        V	4       F.  p
W9   g   K  W9   g   K  W,          W*&   V	P'                  V
4       K0  	  W n         V P                   #   + '       g   i     Ly; i)	Nprojectz1Missing `project` metadata table in configurationz+The `project` configuration must be a tablezPKG-INFO)PROJECT_CORE_METADATA_FIELDS#project_metadata_from_core_metadatar&   r'   dynamic)r>   r4   
ValueError
isinstancedict	TypeErrorr   rC   r   rD   r2   rM   hatchling.metadata.specr[   r\   r)   r,   getlistremove)rE   messagecore_raw_metadatapkg_infor[   r\   r-   pkg_info_contentsbase_metadatadefined_dynamicfields   &          r"   rg   !ProjectMetadata.core_raw_metadataP   s"   ""*+M )) $I 6/66G(( (): ;ww||DIIz:Hww~~h''u(W55()% 6 !DDU V"3"7"7	2"F!/2E<AW3@3G)0'..u5 3
 '8#&&& 65s   EE-	c                   V ^8  d   QhRR/# r   r   	list[str]r    )r!   s   "r"   r#   r6   p   s       r$   c                	L   V P                   f   V P                  P                  R. 4      p\        V\        4      '       g   Rp\        V4      h\        V^4       F,  w  r4\        V\        4      '       d   K  RV R2p\        V4      h	  \	        V4      V n         V P                   # )Nr]   (Field `project.dynamic` must be an arrayzField #z, of field `project.dynamic` must be a string)r?   rg   rc   r_   rd   ra   	enumerater   )rE   r]   rf   irl   s   &    r"   r]   ProjectMetadata.dynamico   s     == ,,00B?Ggt,,D((%gq1!%-- 's*VWG#G,, 2
 !MDM}}r$   c                   V ^8  d   QhRR/# r   r   r   r    )r!   s   "r"   r#   r6      s      c r$   c                	    V P                   fB   V P                  P                  RR4      pV'       g   Rp\        V4      h\	        V4      V n         V P                   # )Nname %Missing required field `project.name`)r@   rg   rc   r^   r   )rE   ry   rf   s   &  r"   ry   ProjectMetadata.name   sO     ::))--fb9DA ))/5DJzzr$   c                   V ^8  d   QhRR/# rw   r    )r!   s   "r"   r#   r6      s     	 	 	r$   c                >   V P                   fg   V P                  4       V n         \        \        4      ;_uu_ 4        V P                  P
                  P                  R4       RRR4       V P                   # V P                   #   + '       g   i     T P                   # ; i)+
https://peps.python.org/pep-0621/#version
Nversion)rA   _get_versionr   r^   corer]   re   rE   s   &r"   r   ProjectMetadata.version   sp    
 ==  --/DM*%%		!!((3 & }}t}} &% }}s   &BB	c                   V ^8  d   QhRR/# rX   r    )r!   s   "r"   r#   r6      s     	 	 	r$   c                	    V P                   fD   \        V P                  R4      pVf   / V n         V P                   # Wn        \	        V4      V n         V P                   # r8   )r9   r   r2   rB   r.   )rE   project_files   & r"   r4   ProjectMetadata.config   sT    <<&tyy2BCL#!
 || &2"(6||r$   c                   V ^8  d   QhRR/# )r   r   BuildMetadatar    )r!   s   "r"   r#   r6      s     	 	} 	r$   c                	    V P                   f[   V P                  P                  R/ 4      p\        V\        4      '       g   Rp\        V4      h\        V P                  V4      V n         V P                   # )Nzbuild-systemz0The `build-system` configuration must be a table)r;   r4   rc   r_   r`   ra   r   r2   )rE   build_metadatarf   s   &  r"   buildProjectMetadata.build   sY    ;;![[__^R@Nnd33L(('		>BDK{{r$   c                   V ^8  d   QhRR/# )r   r   CoreMetadatar    )r!   s   "r"   r#   r6      s        l  r$   c                	t   V P                   Ef   \        V P                  V P                  V P                  P
                  V P                  4      pV P                  pV P                  P
                  P                  pV'       Ed$   \        V P                  4      pRV P                  P                  9   d0   V P                  V4      V n        V P                  V P                  R&   VP                  '       d   VP                  4        F=  pVP                  V P                  4       VP!                  VP#                  4       4       K?  	  \        V P                  4      V,
          pV F?  pWqP                  9   d   VP                  P%                  V4       K0  RV R2p\'        V4      h	  Wn         V P                   # )Nr   zThe field `zG` was set dynamically and therefore must be listed in `project.dynamic`)r<   r   r2   rg   hatchmetadatarU   r]   hookssetr4   r   rA   r   valuesupdateadd_known_classifiersget_known_classifiersre   r^   )	rE   r   rO   metadata_hooksstatic_fieldsmetadata_hook
new_fields	new_fieldrf   s	   &        r"   r   ProjectMetadata.core   sf   ::#DIIt/E/EtzzGZGZ\`\h\hiH A!ZZ0066N~ #D$:$: ;

 1 11$($5$5h$?DM8<D**95###)7)>)>)@%,,T-C-CD 66}7Z7Z7\] *A "%T%;%;!<}!LJ%/	$(8(88$,,33I> #.i[ 9> !? $ #-W"55 &0 "Jzzr$   c                   V ^8  d   QhRR/# )r   r   HatchMetadatar    )r!   s   "r"   r#   r6      s      } r$   c                	   V P                   Efp   V P                  P                  R/ 4      p\        V\        4      '       g   Rp\        V4      hVP                  R/ 4      p\        V\        4      '       g   Rp\        V4      hV P                  eL   \        P                  P                  \        P                  P                  V P                  4      \        4      M#\        V P                  \        4      ;'       g    RpV'       dR   \        P                  P                  V4      '       d-   \        V4      pVP!                  4       pVP#                  V4       \%        V P                  W0P&                  4      V n         V P                   # )Ntoolz(The `tool` configuration must be a tabler   z.The `tool.hatch` configuration must be a tablerz   )r=   r4   rc   r_   r`   ra   rB   rC   r   rD   dirnamer   r   r2   rM   r.   copyr   r   r3   )rE   tool_configrf   hatch_config
hatch_filer4   s   &     r"   r   ProjectMetadata.hatch   s   ;;++//&"5Kk400D((&??7B7LlD11J(( %%1 RWW__T-?-?@BUV ,?@FFB  bggnnZ88":.+002##F+'		<ATATUDK{{r$   c                    V ^8  d   QhRRRR/# )r   core_metadatazCoreMetadata | Noner   r   r    )r!   s   "r"   r#   r6      s     & &*= & &r$   c                	V   Vf   V P                   pVP                  pVfM   V P                  P                  P                  pRV P                  P                  P                   R2pRVn        MRp^ RIHpHp  \        V! V4      4      pV#   T d    RT RT R2p\        T4      R hi ; i)	Nzsource ``Tzfield `project.version`)InvalidVersionVersionzInvalid version `z` from z', see https://peps.python.org/pep-0440/)r   r   r   cachedsource_name_version_setpackaging.versionr   r   r   r^   )rE   r   r   sourcer   r   normalized_versionrf   s   &&      r"   r   ProjectMetadata._get_version   s      IIM''?jj((//G

 2 2 > >?qAF)-M&.F=	&!$WW%5!6
 &%	  	0)''&AhiGW%4/	0s   8B B(c                   V ^8  d   QhRR/# r   r   r5   r    )r!   s   "r"   r#   r6     s     $ $ $r$   c                	R    V P                   pV P                  P                  4        R # N)r   r   validate_fieldsrN   s   & r"   r   ProjectMetadata.validate_fields  s    LL		!!#r$   )r;   r9   r:   r<   r>   r?   r=   r@   rB   rA   r3   r2   r   )__name__
__module____qualname____firstlineno__rF   rP   propertyrU   rg   r]   ry   r   r4   r   r   r   r   r   __static_attributes__r    r$   r"   r0   r0   '   s    F22   ' '<  "   	 	 	 	 	 	    D  6&,$ $r$   r0   c                  ~    ] tR tRtRtR R lt]R R l4       t]R R l4       t]R	 R
 l4       t	]R R l4       t
RtR# )r   i  z#
https://peps.python.org/pep-0517/
c               $    V ^8  d   QhRRRRRR/# )r   r2   r   r4   zdict[str, str | list[str]]r   r5   r    )r!   s   "r"   r#   BuildMetadata.__annotate__  s"     4 4S 4*D 4 4r$   c                	V    Wn         W n        R V n        R V n        R V n        R V n        R # r   )r2   r4   	_requires_requires_complex_build_backend_backend_path)rE   r2   r4   s   &&&r"   rF   BuildMetadata.__init__  s+    	+/;?*./3r$   c                   V ^8  d   QhRR/# )r   r   zlist[Requirement]r    )r!   s   "r"   r#   r     s     & &"3 &r$   c                	   V P                   f   ^ RIHpHp V P                  P                  R. 4      p\        V\        4      '       g   Rp\        V4      h. p\        V^4       FD  w  rg\        V\        4      '       g   RV R2p\        V4      h VP                  V! V4      4       KF  	  WPn         V P                   #   T d   pRT RT 2p\        T4      R hR p?ii ; i)NInvalidRequirementr   requiresz.Field `build-system.requires` must be an arrayDependency #z2 of field `build-system.requires` must be a stringz. of field `build-system.requires` is invalid: )r   packaging.requirementsr   r   r4   rc   r_   rd   ra   rs   r   appendr^   )	rE   r   r   r   rf   requires_complexrt   entryes	   &        r"   r   BuildMetadata.requires_complex  s    !!)N{{z26Hh--J((!%h2!%-- ,QC/abG#G,,8$++K,>? 3 &6"%%% * 8 ,QC/]^_]`aG$W-478s   B>>CCCc                   V ^8  d   QhRR/# ro   r    )r!   s   "r"   r#   r   7  s      ) r$   c                	    V P                   f+   V P                   Uu. uF  p\        V4      NK  	  upV n         V P                   # u upi r   )r   r   r   )rE   rs   & r"   r   BuildMetadata.requires6  s>    >>!.2.C.CD.Cc!f.CDDN~~ Es   Ac                   V ^8  d   QhRR/# rw   r    )r!   s   "r"   r#   r   >  s     	# 	#s 	#r$   c                	    V P                   fF   V P                  P                  RR4      p\        V\        4      '       g   Rp\        V4      hWn         V P                   # )Nzbuild-backendrz   z3Field `build-system.build-backend` must be a string)r   r4   rc   r_   r   ra   )rE   build_backendrf   s   &  r"   r   BuildMetadata.build_backend=  sQ    & KKOOOR@MmS11O(("/"""r$   c                   V ^8  d   QhRR/# ro   r    )r!   s   "r"   r#   r   J  s     " "i "r$   c                	8   V P                   f   V P                  P                  R. 4      p\        V\        4      '       g   Rp\        V4      h\        V^4       F,  w  r4\        V\        4      '       d   K  RV R2p\        V4      h	  Wn         V P                   # )Nzbackend-pathz2Field `build-system.backend-path` must be an arrayEntry #z6 of field `build-system.backend-path` must be a string)r   r4   rc   r_   rd   ra   rs   r   )rE   backend_pathrf   rt   r   s   &    r"   r   BuildMetadata.backend_pathI  s    %;;??>2>LlD11N((%lA6!%-- 's*`aG#G,, 7
 ".!!!r$   )r   r   r   r   r4   r2   N)r   r   r   r   __doc__rF   r   r   r   r   r   r   r    r$   r"   r   r     s\    4 & &4   	# 	# " "r$   r   c                     ] tR tRtRtR R lt]R R l4       t]R R l4       t]R	 R
 l4       t	]R R l4       t
]R R l4       t]R R l4       t]R R l4       t]R R l4       t]R R l4       t]R R l4       t]R R l4       t]R R l4       t]R R l4       t]R R  l4       t]R! R" l4       t]R# R$ l4       t]R% R& l4       t]R' R( l4       t]R) R* l4       t]R+ R, l4       t]R- R. l4       t]R/ R0 l4       t]R1 R2 l4       t]R3 R4 l4       t]R5 R6 l4       t]R7 R8 l4       t ]R9 R: l4       t!R; R< lt"R= R> lt#]$R? R@ l4       t%RAt&RB# )Cr   i[  z#
https://peps.python.org/pep-0621/
c          
     ,    V ^8  d   QhRRRRRRRRR	R
/# )r   r2   r   r4   r   hatch_metadataHatchMetadataSettingsrU   r   r   r5   r    )r!   s   "r"   r#   CoreMetadata.__annotate__`  s<     *( *(*( *( .	*(
 *( 
*(r$   c                	   Wn         W n        W0n        W@n        R V n        R V n        R V n        R V n        R V n        R V n	        R V n
        R V n        R V n        R V n        R V n        R V n        R V n        R V n        R V n        R V n        R V n        R V n        \-        4       V n        R V n        R V n        R V n        R V n        R V n        R V n        R V n        R V n        R V n         RV n!        R # rL   )"r2   r4   r   rU   	_raw_namer@   rA   _description_readme_readme_content_type_readme_path_requires_python_python_constraint_license_license_expression_license_files_authors_authors_data_maintainers_maintainers_data	_keywords_classifiersr   _extra_classifiers_urls_scripts_gui_scripts_entry_points_dependencies_complex_dependencies_optional_dependencies_complex_optional_dependenciesr?   r   )rE   r2   r4   r   rU   s   &&&&&r"   rF   CoreMetadata.__init__`  s     	,%)!%
$((,#'04!(,,07;$(/3 04*.:>.2>B+/.2,/E,0
/337?CDH"/3X\+CG#*. #(r$   c                   V ^8  d   QhRR/# rw   r    )r!   s   "r"   r#   r     s      # r$   c                b   V P                   f   RV P                  9   d   Rp\        V4      hV P                  P	                  RR4      pV'       g   Rp\        V4      h\        V\        4      '       g   Rp\        V4      h\        V4      '       g   Rp\        V4      hW n         V P                   # )(
https://peps.python.org/pep-0621/#name
ry   zIStatic metadata field `name` cannot be present in field `project.dynamic`rz   r{   z%Field `project.name` must be a stringzRequired field `project.name` must only contain ASCII letters/digits, underscores, hyphens, and periods, and must begin and end with ASCII letters/digits.)	r   r]   r^   r4   rc   r_   r   ra   r   )rE   rf   raw_names   &  r"   r	  CoreMetadata.raw_name  s    
 >>!%e )){{vr2HA ))h,,A(((22^  !))%N~~r$   c                   V ^8  d   QhRR/# rw   r    )r!   s   "r"   r#   r     s      c r$   c                j    V P                   f   \        V P                  4      V n         V P                   # )r  )r@   r   r	  r   s   &r"   ry   CoreMetadata.name  s(    
 ::/>DJzzr$   c                   V ^8  d   QhRR/# rw   r    )r!   s   "r"   r#   r     s     ( ( (r$   c                   V P                   f   RV P                  9  d2   V P                  '       g   RV P                  9  d   Rp\	        V4      hMZRV P                  9   d   Rp\	        V4      hV P                  R,          p\        V\        4      '       g   Rp\        V4      hW n         \        \        V P                   4      # )r   r   zcField `project.version` can only be resolved dynamically if `version` is in field `project.dynamic`z`Metadata field `version` cannot be both statically defined and listed in field `project.dynamic`z(Field `project.version` must be a string)	rA   r4   r   r]   r^   r_   r   ra   r
   )rE   rf   r   s   &  r"   r   CoreMetadata.version  s     == +(((Ydll-JE  %W--,<  %W--++i0!'3//HG#G,, 'C''r$   c                   V ^8  d   QhRR/# rw   r    )r!   s   "r"   r#   r     s     ! !S !r$   c                N   V P                   f   RV P                  9   d3   V P                  R,          pRV P                  9   d   Rp\        V4      hMRp\	        V\
        4      '       g   Rp\        V4      hRP                  VP                  4       4      V n         V P                   # )z/
https://peps.python.org/pep-0621/#description
descriptionzdMetadata field `description` cannot be both statically defined and listed in field `project.dynamic`rz   z,Field `project.description` must be a string )	r   r4   r]   r^   r_   r   ra   rD   
splitlines)rE   r  rf   s   &  r"   r  CoreMetadata.description  s    
 $+"kk-8 DLL0<  %W-- 1 !k3//H(( #)?)?)A BD   r$   c                   V ^8  d   QhRR/# rw   r    )r!   s   "r"   r#   r     s     c c cr$   c                   V P                   Ef   RV P                  9   d3   V P                  R,          pRV P                  9   d   Rp\        V4      hMRpVf"   RV n         RV n        RV n        V P                   # \        V\        4      '       Ed6   VP                  4       pVP                  R4      '       d   RpMDVP                  R4      '       d   RpM*VP                  R	4      '       d   R
pMRV 2p\        V4      h\        P                  P                  \        P                  P                  V P                  V4      4      p\        P                  P!                  V4      '       g   RV 2p\#        V4      h\%        VRR7      ;_uu_ 4       pVP'                  4       V n         RRR4       W@n        Wn        V P                   # \        V\(        4      '       Ed   VP+                  R4      pVf   Rp\        V4      h\        V\        4      '       g   Rp\        V4      hVR9  d   Rp\        V4      hRV9   d   RV9   d   Rp\        V4      hRV9   d   VR,          p\        V\        4      '       g   Rp\        V4      h\        P                  P                  \        P                  P                  V P                  V4      4      p\        P                  P!                  V4      '       g   RV 2p\#        V4      h\%        WP+                  RR4      R7      ;_uu_ 4       pVP'                  4       p	RRR4       TpMCRV9   d0   VR,          p	\        V	\        4      '       g   Rp\        V4      hRpMRp\        V4      hX	V n         W@n        WPn        V P                   # Rp\        V4      hV P                   #   + '       g   i     EL; i  + '       g   i     L; i)*
https://peps.python.org/pep-0621/#readme
Nreadmez_Metadata field `readme` cannot be both statically defined and listed in field `project.dynamic`rz   text/markdownz.mdz.rst
text/x-rstz.txt
text/plainzLUnable to determine the content-type based on the extension of readme file: zReadme file does not exist: r&   r'   zcontent-typez>Field `content-type` is required in the `project.readme` tablezCField `content-type` in the `project.readme` table must be a stringzvField `content-type` in the `project.readme` table must be one of the following: text/markdown, text/x-rst, text/plainfiletextzCCannot specify both `file` and `text` in the `project.readme` tablez;Field `file` in the `project.readme` table must be a stringcharsetz;Field `text` in the `project.readme` table must be a stringzBMust specify either `file` or `text` in the `project.readme` tablez2Field `project.readme` must be a string or a table>   r  r  r  )r   r4   r]   r^   r   r   r_   r   lowerendswithra   rC   r   normpathrD   r2   rM   OSErrorr)   r,   r`   rc   )
rE   r  rf   normalized_pathcontent_typereadme_pathr-   relative_pathr   contentss
   &         r"   r  CoreMetadata.readme  s[    <<4;;&X.t||+<  %W-- , ~!,;)$&!Z ||Y FC(("(,,."++E22#2L$--f55#/L$--f55#/L lmsltuG#G,, gg..rww||DIIv/NOww~~k22 <VHEG!'**+88A#$668DL 9 -9)$*!n ||m FD))%zz.9'^G$W--!,44cG#G,,'TT@  %W--V#&(8cG$W--V#$*6NM%mS99"_'0077++BGGLLM,RSD77>>$//$@"P%g..dZZ	7-KLLPQ#$668 M #0Kv%%f~H%h44"_'00"$KbG$W--',8)$/!
 || O((||w 988J MLs   N;$O;O	O	c                   V ^8  d   QhRR/# rw   r    )r!   s   "r"   r#   r   S  s     4 4S 4r$   c                j    V P                   f   V P                  p\        \        V P                   4      # r  )r   r  r
   r   rN   s   & r"   readme_content_type CoreMetadata.readme_content_typeR  s,    
 $$,AC2233r$   c                   V ^8  d   QhRR/# rw   r    )r!   s   "r"   r#   r   ]  s     , ,S ,r$   c                j    V P                   f   V P                  p\        \        V P                   4      # r-  )r   r  r
   r   rN   s   & r"   r'  CoreMetadata.readme_path\  s,    
 $AC**++r$   c                   V ^8  d   QhRR/# rw   r    )r!   s   "r"   r#   r   g  s     % % %r$   c                   V P                   f   ^ RIHpHp RV P                  9   d3   V P                  R,          pRV P
                  9   d   Rp\        V4      hMRp\        V\        4      '       g   Rp\        V4      h V! V4      V n
        \        T P                  4      T n         V P                   #   T d   pRT 2p\        T4      RhRp?ii ; i)z3
https://peps.python.org/pep-0621/#requires-python
N)InvalidSpecifierr   zrequires-pythonzhMetadata field `requires-python` cannot be both statically defined and listed in field `project.dynamic`rz   z0Field `project.requires-python` must be a stringz,Field `project.requires-python` is invalid: )r   packaging.specifiersr5  r   r4   r]   r^   r_   r   ra   r   )rE   r5  r   requires_pythonrf   r   s   &     r"   r7  CoreMetadata.requires_pythonf  s    
   (K DKK/"&++.?"@$4<  %W-- 5 #%os33L((4*6*G'
 %((?(?$@D!$$$ $ 4HL )t34s    B3 3C:CCc                   V ^8  d   QhRR/# )r   r   r   r    )r!   s   "r"   r#   r     s     ; ;< ;r$   c                	l    ^ RI Hp V P                  f   V P                  p\	        WP                  4      # )r   r   )r6  r   r   r7  r
   )rE   r   rO   s   &  r"   python_constraintCoreMetadata.python_constraint  s-    5""*$$AL"9"9::r$   c                   V ^8  d   QhRR/# rw   r    )r!   s   "r"   r#   r     s     > > >r$   c                   V P                   Ef"   RV P                  9   d3   V P                  R,          pRV P                  9   d   Rp\        V4      hMRpVf   RV n         RV n        V P                   # \        V\        4      '       d1   ^ RIHp  \        V! V4      4      V n        RT n         T P                   # \        V\        4      '       EdU   RV9   d   RV9   d   R	p\        V4      hRV9   d   VR,          p\        V\        4      '       g   R
p\        V4      h\        P                  P                  \        P                  P                  V P                  V4      4      p\        P                  P!                  V4      '       g   RV 2p\#        V4      h\%        VRR7      ;_uu_ 4       pVP'                  4       pRRR4       MARV9   d.   VR,          p\        V\        4      '       g   Rp\        V4      hMRp\        V4      hXV n         RV n        V P                   # Rp\        V4      hV P                   #   \         d   pRT 2p\        T4      RhRp?ii ; i  + '       g   i     Lg; i)z+
https://peps.python.org/pep-0621/#license
Nlicensez`Metadata field `license` cannot be both statically defined and listed in field `project.dynamic`rz   )canonicalize_license_expressionz(Error parsing field `project.license` - r  r  zDCannot specify both `file` and `text` in the `project.license` tablez<Field `file` in the `project.license` table must be a stringzLicense file does not exist: r&   r'   z<Field `text` in the `project.license` table must be a stringzCMust specify either `file` or `text` in the `project.license` tablez3Field `project.license` must be a string or a table)r   r4   r]   r^   r   r_   r   packaging.licensesr@  r`   ra   rC   r   r#  rD   r2   rM   r$  r)   r,   )	rE   datarf   r@  r   r(  r   r-   r)  s	   &        r"   r?  CoreMetadata.license  s9   
 == DKK'{{9-,<  %W-- - | "+-(X }}W D#&&N8/23RSW3X/YD,
 !#D }}C D$''T>fndG$W--T>$(LM%mS99"`'0077++BGGLLM,RSD77>>$//$A-"Q%g..dW55#$668 65t^#F|H%h44"`'00 5 dG$W-- (+-(
 }} P((}}M " 8 HLG$W-478* 65s$   H= /I!=III!I1	c                   V ^8  d   QhRR/# rw   r    )r!   s   "r"   r#   r     s     3 3C 3r$   c                j    V P                   f   V P                  p\        \        V P                   4      # )#
https://peps.python.org/pep-0639/
)r   r?  r
   r   rN   s   & r"   license_expressionCoreMetadata.license_expression  s,    
 ##+AC1122r$   c                   V ^8  d   QhRR/# ro   r    )r!   s   "r"   r#   r     s     (# (#y (#r$   c                  a  S P                   Ef_   RS P                  9   dk   S P                  R,          pRS P                  9   d   Rp\        V4      h\	        V\
        4      '       d#   VP                  RVP                  R. 4      4      pM. R
Op^ RIHp . p\	        V\        4      '       g   Rp\        V4      h\        V^4       F  w  rV\	        V\        4      '       g   RV R2p\        V4      h\        P                  P                  \        P                  P                  S P                   V4      4      pVP#                  V 3R	 lV! V4       4       4       K  	  \%        V4      S n         S P                   # )rF  zlicense-fileszfMetadata field `license-files` cannot be both statically defined and listed in field `project.dynamic`globspaths)globz.Field `project.license-files` must be an arrayr   z2 of field `project.license-files` must be a stringc              3     <"   T Ff  p\         P                  P                  V4      '       g   K*  \         P                  P                  VSP                  4      P                  R R4      x  Kh  	  R# 5i)\/N)rC   r   rM   relpathr2   replace).0r   rE   s   & r"   	<genexpr>-CoreMetadata.license_files.<locals>.<genexpr>  sN      % 2ww~~d+ HBGGOOD$))4<<T3GG 2s   'A1AA1)zLICEN[CS]E*zCOPYING*zNOTICE*zAUTHORS*)r   r4   r]   r^   r_   r`   rc   rM  rd   ra   rs   r   rC   r   r#  rD   r2   extendsorted)rE   rK  rf   rM  license_filesrt   patternfull_patterns   f       r"   rX  CoreMetadata.license_files  s=   
 &$++-O4"dll2<  %W--eT**!IIguyy"/EFEJ!')MeT**J(('q1
!'3// 's*\]G#G,,!ww//TYY0PQ$$ % $\ 2%  2 #)"7D"""r$   c                   V ^8  d   QhRR/# ro   r    )r!   s   "r"   r#   r     s     8 8 8r$   c           
        V P                   Ef   RV P                  9   d3   V P                  R,          pRV P                  9   d   Rp\        V4      hM. p\	        V\
        4      '       g   Rp\        V4      h^ RIHp \        V4      pR. R. /p\        V^4       EF=  w  rV\	        V\        4      '       g   RV R2p\        V4      hVP                  RR	4      p\	        V\        4      '       g   R
V R2p\        V4      hVP                  RR	4      p\	        V\        4      '       g   RV R2p\        V4      hV'       d3   V'       d+   VR,          P                  \        V! WxR7      4      4       K  V'       d,   VR,          P                  \        V! VR7      4      4       EK  V'       d   VR,          P                  V4       EK/  RV R2p\        V4      h	  Wn         W@n        V P                   # )7
https://peps.python.org/pep-0621/#authors-maintainers
authorsz`Metadata field `authors` cannot be both statically defined and listed in field `project.dynamic`z(Field `project.authors` must be an arrayAddressry   emailzAuthor #z3 of field `project.authors` must be an inline tablerz   zName of author #z, of field `project.authors` must be a stringzEmail of author #display_name	addr_specre  zA of field `project.authors` must specify either `name` or `email`)r   r4   r]   r^   r_   rd   ra   email.headerregistryra  r   rs   r`   rc   r   r   r   )	rE   r_  rf   ra  authors_datart   rB  ry   rb  s	   &        r"   r_  CoreMetadata.authors  s    == DKK'++i0,<  %W-- - gt,,D((4w'G"B4L$Wa0!$-- (+^_G#G,,xx+!$,, 03_`G#G,,"-!%-- 1!4`aG#G,,E )00W$5`1ab )00Wu5M1NO (//5 (+lmG$W--/ 12 $M!-}}r$   c                   V ^8  d   QhRR/# r   r   zdict[str, list[str]]r    )r!   s   "r"   r#   r   B  s     . .2 .r$   c                j    V P                   f   V P                  p\        \        V P                   4      # r^  )r   r_  r
   r`   rN   s   & r"   rh  CoreMetadata.authors_dataA  s,    
 %AD$,,--r$   c                   V ^8  d   QhRR/# ro   r    )r!   s   "r"   r#   r   L  s     7! 7!Y 7!r$   c           
        V P                   Ef   RV P                  9   d3   V P                  R,          pRV P                  9   d   Rp\        V4      hM. p\	        V\
        4      '       g   Rp\        V4      h^ RIHp \        V4      pR. R. /p\        V^4       EF=  w  rV\	        V\        4      '       g   RV R2p\        V4      hVP                  RR	4      p\	        V\        4      '       g   R
V R2p\        V4      hVP                  RR	4      p\	        V\        4      '       g   RV R2p\        V4      hV'       d3   V'       d+   VR,          P                  \        V! WxR7      4      4       K  V'       d,   VR,          P                  \        V! VR7      4      4       EK  V'       d   VR,          P                  V4       EK/  RV R2p\        V4      h	  Wn         W@n        V P                   # )r^  maintainerszdMetadata field `maintainers` cannot be both statically defined and listed in field `project.dynamic`z,Field `project.maintainers` must be an arrayr`  ry   rb  zMaintainer #z7 of field `project.maintainers` must be an inline tablerz   zName of maintainer #z0 of field `project.maintainers` must be a stringzEmail of maintainer #rc  rf  zE of field `project.maintainers` must specify either `name` or `email`)r   r4   r]   r^   r_   rd   ra   rg  ra  r   rs   r`   rc   r   r   r   )	rE   rq  rf   ra  maintainers_datart   rB  ry   rb  s	   &        r"   rq  CoreMetadata.maintainersK  s    $+"kk-8 DLL0<  %W-- 1 !k400H((4";/K6<b'25N$[!4!$-- ,QC/fgG#G,,xx+!$,, 4QC7ghG#G,,"-!%-- 5aS8hiG#G,,E$W-44Sd9d5ef$W-44S59Q5RS$V,33D9 ,QC/tuG$W--/ 52 !,%5"   r$   c                   V ^8  d   QhRR/# rk  r    )r!   s   "r"   r#   r     s     2 2"6 2r$   c                j    V P                   f   V P                  p\        \        V P                   4      # rm  )r   rq  r
   r`   rN   s   & r"   rr  CoreMetadata.maintainers_data  s.    
 !!)  AD$0011r$   c                   V ^8  d   QhRR/# ro   r    )r!   s   "r"   r#   r     s      ) r$   c                   V P                   f   RV P                  9   d3   V P                  R,          pRV P                  9   d   Rp\        V4      hM. p\	        V\
        4      '       g   Rp\        V4      h\        4       p\        V^4       F=  w  rE\	        V\        4      '       g   RV R2p\        V4      hVP                  V4       K?  	  \        V4      V n         V P                   # )z,
https://peps.python.org/pep-0621/#keywords
keywordszaMetadata field `keywords` cannot be both statically defined and listed in field `project.dynamic`z)Field `project.keywords` must be an arrayz	Keyword #z- of field `project.keywords` must be a string)r   r4   r]   r^   r_   rd   ra   r   rs   r   addrW  )rE   ry  rf   unique_keywordsrt   keywords   &     r"   ry  CoreMetadata.keywords  s    
 >>!T[[(;;z2-<  %W-- . h--E((!eO'!4
!'3// )!,YZG#G,,##G, 5 $O4DN~~r$   c                   V ^8  d   QhRR/# ro   r    )r!   s   "r"   r#   r     s     ?! ?!Y ?!r$   c                  a aa S P                   Ef   ^ RIpRS P                  9   d3   S P                  R,          pRS P                  9   d   Rp\	        V4      hM. p\        V\        4      '       g   Rp\        V4      h\        P                  P                  R4      '       * pV'       dv   ^ RIpVP                  S P                  ,          p\        VP                  4      o\        S P                  VP                  ,
          4       F  pVP!                  SV4       K  	  \#        4       p\%        V^4       Fs  w  r\        V\&        4      '       g   RV	 R2p\        V4      hS P)                  V4      '       g    V'       d   VX9  d   RV 2p\	        V4      hVP+                  V4       Ku  	  V'       g'   ^ RIp
V
P/                  R	4      o\        VV3R
 lR7      o\        VV V3R lR7      S n         S P                   # )z/
https://peps.python.org/pep-0621/#classifiers
NclassifierszdMetadata field `classifiers` cannot be both statically defined and listed in field `project.dynamic`z,Field `project.classifiers` must be an array$HATCH_METADATA_CLASSIFIERS_NO_VERIFYzClassifier #z0 of field `project.classifiers` must be a stringz3Unknown classifier in field `project.classifiers`: z
(\D*)(\d*)c                   < SP                  V 4       UUu. uF  w  rY'       d   \        V4      MR 3NK  	  upp# u uppi r   )findallint)valueabsplit_res   &  r"   <lambda>*CoreMetadata.classifiers.<locals>.<lambda>  s4    xO_O_`eOf'gOftqaCFT(BOf'g'gs   !;)keyc                X   < SP                  V 4      '       d   R# SP                  V 4      # )   )$_CoreMetadata__classifier_is_privateindex)crE   sorted_classifierss   &r"   r  r    s+    8T8TUV8W8W"2x]o]u]uvw]x2xr$   )r   bisectr4   r]   r^   r_   rd   ra   rC   environrc   trove_classifiersr  r   r  rW  insortr   rs   r   r  rz  recompile)rE   r  r  rf   verify_classifiersr  known_classifiers
classifierunique_classifiersrt   r  r  r  s   f          @@r"   r  CoreMetadata.classifiers  s   
 $+"kk-8 DLL0<  %W-- 1 !k400H((%'ZZ^^4Z%[![!($5$A$ADD[D[$[!%)*;*N*N%O""()@)@CTC`C`)`"aJMM"4jA #b "%!*;!:!*c22 ,QC/_`G#G,, 44Z@@*"*;; ST^S_`G$W--"&&z2 "; & ::m4%+h&"
 !'"(x!D    r$   c                   V ^8  d   QhRR/# r   r   zdict[str, str]r    )r!   s   "r"   r#   r     s      n r$   c                   V P                   f   RV P                  9   d3   V P                  R,          pRV P                  9   d   Rp\        V4      hM/ p\	        V\
        4      '       g   Rp\        V4      h/ pVP                  4        F0  w  rE\	        V\        4      '       g   RV R2p\        V4      hWSV&   K2  	  W0n         V P                   # )z(
https://peps.python.org/pep-0621/#urls
urlsz]Metadata field `urls` cannot be both statically defined and listed in field `project.dynamic`z$Field `project.urls` must be a tablezURL `z*` of field `project.urls` must be a string)	r   r4   r]   r^   r_   r`   ra   itemsr   )rE   r  rf   sorted_urlslabelurls   &     r"   r  CoreMetadata.urls  s    
 ::${{6*T\\)w  %W--	 * dD))@((K"jjl
!#s++ %eW,VWG#G,,%(E" + %Jzzr$   c                   V ^8  d   QhRR/# r  r    )r!   s   "r"   r#   r     s       r$   c                   V P                   f   RV P                  9   d3   V P                  R,          pRV P                  9   d   Rp\        V4      hM/ p\	        V\
        4      '       g   Rp\        V4      h/ p\        VP                  4       4       F0  w  rE\	        V\        4      '       g   RV R2p\        V4      hWSV&   K2  	  W0n         V P                   # )0
https://peps.python.org/pep-0621/#entry-points
scriptsz`Metadata field `scripts` cannot be both statically defined and listed in field `project.dynamic`z'Field `project.scripts` must be a tableObject reference `z-` of field `project.scripts` must be a string)
r   r4   r]   r^   r_   r`   ra   rW  r  r   )rE   r  rf   sorted_scriptsry   
object_refs   &     r"   r  CoreMetadata.scripts  s    
 == DKK'++i0,<  %W-- - gt,,C((N$*7==?$; !*c22 24&8efG#G,,'1t$ %< +M}}r$   c                   V ^8  d   QhRR/# r  r    )r!   s   "r"   r#   r   7  s     ! !^ !r$   c                   V P                   f   RV P                  9   d3   V P                  R,          pRV P                  9   d   Rp\        V4      hM/ p\	        V\
        4      '       g   Rp\        V4      h/ p\        VP                  4       4       F0  w  rE\	        V\        4      '       g   RV R2p\        V4      hWSV&   K2  	  W0n         V P                   # )r  gui-scriptszdMetadata field `gui-scripts` cannot be both statically defined and listed in field `project.dynamic`z+Field `project.gui-scripts` must be a tabler  z1` of field `project.gui-scripts` must be a string)
r   r4   r]   r^   r_   r`   ra   rW  r  r   )rE   gui_scriptsrf   sorted_gui_scriptsry   r  s   &     r"   r  CoreMetadata.gui_scripts6  s    
 $+"kk-8 DLL0<  %W-- 1 !k400G((!#$*;+<+<+>$? !*c22 24&8ijG#G,,+54( %@ !3   r$   c                   V ^8  d   QhRR/# )r   r   zdict[str, dict[str, str]]r    )r!   s   "r"   r#   r   Y  s     1" 1"7 1"r$   c                   V P                   Ef?   RV P                  9   d3   V P                  R,          pRV P                  9   d   Rp\        V4      hM/ p\	        V\
        4      '       g   Rp\        V4      hR F  w  r4W19   g   K  RV RV R2p\        V4      h	  / p\        VP                  4       4       F  w  rg\	        V\
        4      '       g   RV R2p\        V4      h/ p\        VP                  4       4       F3  w  r\	        V
\        4      '       g   R	V	 R
V R2p\        V4      hWV	&   K5  	  V'       g   K  WV&   K  	  WPn         V P                   # )r  zentry-pointszeMetadata field `entry-points` cannot be both statically defined and listed in field `project.dynamic`z,Field `project.entry-points` must be a tablezField `z` must be defined as `project.z0` instead of in the `project.entry-points` tablezField `project.entry-points.z` must be a tabler  z!` of field `project.entry-points.z` must be a string))console_scriptsr  )r  r  )
r   r4   r]   r^   r_   r`   ra   rW  r  r   )rE   defined_entry_point_groupsrf   forbidden_fieldexpected_fieldentry_point_groupsgroupentry_point_dataentry_pointsry   r  s   &          r"   r  CoreMetadata.entry_pointsX  s   
 %,-1[[-H*!T\\1<  %W-- 2 .0*8$??H((3s/"@!/!22PQ_P` aI J  %W-- 4t "$+12L2R2R2T+U'!"2D99 <UGCTUG#G,,!(./?/E/E/G(H$D%j#66$6tf<]^c]ddv"w'00)3& )I  <0<u- ,V" "4!!!r$   c                   V ^8  d   QhRR/# )r   r   zdict[str, Requirement]r    )r!   s   "r"   r#   r     s     /* /*&< /*r$   c                   V P                   EfO   ^ RIHpHp RV P                  9   d3   V P                  R,          pRV P
                  9   d   Rp\        V4      hM. p\        V\        4      '       g   Rp\        V4      h/ p\        V^4       F  w  rg\        V\        4      '       g   RV R2p\        V4      h V! V P                  P                  V4      4      pVP                  '       d.   V P                  P                   '       g   RV R2p\        V4      h\#        V4       W\%        V4      &   K  	  \'        \)        VP+                  4       4      4      V n         V P                   #   T d   p	RT R	T	 2p\        T4      RhRp	?	ii ; i)
F
https://peps.python.org/pep-0621/#dependencies-optional-dependencies
Nr   dependencieszeMetadata field `dependencies` cannot be both statically defined and listed in field `project.dynamic`z-Field `project.dependencies` must be an arrayr   z1 of field `project.dependencies` must be a stringz of field `project.dependencies` cannot be a direct reference unless field `tool.hatch.metadata.allow-direct-references` is set to `true`z- of field `project.dependencies` is invalid: )r  r   r   r   r4   r]   r^   r_   rd   ra   rs   r   rU   r!   r  r   allow_direct_referencesr   r   r`   rW  r  )
rE   r   r   r  rf   dependencies_complexrt   r   requirementr   s
   &         r"   r  !CoreMetadata.dependencies_complex  s   
 %%-N,#{{>:!T\\1<  %W-- 2  "lD11I((#% %lA6!%-- ,QC/`aG#G,,W"-dll.A.A%.H"IK
 #t/B/B/Z/Z/Z*1# .c d   )11)+6KV):;)GH' 7* *.f5I5O5O5Q.R)SD&)))! * 8 ,QC/\]^\_`G$W-478s   ;!E**F
1FF
c                   V ^8  d   QhRR/# ro   r    )r!   s   "r"   r#   r     s     " "i "r$   c                j    V P                   f   \        V P                  4      V n         V P                   # r  )r  rd   r  r   s   &r"   r  CoreMetadata.dependencies  s/    
 %!%d&?&?!@D!!!r$   c                   V ^8  d   QhRR/# )r   r   z!dict[str, dict[str, Requirement]]r    )r!   s   "r"   r#   r     s     e3 e3/P e3r$   c                "   V P                   Ef   ^ RIHpHp RV P                  9   d3   V P                  R,          pRV P
                  9   d   Rp\        V4      hM/ p\        V\        4      '       g   Rp\        V4      h/ p/ p/ pVP                  4        EF  w  r\        V4      '       g   RV R2p\        V4      hV P                  P                  '       d   TM
\        V4      p
W9   d   RWZ,           R	V R
V
 R2p\        V4      h\        V	\        4      '       g   RV R2p\        V4      h/ p\!        V	^4       EF	  w  r\        V\"        4      '       g   RV RV R2p\        V4      h V! V P$                  P'                  V4      4      pVP(                  '       d1   V P                  P*                  '       g   RV RV R2p\        V4      h\-        V4       VP.                  V P.                  8X  dC   W9   d$   Wz,          P1                  VP2                  4       K  \5        VP2                  4      Wz&   K  W\7        V4      &   EK  	  WV
&   WV
&   EK  	  \5        4       p\5        4       pV F  p\9        VVVVV4       K  	  \;        VP                  4       4       UUu/ uF(  w  rV\        \;        VP                  4       4      4      bK*  	  uppV n         V P                   #   T d   pRT RT RT 2p\        T4      RhRp?ii ; iu uppi )r  Nr   zoptional-dependenciesznMetadata field `optional-dependencies` cannot be both statically defined and listed in field `project.dynamic`z5Field `project.optional-dependencies` must be a tablezOptional dependency group `z` of field `project.optional-dependencies` must only contain ASCII letters/digits, underscores, hyphens, and periods, and must begin and end with ASCII letters/digits.zOptional dependency groups `z` and `z=` of field `project.optional-dependencies` both evaluate to `z`.zDependencies for option `z;` of field `project.optional-dependencies` must be an arrayr   z of option `z;` of field `project.optional-dependencies` must be a stringz` of field `project.optional-dependencies` cannot be a direct reference unless field `tool.hatch.metadata.allow-direct-references` is set to `true`z7` of field `project.optional-dependencies` is invalid: )r  r   r   r   r4   r]   r^   r_   r`   ra   r  r   r   allow_ambiguous_featuresr   rd   rs   r   rU   r!   r  r  r   ry   r   extrasr   r   _resolve_optional_dependenciesrW  )rE   r   r   optional_dependenciesrf   normalized_optionsoptional_dependency_entriesinherited_optionsoptionr  normalized_optionentriesrt   r   r  r   visitedresolveddependent_options   &                  r"   optional_dependencies_complex*CoreMetadata.optional_dependencies_complex  s`   
 ..6N&$++5(,4K(L%*dll:<  %W-- ; )+%3T::Q((13*,'57(=(C(C(E$,V445fX >0 1 
 %W-- #11JJJFPfgmPn " %:67I7\6]]dekdl mSSdReegi  %W--!,553F8;vw  $G,, ), :HA%eS11*1#\& B/ 0   (00R&1$,,2E2Ee2L&M '???43F3F3^3^3^".qcfX Fa !b $
 #-W"55-k:&++tyy80E 1 D K KKL^L^ _GJ;K]K]G^ 1 DFQ$5k$BCA !;D 9?#45AH,=>} )F@ !$G!$H$5 ./1ACTV]_g %6 NTToTuTuTwMx3Mx/&VGMMO455Mx3D/ 222M . <*1#\& B++,#/   )1t;<D3s   0!K%".L%L,LLc                   V ^8  d   QhRR/# rk  r    )r!   s   "r"   r#   r   1  s     	+ 	+'; 	+r$   c                    V P                   f>   V P                  P                  4        UUu/ uF  w  rV\        V4      bK  	  uppV n         V P                   # u uppi r  )r  r  r  rd   )rE   r  r  s   &  r"   r  "CoreMetadata.optional_dependencies0  sZ    
 &&.=A=_=_=e=e=g+=g/&W%=g+D' ***	+s   Ac                   V ^8  d   QhRR/# ro   r    )r!   s   "r"   r#   r   =  s       r$   c                b   V P                   f   V P                  P                  R. 4      p\        V\        4      '       g   Rp\        V4      h\        ;QJ d    R V 4       F  '       d   K   RM	  RM! R V 4       4      '       g   Rp\        V4      h\        V4      V n         V P                   # )z+
https://peps.python.org/pep-0621/#dynamic
r]   rr   c              3  B   "   T F  p\        V\        4      x  K  	  R # 5ir   )r_   r   )rS  r   s   & r"   rT  'CoreMetadata.dynamic.<locals>.<genexpr>H  s     C7%z%--7s   FTz1Field `project.dynamic` must only contain strings)r?   r4   rc   r_   rd   ra   allrW  )rE   r]   rf   s   &  r"   r]   CoreMetadata.dynamic<  s    
 == kkooi4Ggt,,D((3C7C333C7CCCM(("7ODM}}r$   c                    V ^8  d   QhRRRR/# )r   r  rp   r   r5   r    )r!   s   "r"   r#   r   P  s     4 4 4t 4r$   c                	<    V P                   P                  V4       R # r   )r   r   )rE   r  s   &&r"   r   "CoreMetadata.add_known_classifiersP  s    &&{3r$   c                   V ^8  d   QhRR/# r   r    )r!   s   "r"   r#   r   S  s     % % %r$   c                	@    \        V 4       F  p\        W4       K  	  R # r   )dirgetattr)rE   	attributes   & r"   r   CoreMetadata.validate_fieldsS  s    TID$ #r$   c                    V ^8  d   QhRRRR/# )r   r  r   r   rJ   r    )r!   s   "r"   r#   r   Y  s     ; ;C ;D ;r$   c                	@    V P                  4       P                  R 4      # )z
private ::)r!  
startswith)r  s   &r"   __classifier_is_private$CoreMetadata.__classifier_is_privateX  s    !,,\::r$   )!r   r   r   r  r  r   r?   r   r   r   r   r   r   r   r   r   r@   r  r  r   r   r   r   r   r   r   r   rA   r   r4   rU   r   r2   N)'r   r   r   r   r   rF   r   r	  ry   r   r  r  r.  r'  r7  r;  r?  rG  rX  r_  rh  rq  rr  ry  r  r  r  r  r  r  r  r  r  r]   r   r   staticmethodr  r   r    r$   r"   r   r   [  sY   *(X  :   ( (> ! !. c cJ 4 4 , , % %@ ; ; > >@ 3 3 (# (#T 8 8t . . 7! 7!r 2 2  B ?! ?!B  @  B ! !B 1" 1"f /* /*b " " e3 e3N 	+ 	+  &4%
 ; ;r$   r   c                  z    ] tR tRtR R lt]R R l4       t]R R l4       t]R R	 l4       t]R
 R l4       t	Rt
R# )r   i]  c               (    V ^8  d   QhRRRRRRRR/# )	r   r2   r   r4   zdict[str, dict[str, Any]]r3   r   r   r5   r    )r!   s   "r"   r#   HatchMetadata.__annotate__^  s+     8 8S 8*C 8Ug 8lp 8r$   c                	b    Wn         W n        W0n        R V n        R V n        R V n        R V n        R # r   )r2   r4   r3   	_metadata_build_config_build_targetsrA   rE   r2   r4   r3   s   &&&&r"   rF   HatchMetadata.__init__^  s0    	,7;485937r$   c                   V ^8  d   QhRR/# )r   r   r   r    )r!   s   "r"   r#   r  i  s     	 	/ 	r$   c                	    V P                   fe   V P                  P                  R/ 4      p\        V\        4      '       g   Rp\        V4      h\        V P                  WP                  4      V n         V P                   # )Nr   z+Field `tool.hatch.metadata` must be a table)	r  r4   rc   r_   r`   ra   r   r2   r3   )rE   metadata_configrf   s   &  r"   r   HatchMetadata.metadatah  s_    >>!"kkooj"=Oot44G((2499oObObcDN~~r$   c                   V ^8  d   QhRR/# rX   r    )r!   s   "r"   r#   r  u  s     	" 	"n 	"r$   c                	    V P                   fF   V P                  P                  R/ 4      p\        V\        4      '       g   Rp\        V4      hWn         V P                   # )Nr   z(Field `tool.hatch.build` must be a table)r  r4   rc   r_   r`   ra   )rE   build_configrf   s   &  r"   r  HatchMetadata.build_configt  sQ    %;;??7B7LlD11D((!-!!!r$   c                   V ^8  d   QhRR/# rX   r    )r!   s   "r"   r#   r    s     	# 	#~ 	#r$   c                	    V P                   fF   V P                  P                  R/ 4      p\        V\        4      '       g   Rp\        V4      hWn         V P                   # )Ntargetsz0Field `tool.hatch.build.targets` must be a table)r  r  rc   r_   r`   ra   )rE   build_targetsrf   s   &  r"   r	  HatchMetadata.build_targets  sU    &"&"3"3"7"7	2"FMmT22L(("/"""r$   c                   V ^8  d   QhRR/# )r   r   HatchVersionConfigr    )r!   s   "r"   r#   r    s      + r$   c                	<   V P                   f   RV P                  9  d   Rp\        V4      hV P                  R,          p\        V\        4      '       g   Rp\        V4      h\        V P                  \        V4      V P                  4      V n         V P                   # )Nr   z*Missing `tool.hatch.version` configurationz*Field `tool.hatch.version` must be a table)
rA   r4   r^   r_   r`   ra   r  r2   r   r3   )rE   rf   optionss   &  r"   r   HatchMetadata.version  s|    == +F ))kk),Ggt,,F((.tyy(7:KTM`M`aDM}}r$   )r  r  r  rA   r4   r3   r2   N)r   r   r   r   rF   r   r   r  r	  r   r   r    r$   r"   r   r   ]  sW    8 	 	 	" 	" 	# 	#  r$   r   c                      ] tR tRtR R lt]R R l4       t]R R l4       t]R R	 l4       t]R
 R l4       t	]R R l4       t
RtR# )r  i  c               (    V ^8  d   QhRRRRRRRR/# 	r   r2   r   r4   r   r3   r   r   r5   r    )r!   s   "r"   r#   HatchVersionConfig.__annotate__  s*     	; 	;S 	;. 	;J\ 	;ae 	;r$   c                	p    Wn         W n        W0n        R V n        R V n        R V n        R V n        R V n        R # r   )r2   r4   r3   _cached_source_name_scheme_name_source_schemer  s   &&&&r"   rF   HatchVersionConfig.__init__  s7    	,#'(,(,6:6:r$   c                   V ^8  d   QhRR/# rw   r    )r!   s   "r"   r#   r    s       r$   c                	   V P                   f4    V P                  P                  4       R,          V n         V P                   # V P                   #   \         d4   pRT P                  P                   RT 2p\        T4      ! T4      R hR p?ii ; i)Nr   z'Error getting the version from source `z`: )r  r   get_version_data	ExceptionPLUGIN_NAMEtype)rE   r   rf   s   &  r"   r   HatchVersionConfig.cached  s    <<1#{{;;=iH
 ||t||	  1CDKKD[D[C\\_`a_bc1gg&D01s   &A B.BBc                   V ^8  d   QhRR/# rw   r    )r!   s   "r"   r#   r         ! !S !r$   c                	    V P                   f[   V P                  P                  RR4      pV'       g   Rp\        V4      h\	        V\
        4      '       g   Rp\        V4      hWn         V P                   # )Nr   regexzUThe `source` option under the `tool.hatch.version` table must not be empty if definedz2Field `tool.hatch.version.source` must be a string)r  r4   rc   r^   r_   r   ra   )rE   r   rf   s   &  r"   r   HatchVersionConfig.source_name  sd    $++//(G<Fq ))fc**N(( &   r$   c                   V ^8  d   QhRR/# rw   r    )r!   s   "r"   r#   r    r#  r$   c                	    V P                   f[   V P                  P                  RR4      pV'       g   Rp\        V4      h\	        V\
        4      '       g   Rp\        V4      hWn         V P                   # )NschemestandardzUThe `scheme` option under the `tool.hatch.version` table must not be empty if definedz2Field `tool.hatch.version.scheme` must be a string)r  r4   rc   r^   r_   r   ra   )rE   r)  rf   s   &  r"   scheme_nameHatchVersionConfig.scheme_name  sd    $++//(J?Fq ))fc**N(( &   r$   c                   V ^8  d   QhRR/# )r   r   r   r    )r!   s   "r"   r#   r          . r$   c                	"   V P                   fw   ^ RIHp V P                  pV P                  P
                  P                  V4      pVf   ^ RIHp RV 2pV! V4      hV! V P                  V! V P                  4      4      V n         V P                   # )Nr   UnknownPluginErrorzUnknown version source: )r  r   r   r   r3   version_sourcerc   hatchling.plugin.exceptionsr1  r2   r4   )rE   r   r   r2  r1  rf   s   &     r"   r   HatchVersionConfig.source  {    <<%**K!00??CCKPN%J4[MB(11)$))Xdkk5JKDL||r$   c                   V ^8  d   QhRR/# )r   r   r   r    )r!   s   "r"   r#   r    r.  r$   c                	"   V P                   fw   ^ RIHp V P                  pV P                  P
                  P                  V4      pVf   ^ RIHp RV 2pV! V4      hV! V P                  V! V P                  4      4      V n         V P                   # )Nr   r0  zUnknown version scheme: )r  r   r   r+  r3   version_schemerc   r3  r1  r2   r4   )rE   r   r+  r8  r1  rf   s   &     r"   r)  HatchVersionConfig.scheme  r5  r$   )r  r  r  r  r  r4   r3   r2   N)r   r   r   r   rF   r   r   r   r+  r   r)  r   r    r$   r"   r  r    sk    	;   ! ! ! !     r$   r  c                  z    ] tR tRtR R lt]R R l4       t]R R l4       t]R R	 l4       t]R
 R l4       t	Rt
R# )r   i  c               (    V ^8  d   QhRRRRRRRR/# r  r    )r!   s   "r"   r#   "HatchMetadataSettings.__annotate__  s0     D DS D. DJ\ Dae Dr$   c                	b    Wn         W n        W0n        R V n        R V n        R V n        R V n        R # r   )r2   r4   r3   _allow_direct_references_allow_ambiguous_features_hook_config_hooksr  s   &&&&r"   rF   HatchMetadataSettings.__init__  s1    	,59%6:&37?Cr$   c                   V ^8  d   QhRR/# rI   r    )r!   s   "r"   r#   r<    s     	- 	- 	-r$   c                	    V P                   fF   V P                  P                  RR4      p\        V\        4      '       g   Rp\        V4      hWn         V P                   # )Nzallow-direct-referencesFzEField `tool.hatch.metadata.allow-direct-references` must be a boolean)r>  r4   rc   r_   rJ   ra   )rE   r  rf   s   &  r"   r  -HatchMetadataSettings.allow_direct_references  sU    ((0,0KKOO<UW\,]#5t<<a((,C),,,r$   c                   V ^8  d   QhRR/# rI   r    )r!   s   "r"   r#   r<    s     
. 
.$ 
.r$   c                	    V P                   fF   V P                  P                  RR4      p\        V\        4      '       g   Rp\        V4      hWn         V P                   # )Nzallow-ambiguous-featuresFzFField `tool.hatch.metadata.allow-ambiguous-features` must be a boolean)r?  r4   rc   r_   rJ   ra   )rE   r  rf   s   &  r"   r  .HatchMetadataSettings.allow_ambiguous_features  sW     ))1-1[[__=WY^-_$6==b((-E*---r$   c                   V ^8  d   QhRR/# rX   r    )r!   s   "r"   r#   r<    s     	! 	!^ 	!r$   c                	    V P                   fF   V P                  P                  R/ 4      p\        V\        4      '       g   Rp\        V4      hWn         V P                   # )Nr   z1Field `tool.hatch.metadata.hooks` must be a table)r@  r4   rc   r_   r`   ra   )rE   hook_configrf   s   &  r"   rK  !HatchMetadataSettings.hook_config  sQ    $*.++//'2*FKk400M(( +   r$   c                   V ^8  d   QhRR/# )r   r   z dict[str, MetadataHookInterface]r    )r!   s   "r"   r#   r<  (  s      7 r$   c                	2   V P                   f   V P                  p/ pVP                  4        FV  w  r4V P                  P                  P                  V4      pVf   ^ RIHp RV 2pV! V4      hV! V P                  V4      W#&   KX  	  W n         V P                   # )Nr0  zUnknown metadata hook: )	rA  rK  r  r3   r   rc   r3  r1  r2   )rE   rK  configured_hooks	hook_namer4   r   r1  rf   s   &       r"   r   HatchMetadataSettings.hooks'  s    ;;**K!%0%6%6%8!	 $ 3 3 A A E Ei P (N 7	{CG,W55.;DIIv.N + &9 +K{{r$   )r?  r>  r@  rA  r4   r3   r2   N)r   r   r   r   rF   r   r  r  rK  r   r   r    r$   r"   r   r     sX    D 	- 	- 
. 
. 	! 	!  r$   r   c                R   W9   d   R # W9   d   RV 2p\        V4      hVP                  V4       W9   dP   W!,           FC  p\        WW#V4       W`9  d   RV 2p\        V4      hW,          P                  W,          4       KE  	  VP                  V4       VP	                  V4       R # )NzKField `project.optional-dependencies` defines a circular dependency group: zMUnknown recursive dependency group in field `project.optional-dependencies`: )r^   rz  r  r   re   )r  r  r  r  r  rf   selected_options   &&&&&  r"   r  r  <  s     #"_`p_qr!!KK !,0BBO*-@Q\d Ccdsctu  !)));BBC`Cqr  C LL!"NN#$r$   )      )/
__future__r   rC   sys
contextlibr   r   r   typingr   r   r	   r
   hatchling.metadata.utilsr   r   r   r   hatchling.plugin.managerr   hatchling.utils.constantsr   hatchling.utils.fsr   r   r   r6  r   #hatchling.metadata.plugin.interfacer   rT   r   )hatchling.version.scheme.plugin.interfacer   )hatchling.version.source.plugin.interfacer   version_infor*   tomlir.   r0   r   r   r   r  r   r  r    r$   r"   <module>rc     s    " 	 
   4 4  8 9 *21I/PPw'
c$g01 c$LK" K"\; ;D =G./ =@W!34 WtBG$67 BJ%r$   