@@ -69,7 +69,7 @@ def _toml_dict_factory(data: List[Tuple[str, Any]]) -> Dict[str, Any]:
69
69
return {
70
70
_toml_key (key ): _toml_value (key , value )
71
71
for key , value in data
72
- if value is not None
72
+ if value is not None and value != []
73
73
}
74
74
75
75
@@ -392,8 +392,9 @@ class Pylock:
392
392
lock_version : Version
393
393
environments : Optional [List [Marker ]]
394
394
requires_python : Optional [SpecifierSet ]
395
- # (not supported) extras: List[str] = []
396
- # (not supported) dependency_groups: List[str] = []
395
+ extras : List [str ]
396
+ dependency_groups : List [str ]
397
+ default_groups : List [str ]
397
398
created_by : str
398
399
packages : List [Package ]
399
400
# (not supported) tool: Optional[Dict[str, Any]]
@@ -419,6 +420,9 @@ def from_dict(cls, d: Dict[str, Any]) -> "Self":
419
420
return cls (
420
421
lock_version = _get_required_as (d , str , Version , "lock-version" ),
421
422
environments = _get_list_as (d , str , Marker , "environments" ),
423
+ extras = _get_list (d , str , "extras" ) or [],
424
+ dependency_groups = _get_list (d , str , "dependency-groups" ) or [],
425
+ default_groups = _get_list (d , str , "default-groups" ) or [],
422
426
created_by = _get_required (d , str , "created-by" ),
423
427
requires_python = _get_as (d , str , SpecifierSet , "requires-python" ),
424
428
packages = _get_required_list_of_objects (d , Package , "packages" ),
0 commit comments