@@ -232,18 +232,12 @@ class MesonBuilderError(Error):
232232
233233class  Metadata (pyproject_metadata .StandardMetadata ):
234234    def  __init__ (self , name : str , * args : Any , ** kwargs : Any ):
235-         super ().__init__ (name , * args , ** kwargs )
236-         # Local fix for https://github.com/FFY00/python-pyproject-metadata/issues/60 
237-         self .name  =  self ._validate_name (name )
238- 
239-     @staticmethod  
240-     def  _validate_name (name : str ) ->  str :
241235        # See https://packaging.python.org/en/latest/specifications/core-metadata/#name 
242236        if  not  re .match (r'^([A-Z0-9]|[A-Z0-9][A-Z0-9._-]*[A-Z0-9])$' , name , re .IGNORECASE ):
243237            raise  pyproject_metadata .ConfigurationError (
244238                f'Invalid project name "{ name }  ". A valid name consists only of ASCII letters and ' 
245239                f'numbers, period, underscore and hyphen. It must start and end with a letter or number' )
246-         return   name 
240+         super (). __init__ ( name ,  * args ,  ** kwargs ) 
247241
248242    @classmethod  
249243    def  from_pyproject (
@@ -252,12 +246,7 @@ def from_pyproject(
252246        project_dir : Path  =  os .path .curdir ,
253247        metadata_version : Optional [str ] =  None 
254248    ) ->  Self :
255-         metadata  =  super ().from_pyproject (data , project_dir )
256- 
257-         # Check for missing version field. 
258-         if  not  metadata .version  and  'version'  not  in   metadata .dynamic :
259-             raise  pyproject_metadata .ConfigurationError (
260-                 'Required "project.version" field is missing and not declared as dynamic' )
249+         metadata  =  super ().from_pyproject (data , project_dir , metadata_version )
261250
262251        # Check for unsupported dynamic fields. 
263252        unsupported_dynamic  =  set (metadata .dynamic ) -  {'version' , }
@@ -267,17 +256,6 @@ def from_pyproject(
267256
268257        return  metadata 
269258
270-     # Local fix for a bug in pyproject-metadata. See 
271-     # https://github.com/mesonbuild/meson-python/issues/454 
272-     def  _update_dynamic (self , value : Any ) ->  None :
273-         if  value  and  'version'  in  self .dynamic :
274-             self .dynamic .remove ('version' )
275- 
276-     @property  
277-     def  canonical_name (self ) ->  str :
278-         # See https://packaging.python.org/en/latest/specifications/name-normalization/#normalization 
279-         return  packaging .utils .canonicalize_name (self .name )
280- 
281259    @property  
282260    def  distribution_name (self ) ->  str :
283261        """Name to be used in wheel and sdist file names.""" 
0 commit comments