From 50f01b02aefbf2e342c0c80f4d5106bad9c9de2f Mon Sep 17 00:00:00 2001 From: Isaac To Date: Mon, 31 Mar 2025 19:07:20 -0700 Subject: [PATCH] fix: add support of Pydantic 2.11 This commit changes accessing of `model_fields` to accesses from a Pydantic model class instead of an instance of such a class. Accesses of `model_fields` from a model class is deprecated in Pydantic V2.11 to be removed in V3.0. --- dandi/metadata/util.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dandi/metadata/util.py b/dandi/metadata/util.py index 719336fbe..9d1379e16 100644 --- a/dandi/metadata/util.py +++ b/dandi/metadata/util.py @@ -515,7 +515,7 @@ def extract_anatomy(metadata: dict) -> list[models.Anatomy] | None: def extract_model(modelcls: type[M], metadata: dict, **kwargs: Any) -> M: m = modelcls.model_construct() - for field in m.model_fields.keys(): + for field in modelcls.model_fields.keys(): value = kwargs.get(field, extract_field(field, metadata)) if value is not None: setattr(m, field, value)