+
     h*  c                   s    R t ^ RIHt ^ RIHtHt ^RIHt ]! R]R7      t ! R R]4      t	 ! R R	]4      t
R
 R ltR R lt]]3tR# )zThe purpose of this module is implement PEP 621 validations that are
difficult to express as a JSON Schema (or that are not supported by the current
JSON Schema library).
)cleandoc)MappingTypeVar)ValidationErrorT)Zboundc                   s"    ] tR t^tRt]tRtRtR# )RedefiningStaticFieldAsDynamiczAccording to PEP 621:

    Build back-ends MUST raise an error if the metadata specifies a field
    statically as well as being listed in dynamic.
    zMhttps://packaging.python.org/en/latest/specifications/pyproject-toml/#dynamic NZ__name__Z
__module__Z__qualname__Z__firstlineno___DESC__doc___URLZ__static_attributes__r       \/usr/lib/python3.14/site-packages/setuptools/config/_validate_pyproject/extra_validations.pyr   r      s    E
 G	" 	r   r   c                   s"    ] tR t^tRt]tRtRtR# ) IncludedDependencyGroupMustExistzDAn included dependency group must exist and must not be cyclic.
    z!https://peps.python.org/pep-0735/r   Nr   r   r   r   r   r      s    EG.Dr   r   c                0    V ^8  d   QhR\         R\         /# i   	pyprojectZreturnr   Zformat   "r   __annotate__r   "   s       a r   c           
      s   V P                  R / 4      pVP                  R. 4      pV FU  pW19   g   K  \        RV R2W1V,          RRRV/RV 2R\        \        P                  4      R\        P                  /R	R
7      h	  V # )Zprojectdynamicz(You cannot provide a value for `project.z6` and list it under `project.dynamic` at the same timez...z # ...zdata.project.descriptionseezPEP 621ZmessagevalueZnameZ
definitionZrule)getr   r    r   r
   )r   Zproject_tabler   Zfields   &   r   validate_project_dynamicr   "   s    MM)R0M	2.G!0B5' JC C /8w
 %UG,!8,J,P,P#Q9>>   $ r   c                r   r   r   r   r   r   r   r   ;   s      !  r   c                 s`   V P                  R / 4      pVP                  4        F  w  r#V F|  p\        V\        4      '       g   K  VP                  R4      ;p'       g   K6  WQ9  g   K>  \	        RV R2VRV 2R\        \        P                  4      R\        P                  /RR7      h	  K  	  V # )	zdependency-groupszinclude-groupzThe included dependency group z doesn't existzdata.dependency_groups.r   r   zPEP 735r   )r   ZitemsZ
isinstanceZdictr   r    r   r
   )r   Zdependency_groupsZkeyr   ZeachZinclude_groups   &     r   validate_include_depenencyr   ;   s    !&92>'--/
D4&&&*hh&??]??!:6<]O>Z23%8%x0P0V0V'W?DD  #	 	  0$ r   N)r	   Zinspectr    Ztypingr   r   Zerror_reportingr   r   r   r   r   r   ZEXTRA_VALIDATIONSr   r   r   <module>r      sQ   
  # ,Cw
_ 
/ /2. ./IJ r   