+
    WBiN                        ^ RI Ht ^ RIt^ RIHt ^ RIHt ^ RIHtH	t	H
t
 ^ RIt^ RIHtHtHt ^ RIHtHtHt ^ RIHt ^ R	IHt ]'       d   ^ R
IHt ^ RIHt  ! R R4      tRR/R R llt]
! R]R7      tR# )    )annotationsN)contextmanager)cached_property)TYPE_CHECKINGAnyTypeVar)DEFAULT_BUILD_DIRECTORYEXCLUDED_DIRECTORIESBuildEnvVars)normalize_inclusion_mapnormalize_relative_directorynormalize_relative_path)normalize_project_name)locate_file)	Generator)BuilderInterfacec                  L   ] tR t^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RR/R R l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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4       t!]R= R> l4       t"]R? R@ l4       t#]RA RB l4       t$]RC RD l4       t%]RE RF l4       t&RG RH lt']RI RJ l4       t(RK RL lt)RM RN lt*RO RP lt+RQ RR lt,RS RT lt-RU RV lt.RW RX lt/RY RZ lt0R[ R\ lt1]2R] R^ l4       t3R_t4R`# )aBuilderConfigc               0    V ^8  d   QhRRRRRRRRRRR	R
/# )   builderr   rootstrplugin_namebuild_configdict[str, Any]target_configreturnNone )formats   ">/usr/lib/python3.14/site-packages/hatchling/builders/config.py__annotate__BuilderConfig.__annotate__   sF     4 4!4 4 	4
 %4 &4 
4    c                	    Wn         W n        W0n        W@n        WPn        R V n        RV n        / V n        \        4       V n	        R# )FN)
_BuilderConfig__builder_BuilderConfig__root_BuilderConfig__plugin_name_BuilderConfig__build_config_BuilderConfig__target_config_BuilderConfig__exclude_allbuild_artifact_specbuild_force_includesetbuild_reserved_paths)selfr   r   r   r   r   s   &&&&&&r"   __init__BuilderConfig.__init__   sH     !(*, $) CG 35 .1e!r%   c                   V ^8  d   QhRR/# )r   r   r   r    )r!   s   "r"   r#   r$   .   s      ) r%   c                	    V P                   # N)r'   r1   s   &r"   r   BuilderConfig.builder-   s    ~~r%   c                   V ^8  d   QhRR/# r   r   r   r    )r!   s   "r"   r#   r$   2   s      c r%   c                	    V P                   # r6   )r(   r7   s   &r"   r   BuilderConfig.root1   s    {{r%   c                   V ^8  d   QhRR/# r:   r    )r!   s   "r"   r#   r$   6   s     " "S "r%   c                	    V P                   # r6   )r)   r7   s   &r"   r   BuilderConfig.plugin_name5   s    !!!r%   c                   V ^8  d   QhRR/# r   r   r   r    )r!   s   "r"   r#   r$   :   s     # #n #r%   c                	    V P                   # r6   )r*   r7   s   &r"   r   BuilderConfig.build_config9   s    """r%   c                   V ^8  d   QhRR/# rA   r    )r!   s   "r"   r#   r$   >   s     $ $~ $r%   c                	    V P                   # r6   )r+   r7   s   &r"   r   BuilderConfig.target_config=   s    ###r%   explicitF
is_packageTc               (    V ^8  d   QhRRRRRRRR/# )r   relative_pathr   rG   boolrH   r   r    )r!   s   "r"   r#   r$   A   s*     	
 	
# 	
D 	
VZ 	
fj 	
r%   c               	(   V P                  V4      ;'       g{    V P                  V4      ;'       gb    V P                  ;'       d    V'       * '       * ;'       d:    V P                  V4      '       * ;'       d    T;'       g    V P	                  V4      # r6   )path_is_build_artifactpath_is_artifactonly_packagespath_is_excludedpath_is_included)r1   rJ   rG   rH   s   &&$$r"   include_pathBuilderConfig.include_pathA   s    ''6  $$]3  ''::
N; G G--m<<G GEE!6!6}!E	
r%   c                    V ^8  d   QhRRRR/# r   rJ   r   r   rK   r    )r!   s   "r"   r#   r$   L   s     ; ;c ;d ;r%   c                	X    V P                   f   R# V P                   P                  V4      # )NT)include_spec
match_filer1   rJ   s   &&r"   rQ   BuilderConfig.path_is_includedL   s(    $  ++M::r%   c                    V ^8  d   QhRRRR/# rU   r    )r!   s   "r"   r#   r$   R   s     ; ;c ;d ;r%   c                	    V P                   '       d   R # V P                  f   R# V P                  P                  V4      # )TF)r,   exclude_specrX   rY   s   &&r"   rP   BuilderConfig.path_is_excludedR   s7    $  ++M::r%   c                    V ^8  d   QhRRRR/# rU   r    )r!   s   "r"   r#   r$   [   s     < <c <d <r%   c                	X    V P                   f   R# V P                   P                  V4      # NF)artifact_specrX   rY   s   &&r"   rN   BuilderConfig.path_is_artifact[   s(    %!!,,];;r%   c                    V ^8  d   QhRRRR/# rU   r    )r!   s   "r"   r#   r$   a   s     B BC BD Br%   c                	X    V P                   f   R# V P                   P                  V4      # ra   )r-   rX   rY   s   &&r"   rM   $BuilderConfig.path_is_build_artifacta   s(    ##+''22=AAr%   c                    V ^8  d   QhRRRR/# rU   r    )r!   s   "r"   r#   r$   g   s     : :c :d :r%   c                	    WP                   9   # r6   )r0   rY   s   &&r"   path_is_reservedBuilderConfig.path_is_reservedg   s     9 999r%   c               $    V ^8  d   QhRRRRRR/# )r   namer   rJ   r   rK   r    )r!   s   "r"   r#   r$   j   s!     	
 	
# 	
c 	
d 	
r%   c                	    V\         9   d   R # \        P                  P                  W!4      pV P	                  V4      ;'       g)    V P
                  ;'       d    V P                  V R24      # )T/)r
   ospathjoinri   skip_excluded_dirsrP   )r1   rl   rJ   relative_directorys   &&& r"   directory_is_excluded#BuilderConfig.directory_is_excludedj   sg    ''WW\\->!!"45 ] ]''[[D,A,AEWDXXYBZ,[	
r%   c                   V ^8  d   QhRR/# r   r   zpathspec.GitIgnoreSpec | Noner    )r!   s   "r"   r#   r$   v   s        ;  r%   c                	z   R V P                   9   d   V P                   pRV P                   R2pMV P                  pRp. pVP                  R V P	                  4       4      p\        V\        4      '       g   RV R2p\        V4      h\        V^4       F\  w  rg\        V\        4      '       g   RV RV R2p\        V4      hV'       g   RV RV R	2p\        V4      hVP                  V4       K^  	  VP                  R
 V P                   4       4       V'       d    \        P                  P!                  V4      # R# )includetool.hatch.build.targets.z.includeztool.hatch.build.includeField `` must be an array of strings	Pattern # in field `` must be a string` cannot be an empty stringc              3  j   "   T F)  pR VP                  \        P                  R 4       R 2x  K+  	  R# 5i)rn   N)replacero   sep).0rJ   s   & r"   	<genexpr>-BuilderConfig.include_spec.<locals>.<genexpr>   s.     #qcpR_a(=(=bffc(J'K1$Mcps   13N)r   r   r   getdefault_include
isinstancelist	TypeError	enumerater   
ValueErrorappendextendpackagespathspecGitIgnoreSpec
from_lines)r1   include_configinclude_locationall_include_patternsinclude_patternsmessageiinclude_patterns   &       r"   rW   BuilderConfig.include_specu   sA   ***!//N!:4;K;K:LHU!..N9!)--i9M9M9OP*D11 011NOGG$$"+,<a"@Aos33%aS4D3EEWX(("%aS4D3EE`a )) ''8 #A 	###qcgcpcp#qq))445IJJr%   c                   V ^8  d   QhRR/# rw   r    )r!   s   "r"   r#   r$      s      ; r%   c                	   R V P                   9   d   V P                   pRV P                   R2pMV P                  pRpV P                  4       pV P                  '       g    VP                  V P                  4       4       VP                  R V P                  4       4      p\        V\        4      '       g   RV R2p\        V4      h\        V^4       F\  w  rg\        V\        4      '       g   RV RV R2p\        V4      hV'       g   RV RV R	2p\        V4      hVP                  V4       K^  	  V'       d    \         P"                  P%                  V4      # R
# )excluderz   z.excludeztool.hatch.build.excluder{   r|   r}   r~   r   r   N)r   r   r   default_global_exclude
ignore_vcsr   load_vcs_exclusion_patternsr   default_excluder   r   r   r   r   r   r   r   r   r   )r1   exclude_configexclude_locationall_exclude_patternsexclude_patternsr   r   exclude_patterns   &       r"   r]   BuilderConfig.exclude_spec   sO   ***!//N!:4;K;K:LHU!..N9#::< ''(H(H(JK)--i9M9M9OP*D11 011NOGG$$"+,<a"@Aos33%aS4D3EEWX(("%aS4D3EE`a )) ''8 #A  ))445IJJr%   c                   V ^8  d   QhRR/# rw   r    )r!   s   "r"   r#   r$      s      < r%   c                	   R V P                   9   d   V P                   pRV P                   R2pMV P                  pRp. pVP                  R . 4      p\	        V\
        4      '       g   RV R2p\        V4      h\        V^4       F\  w  rg\	        V\        4      '       g   RV RV R2p\        V4      hV'       g   RV RV R	2p\        V4      hVP                  V4       K^  	  V'       d    \        P                  P                  V4      # R
# )	artifactsrz   z
.artifactsztool.hatch.build.artifactsr{   r|   r}   r~   r   r   N)r   r   r   r   r   r   r   r   r   r   r   r   r   r   )r1   artifact_configartifact_locationall_artifact_patternsartifact_patternsr   r   artifact_patterns   &       r"   rb   BuilderConfig.artifact_spec   s   $,,,"00O";D<L<L;MZ X"//O < "+//R@+T22 122OPGG$$#,->#BA.44%aS4E3FFXY((#%aS4E3FFab ))!(()9: $C !))445JKKr%   c                   V ^8  d   QhRR/# rA   r    )r!   s   "r"   r#   r$      s     )! )!^ )!r%   c           	     	   / pV P                   P                  R / 4      p\        V\        4      '       g   Rp\	        V4      hVP                  4        F=  w  rE\        V\        4      '       g   RV R2p\	        V4      hVP                  WE4       K?  	  V P                  P                  R / 4      p\        V\        4      '       g   RV P                   R2p\	        V4      hVP                  4        F=  w  rE\        V\        4      '       g   RV P                   RV R2p\	        V4      hWQV&   K?  	  \        \        P                  4      '       g   \        \        P                  4      pVP                  4        UUu/ uFZ  w  rEV'       gL   VP                  RR4      '       g4   \        \        P                   VP                  4        24      '       g   KX  WEbK\  	  pppV# / pV# u uppi )	hooksz.Field `tool.hatch.build.hooks` must be a tablezField `tool.hatch.build.hooks.z` must be a table Field `tool.hatch.build.targets.z.hooks` must be a tablez.hooks.zenable-by-defaultT)r   r   r   dictr   items
setdefaultr   r   env_var_enabledr   NO_HOOKSHOOKS_ENABLEHOOK_ENABLE_PREFIXupper)	r1   hook_configglobal_hook_configr   	hook_nameconfigtarget_hook_configall_hooks_enabledfinal_hook_configs	   &        r"   r   BuilderConfig.hook_config   s   13!..227B?,d33FGG$$!3!9!9!;Ifd++:9+EVW((""95 "< "//33GR@,d3389I9I8JJabGG$$!3!9!9!;Ifd++<T=M=M<NgV_U``qr((%+	" "< |4455 /0I0I J *5):):)<!)<%I%zz"5t<<&,*I*I)J9??K\J]'^_ "	!)<  ! !  !#  !s   <&G%#.G%G%c                   V ^8  d   QhRR/# r:   r    )r!   s   "r"   r#   r$     s     9 93 9r%   c                	V   R V P                   9   dF   V P                   R ,          p\        V\        4      '       g   RV P                   R2p\	        V4      hMCV P
                  P                  R \        4      p\        V\        4      '       g   Rp\	        V4      hV P                  V4      # )	directoryr   z.directory` must be a stringz3Field `tool.hatch.build.directory` must be a string)	r   r   r   r   r   r   r   r	   normalize_build_directory)r1   r   r   s   &  r"   r   BuilderConfig.directory  s    $,,,**;7Ii--<T=M=M<NNjk(( . ))--k;RSIi--O((--i88r%   c                   V ^8  d   QhRR/# r   r   rK   r    )r!   s   "r"   r#   r$     s     " "D "r%   c                	4   R V P                   9   dH   V P                   R ,          p\        V\        4      '       g   RV P                   R2p\	        V4      h V# V P
                  P                  R R4      p\        V\        4      '       g   Rp\	        V4      hV# )zskip-excluded-dirsr   z&.skip-excluded-dirs` must be a booleanFz=Field `tool.hatch.build.skip-excluded-dirs` must be a booleanr   r   rK   r   r   r   r   )r1   rr   r   s   &  r"   rr    BuilderConfig.skip_excluded_dirs  s    4#5#55!%!3!34H!I0$77<T=M=M<NNtu(( 8 "! "&!2!2!6!67KU!S0$77Y((!!r%   c                   V ^8  d   QhRR/# r   r    )r!   s   "r"   r#   r$   $  s      D r%   c                	4   R V P                   9   dH   V P                   R ,          p\        V\        4      '       g   RV P                   R2p\	        V4      h V# V P
                  P                  R R4      p\        V\        4      '       g   Rp\	        V4      hV# )z
ignore-vcsr   z.ignore-vcs` must be a booleanFz5Field `tool.hatch.build.ignore-vcs` must be a booleanr   )r1   r   r   s   &  r"   r   BuilderConfig.ignore_vcs#  s    4---++L9Jj$//<T=M=M<NNlm(( 0  **..|UCJj$//Q((r%   c                   V ^8  d   QhRR/# r   r    )r!   s   "r"   r#   r$   3  s     , ,d ,r%   c                	4   R V P                   9   dH   V P                   R ,          p\        V\        4      '       g   RV P                   R2p\	        V4      h V# V P
                  P                  R R4      p\        V\        4      '       g   Rp\	        V4      hV# )require-runtime-dependenciesr   z0.require-runtime-dependencies` must be a booleanFzGField `tool.hatch.build.require-runtime-dependencies` must be a booleanr   )r1   require_runtime_dependenciesr   s   &  r"   r   *BuilderConfig.require_runtime_dependencies2  s    )T-?-??+/+=+=>\+](:DAA6t7G7G6H I( )   (( B ,+ ,0+<+<+@+@A_af+g(:DAAc((++r%   c                   V ^8  d   QhRR/# r   r   z	list[str]r    )r!   s   "r"   r#   r$   E  s     !" !") !"r%   c                	^   R V P                   9   d   V P                   pRV P                   R2pMV P                  pRpVP                  R . 4      p\	        V\
        4      '       g   RV R2p\        V4      h/ p\        V^4       F  w  rg\	        V\        4      '       g   RV RV R2p\        V4      hV'       g   RV RV R	2p\        V4      h\        V4      pWP                  P                  P                  P                  9  d   R
V RV R2p\        V4      hRWX&   K  	  \        V4      # )require-runtime-featuresrz   z.require-runtime-featuresz)tool.hatch.build.require-runtime-featuresr{   ` must be an array	Feature #z of field `r   r   	Feature `z` of field `9` is not defined in field `project.optional-dependencies`N)r   r   r   r   r   r   r   r   r   r   r   r   metadatacoreoptional_dependencies)	r1   features_configfeatures_locationrequire_runtime_featuresr   all_featuresr   raw_featurefeatures	   &        r"   r   &BuilderConfig.require_runtime_featuresD  sW   %););;"00O";D<L<L;MMf g"//O K#2#6#67QSU#V 2D99 122DEGG$$(*'(@!DNAk3//%aS4E3FFXY((%aS4E3FFab )),[9Gll3388NNNy5F4G H< =  !))$(L!# E& L!!r%   c                   V ^8  d   QhRR/# r   r    )r!   s   "r"   r#   r$   i  s      t r%   c                4   RV P                   9   dH   V P                   R,          p\        V\        4      '       g   RV P                   R2p\	        V4      h V# V P
                  P                  RR4      p\        V\        4      '       g   Rp\	        V4      hV# )zh
Whether or not the target should ignore non-artifact files that do not reside within a Python package.
zonly-packagesr   z!.only-packages` must be a booleanFz8Field `tool.hatch.build.only-packages` must be a booleanr   )r1   rO   r   s   &  r"   rO   BuilderConfig.only_packagesh  s    
 d000 ..?MmT22<T=M=M<NNop(( 3  !--11/5IMmT22T((r%   c                   V ^8  d   QhRR/# r   r    )r!   s   "r"   r#   r$   {  s      d r%   c                4   RV P                   9   dH   V P                   R,          p\        V\        4      '       g   RV P                   R2p\	        V4      h V# V P
                  P                  RR4      p\        V\        4      '       g   Rp\	        V4      hV# )zY
Whether or not the target should be built in a reproducible manner, defaulting to true.
reproducibler   z .reproducible` must be a booleanTz7Field `tool.hatch.build.reproducible` must be a booleanr   )r1   r   r   s   &  r"   r   BuilderConfig.reproduciblez  s    
 T///--n=LlD11<T=M=M<NNno(( 2   ,,00FLlD11S((r%   c                   V ^8  d   QhRR/# r   r    )r!   s   "r"   r#   r$     s     ! !y !r%   c                   RV P                   9   d   V P                   pRV P                   R2pMV P                  pRp. pVP                  R. 4      p\	        V\
        4      '       g   RV R2p\        V4      h\        V^4       F\  w  rg\	        V\        4      '       g   RV RV R	2p\        V4      hV'       g   RV RV R
2p\        V4      hVP                  V4       K^  	  V# )zt
Directories which must be added to Python's search path in
[dev mode](../config/environment/overview.md#dev-mode).
zdev-mode-dirsrz   z.dev-mode-dirsztool.hatch.build.dev-mode-dirsr{   r|   zDirectory #r~   r   r   )r   r   r   r   r   r   r   r   r   r   r   )r1   dev_mode_dirs_configdev_mode_dirs_locationall_dev_mode_dirsdev_mode_dirsr   r   dev_mode_dirs   &       r"   r   BuilderConfig.dev_mode_dirs  s    d000#'#5#5 '@AQAQ@RR`%a"#'#4#4 %E",00"E-.. 677TUGG$$(:OAlC00's+6L5MM_`(('s+6L5MMhi ))$$\2  ; ! r%   c                   V ^8  d   QhRR/# r   r    )r!   s   "r"   r#   r$     s       r%   c                	4   R V P                   9   dH   V P                   R ,          p\        V\        4      '       g   RV P                   R2p\	        V4      h V# V P
                  P                  R R4      p\        V\        4      '       g   Rp\	        V4      hV# )zdev-mode-exactr   z".dev-mode-exact` must be a booleanFz9Field `tool.hatch.build.dev-mode-exact` must be a booleanr   )r1   dev_mode_exactr   s   &  r"   r   BuilderConfig.dev_mode_exact  s    t111!//0@ANnd33<T=M=M<NNpq(( 4  "..223CUKNnd33U((r%   c                   V ^8  d   QhRR/# r   r    )r!   s   "r"   r#   r$     s     &" &") &"r%   c                	   / pV P                   P                  R . 4      p\        V\        4      '       g   RV P                   R2p\        V4      h\        V^4       Fc  w  rE\        V\        4      '       g   RV RV P                   R2p\        V4      hV'       g   RV RV P                   R2p\        V4      hRW&   Ke  	  V'       g)   V P                  P                  4       pV F  pRW&   K	  	  M~\        V4      \        V P                  P                  4       4      ,
          pV'       dD   RV P                   R	R
P                  \        \        \        V4      4      4       2p\        V4      h\        V4      # )versionsr   z&.versions` must be an array of stringsz	Version #z$ in field `tool.hatch.build.targets.z.versions` must be a stringz$.versions` cannot be an empty stringNz4Unknown versions in field `tool.hatch.build.targets.z.versions`: z, )r   r   r   r   r   r   r   r   r   r'   get_default_versionsr/   get_version_apirq   mapsorted)r1   all_versionsr   r   r   versiondefault_versionsunknown_versionss   &       r"   r   BuilderConfig.versions  sz    )+%%))*b9(D))89I9I8JJpqGG$$#Ha0JAgs++s"FtGWGWFXXst   ((s"FtGWGWFX Y0 1  !))$(L! 1  #~~BBD+(,% ,  #<03t~~7U7U7W3XXJ4K[K[J\\hyyS&1A*B!CDEG  !))L!!r%   c                   V ^8  d   QhRR/# r   r    )r!   s   "r"   r#   r$     s     `" `"i `"r%   c                	x   / pV P                   P                  R . 4      p\        V\        4      '       g   RV P                   R2p\        V4      h\        V^4       F=  w  rE\        V\        4      '       g   RV RV P                   R2p\        V4      hRW&   K?  	  V P                  P                  R . 4      p\        V\        4      '       g   Rp\        V4      h\        V^4       F0  w  rE\        V\        4      '       g   RV R2p\        V4      hRW&   K2  	  V P                  p\        P                  V P                  4      pV P                  P                  4        EF  w  rV
P                  R	R
4      p\        V\        4      '       g   RV	 R2p\        V4      hV'       d   RpV
P                  R. 4      p\        V\        4      '       g   RV	 R2p\        V4      h\        V^4       F  w  rM\        V\        4      '       g   RV RV	 R2p\        V4      hV'       g   RV RV	 R2p\!        V4      h\#        V4      pWP$                  P&                  P(                  P*                  9  d   RV RV	 R2p\!        V4      hRW&   K  	  V
P                  R . 4      p\        V\        4      '       g   RV	 R2p\        V4      h\        V^4       F3  w  rE\        V\        4      '       g   RV RV	 R2p\        V4      hRW&   K5  	  EK  	  V'       d6   V P$                  P&                  P(                  P,                   F  pRW&   K	  	  V'       dF   V F?  pV P$                  P&                  P(                  P*                  V,           F  pRW&   K	  	  KA  	  V P.                   F  pRW&   K	  	  \        V4      # )dependenciesr   z.dependencies` must be an arrayzDependency #z$ of field `tool.hatch.build.targets.z.dependencies` must be a stringNz6Field `tool.hatch.build.dependencies` must be an arrayz: of field `tool.hatch.build.dependencies` must be a stringr   Fz5Option `require-runtime-dependencies` of build hook `z` must be a booleanTr   z1Option `require-runtime-features` of build hook `r   r   z5 of option `require-runtime-features` of build hook `r   r   r   z6` of option `require-runtime-features` of build hook `r   z%Option `dependencies` of build hook `z) of option `dependencies` of build hook `)r   r   r   r   r   r   r   r   r   r   r   fromkeysr   r   r   rK   r   r   r   r   r   r   r  dynamic_dependencies)r1   r  target_dependenciesr   r   
dependencyglobal_dependenciesr   r   r   r   !hook_require_runtime_dependencieshook_require_runtime_featuresr   r   hook_dependenciess   &               r"   r  BuilderConfig.dependencies  s    )+"0044^RH-t4489I9I8JJijGG$$&':A>MAj#.."1#%I$JZJZI[ \' (   (('+L$ ? #//33NBG-t44NGG$$&':A>MAj#..(+ef(('+L$ ? (,'H'H$#'==1N1N#O !%!1!1!7!7!9I06

;Y[`0a-?FFQR[Q\\op((0/3,,2JJ7QSU,V);TBBMi[Xjk(("+,I1"M!+s33#A3&[\e[f g+ ,  $G,,"#A3&[\e[f g4 5  %W--0=,,"7"7"<"<"R"RR#G9,bclbm nR S  %W--48(1/ #N2 !'

>2 >/66A)L^_((!*+<a!@!*c22 ,QC/XYbXccuvG#G,,+/( "AY ":f ("ll3388EE
+/( F $3"&,,"7"7"<"<"R"RSZ"["[J/3L, #\ 4 33J'+L$ 4 L!!r%   c                   V ^8  d   QhRR/# r   r    )r!   s   "r"   r#   r$   I  s      i r%   c           
     	   . pV P                   P                  4        F  w  r#V P                  P                  P                  P                  V4      pVf   K:   V! V P                  W0V P                  P                  RV P                  P                  V P                  P                  4      pTP                  TP                  4       4       K  	  V#   \         d     K  i ; i)N )r   r   r   plugin_manager
build_hookr   r   r   PLUGIN_NAMEappImportErrorr   r  )r1   r  r   r   build_hook_clsr  s   &     r"   r  "BuilderConfig.dynamic_dependenciesH  s    !%!1!1!7!7!9I!\\88CCGG	RN%+IIvT\\-B-BBH`H`bfbnbnbrbr
 
 7 7 9: ":    s   ACCCc                   V ^8  d   QhRR/# r   r   zdict[str, str]r    )r!   s   "r"   r#   r$   ^  s     ,- ,- ,-r%   c                	   R V P                   9   d   V P                   pRV P                   R2pMV P                  pRp/ pVP                  R . 4      p\	        V\
        4      '       dk   \        V^4       FY  w  rV\	        V\        4      '       g   RV RV R2p\        V4      hV'       g   RV RV R2p\        V4      hRV\        V4      &   K[  	  M\	        V\        4      '       d   VP                  4        Fr  w  rh\	        V\        4      '       g   R	V R
V R2p\        V4      h\        V4      p	V	R8X  d   Rp	MV	\        P                  ,          p	YV'       d   \        V4      MT&   Kt  	  MRV R2p\        V4      hV P                    FN  p
\        P"                  P%                  V
4      w  rkV'       g   K.  \        V
4      V9  g   K@  RV\        V4      &   KP  	  \        \'        VP                  4       4      4      # )sourcesrz   z.sourcesztool.hatch.build.sourcesSource #r~   r   r   r  Path for source `` in field `.r{   z'` must be a mapping or array of strings)r   r   r   r   r   r   r   r   r   r   r   r   r   r   ro   r   r   rp   splitr  )r1   sources_configsources_locationr"  raw_sourcesr   sourcer   rp   normalized_pathrJ   _packages   &           r"   r"  BuilderConfig.sources]  s   ***!//N!:4;K;K:LHU!..N9$((B7k4((&{A6	!&#.. (;7G6HHZ[G#G,, (;7G6HHcdG$W--@B4V<= 7 T** + 1 1 3!$,, 1&FVEWWijG#G,,"9$"?"c)&(O#rvv-OVe4V<FS !4   011XYGG$$!]]M!ww}}];Fv6}EWT@B4V<= +
 F7==?+,,r%   c                   V ^8  d   QhRR/# r   r    )r!   s   "r"   r#   r$     s     P P) Pr%   c                	   R V P                   9   d   V P                   pRV P                   R2pMV P                  pRpVP                  R V P	                  4       4      p\        V\        4      '       g   RV R2p\        V4      h\        V^4       FK  w  rV\        V\        4      '       g   RV RV R2p\        V4      hV'       d   K9  RV RV R	2p\        V4      h	  \        R
 V 4       4      # )r   rz   z	.packagesztool.hatch.build.packagesr{   r|   z	Package #r~   r   r   c              3  8   "   T F  p\        V4      x  K  	  R # 5ir6   )r   )r   packages   & r"   r   )BuilderConfig.packages.<locals>.<genexpr>  s     Oh7-g66hs   )r   r   r   r   default_packagesr   r   r   r   r   r   r  )r1   package_configpackage_locationr   r   r   r2  s   &      r"   r   BuilderConfig.packages  s   +++!//N!:4;K;K:LIV!..N:!%%j$2G2G2IJ(D)) 011NOGG$$#Ha0JAgs++%aS4D3EEWX((7%aS4D3EE`a )) 1 OhOOOr%   c                   V ^8  d   QhRR/# r   r    )r!   s   "r"   r#   r$     s     A A~ Ar%   c                	&   R V P                   9   d   V P                   pRV P                   R2pMV P                  pRpVP                  R / 4      p\	        V\
        4      '       g   RV R2p\        V4      h\        VP                  4       ^4       Fj  w  pw  rgV'       g   RV RV R2p\        V4      h\	        V\        4      '       g   R	V R
V R2p\        V4      hV'       d   KX  R	V R
V R2p\        V4      h	  \        W0P                  4      # )zforce-includerz   z.force-includeztool.hatch.build.force-includer{   z` must be a mappingr#  r~   r   r$  r%  r   )r   r   r   r   r   r   r   r   r   r   r   r   r   )r1   force_include_configforce_include_locationforce_includer   r   r+  rJ   s   &       r"   r<  BuilderConfig.force_include  s/   d000#'#5#5 '@AQAQ@RR`%a"#'#4#4 %E",00"E-.. 677JKGG$$*3M4G4G4I1*M&A&$QC{3I2JJef ))mS11-fX\BXAYYkl(( =-fX\BXAYYtu )) +N '}ii@@r%   c                   V ^8  d   QhRR/# r   r    )r!   s   "r"   r#   r$     s     A An Ar%   c                	   R V P                   9   d   V P                   pRV P                   R2pMV P                  pRpVP                  R V P	                  4       4      ;'       g    V P
                  p\        V\        4      '       g   RV R2p\        V4      h/ p\        V^4       F  w  rg\        V\        4      '       g   RV RV R2p\        V4      h\        V4      pV'       d   VP                  R4      '       d   RV RV R	V 2p\        V4      hW9   d   R
V RV 2p\        V4      hWV&   K  	  \        WPP                  4      # )zonly-includerz   z.only-includeztool.hatch.build.only-includer{   r   zPath #r~   r   z` must be relative: zDuplicate path in field `z`: )~z..)r   r   r   r   default_only_includer   r   r   r   r   r   r   
startswithr   r   r   )	r1   only_include_configonly_include_locationonly_includer   inclusion_mapr   rJ   r,  s	   &        r"   rE  BuilderConfig.only_include  se   T///"&"4"4&?@P@P?QQ^$_!"&"3"3$C!*..~t?X?X?Z[ll_c_l_l,-- 566HIGG$$ ), :AmS11"1#[1F0GGYZ((5mDO"o&@&@&M&M"1#[1F0GG[\i[jk ))/56K5LCP_O`a ))-</* !;  '}ii@@r%   c                    V ^8  d   QhRRRR/# )r   rJ   r   r   r    )r!   s   "r"   r#   r$     s     	 	3 	3 	r%   c                	    V P                   P                  4        FB  w  r#V'       g   W1,           u # VP                  V4      '       g   K0  VP                  W#^4      u # 	  V# )   )r"  r   rB  r   )r1   rJ   r+  replacements   &&  r"   get_distribution_path#BuilderConfig.get_distribution_path  sT    #'<<#5#5#7F"22''//$,,V!DD $8 r%   c                   V ^8  d   QhRR/# )r   r   zdict[str, list[str]]r    )r!   s   "r"   r#   r$     s      %9 r%   c                	    R . R. /p\        V P                  RRR7      pVe   VR ,          P                  V4       \        V P                  RRR7      pVe   VR,          P                  V4       V# )githgz
.gitignorez.git)boundaryz	.hgignorez.hg)r   r   r   )r1   exclusion_fileslocal_gitignorelocal_hgignores   &   r"   vcs_exclusion_files!BuilderConfig.vcs_exclusion_files  sl    16D"0E%diiO&E"))/:$TYYeL%D!((8r%   c                   V ^8  d   QhRR/# r   r    )r!   s   "r"   r#   r$     s      Y r%   c                	   . pV P                   R ,           F@  p\        VRR7      ;_uu_ 4       pVP                  VP                  4       4       RRR4       KB  	  V P                   R,           F}  p\        VRR7      ;_uu_ 4       pRpV FT  pVP	                  4       pVR8X  d   RpK  VP                  R4      '       d   RpK9  V'       g   KC  VP                  V4       KV  	  RRR4       K  	  \        P                  P                  V4      pVP                  V P                  4      '       d   . # V#   + '       g   i     EK.  ; i  + '       g   i     K  ; i)	rP  zutf-8)encodingNrQ  Fzsyntax: globTzsyntax: )rV  openr   	readlinesstriprB  r   r   r   r   rX   r   )r1   patternsexclusion_filef	glob_modeline
exact_liner]   s   &       r"   r   )BuilderConfig.load_vcs_exclusion_patterns  s    #66u==Nnw771. 87 >
 #66t<<Nnw771!	D!%J!^3$(	 !,,Z88$)	  y -  87 ="  --88B""499--I3 877
 877s#    D29E?	EE2EEc                    V ^8  d   QhRRRR/# )r   build_directoryr   r   r    )r!   s   "r"   r#   r$     s     1 1 1 1r%   c                	    \         P                  P                  V4      '       g+   \         P                  P                  V P                  V4      p\         P                  P                  V4      # r6   )ro   rp   isabsrq   r   normpath)r1   rf  s   &&r"   r   'BuilderConfig.normalize_build_directory  sB    ww}}_-- ggll499oFOww00r%   c                   V ^8  d   QhRR/# r   r   r   r    )r!   s   "r"   r#   r$   #         r%   c                	    . # r6   r    r7   s   &r"   r   BuilderConfig.default_include#      	r%   c                   V ^8  d   QhRR/# rl  r    )r!   s   "r"   r#   r$   &  rm  r%   c                	    . # r6   r    r7   s   &r"   r   BuilderConfig.default_exclude&  rp  r%   c                   V ^8  d   QhRR/# rl  r    )r!   s   "r"   r#   r$   )  s      $ r%   c                	    . # r6   r    r7   s   &r"   r4  BuilderConfig.default_packages)  rp  r%   c                   V ^8  d   QhRR/# rl  r    )r!   s   "r"   r#   r$   ,  s      d r%   c                	    . # r6   r    r7   s   &r"   rA  "BuilderConfig.default_only_include,  rp  r%   c                   V ^8  d   QhRR/# r   r    )r!   s   "r"   r#   r$   /  s      	 r%   c                	<    R R\          2.pVP                  4        V# )z	*.py[cdo]rn   )r	   sort)r1   r^  s   & r"   r   $BuilderConfig.default_global_exclude/  s#    1%<$=!>?r%   c                   V ^8  d   QhRR/# )r   r   r   r    )r!   s   "r"   r#   r$   4  s     " " "r%   c                	    R V n         R# )TN)r,   r7   s   &r"   set_exclude_allBuilderConfig.set_exclude_all4  s
    !r%   c                   V ^8  d   QhRR/# r   r    )r!   s   "r"   r#   r$   7  s      > r%   c                	p    V P                   P                  4       pVP                  V P                  4       V# r6   )r<  copyupdater.   )r1   r<  s   & r"   get_force_includeBuilderConfig.get_force_include7  s0    **//1T556r%   c                    V ^8  d   QhRRRR/# )r   
build_datar   r   r   r    )r!   s   "r"   r#   r$   =  s     . . .I .r%   c           
   #  	  "    VR ,          pV'       d%   \         P                  P                  V4      V n        V P                  P                  \        VR,          V P                  4      4       V P                  V P                  3 F  pVP                  4        F  w  rEVP                  V P                   \        P                   24      '       dT   V P                  P                  V P                  \        P                   P#                  W@P                  4      4      4       K  \        P                   P%                  V4      '       g   K  V P                  P                  V P                  V4      4       K  	  K  	  Rx  RV n        V P                  P'                  4        V P                  P'                  4        R#   RT n        T P                  P'                  4        T P                  P'                  4        i ; i5i)r   r<  N)r   r   r   r-   r.   r  r   r   r<  r   rB  ro   r   r0   addrL  rp   relpathisfileclear)r1   r  build_artifactsrF  r+  targets   &&    r"   set_build_dataBuilderConfig.set_build_data<  sz    	.(5O+3+A+A+L+L_+]($$++,CJD_aeajaj,kl"&"4"4d6N6N!O&3&9&9&;NF ((DII;rvvh)?@@1155d6P6PQSQXQXQ`Q`agirirQs6tu //1155d6P6PQW6XY '< "P '+D$$$**,%%++- (,D$$$**,%%++-s#   G?EF? 6F? =G??=G<<G?)	__build_config	__builder__exclude_all__plugin_name__root__target_configr-   r.   r0   N)5__name__
__module____qualname____firstlineno__r2   propertyr   r   r   r   r   rR   rQ   rP   rN   rM   ri   rt   r   rW   r]   rb   r   r   rr   r   r   r   rO   r   r   r   r   r  r  r"  r   r<  rE  rL  rV  r   r   r   r   r4  rA  r   r  r  r   r  __static_attributes__r    r%   r"   r   r      s   4.     " " # # $ $	
5 	
]a 	
;;<B:	
    D  B  < )! )!V 9 9 " "   , ," !" !"F  "  " ! !@   &" &"P `" `"D  ( ,- ,-\ P P0 A A8 A AB	  @1
"
 . .r%   r   defaultFc               $    V ^8  d   QhRRRRRR/# )r   env_varr   r  rK   r   r    )r!   s   "r"   r#   r#   Y  s!      S d t r%   c               d    V \         P                  9   d   \         P                  V ,          R9   # V# )1>   r  true)ro   environ)r  r  s   &$r"   r   r   Y  s'    "**zz'"m33Nr%   BuilderConfigBound)bound)
__future__r   ro   
contextlibr   	functoolsr   typingr   r   r   r   hatchling.builders.constantsr	   r
   r   hatchling.builders.utilsr   r   r   hatchling.metadata.utilsr   hatchling.utils.fsr   collections.abcr   #hatchling.builders.plugin.interfacer   r   r   r  r    r%   r"   <module>r     s^    " 	 % % . .  d d s s ; *)DA. A.HU  1G r%   