+
    h*                         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)boundc                   "    ] 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__name__
__module____qualname____firstlineno___DESC__doc___URL__static_attributes__r
       Y/usr/lib/python3/dist-packages/setuptools/config/_validate_pyproject/extra_validations.pyr	   r	      s    E
 G	" 	r   r	   c                   "    ] 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\         /#    	pyprojectreturnr   )formats   "r   __annotate__r   "   s       a r   c           
         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 # )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messagevaluename
definitionrule)getr	   r   r   r   )r   project_tabler"   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                0    V ^8  d   QhR\         R\         /# r   r   )r   s   "r   r   r   ;   s      !  r   c                 `   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+   items
isinstancedictr   r   r   r   )r   dependency_groupskeyr'   eachinclude_groups   &     r   validate_include_depenencyr8   ;   s    !&92>'--/
D4&&&*hh&??]??!:6<]O>Z23%8%x0P0V0V'W?DD  #	 	  0$ r   N)r   inspectr   typingr   r   error_reportingr   r   r	   r   r.   r8   EXTRA_VALIDATIONSr
   r   r   <module>r=      sQ   
  # ,Cw
_ 
/ /2. ./IJ r   