From ee7fa43d2aba4789beba3fd49bc47176b51977e2 Mon Sep 17 00:00:00 2001 From: TresYap <33246797+TresYap@users.noreply.github.com> Date: Tue, 7 Jan 2025 01:50:51 +0800 Subject: [PATCH] fix: swapped _R_co and _P to prevent type error. (#20508) When loading a pytorch-lightning model from MLFlow, I get `TypeError: Type parameter +_R_co without a default follows type parameter with a default`. This happens whenever doing `import pytorch_lightning as pl` which is done by packages like MLFlow. Co-authored-by: Jirka Borovec <6035284+Borda@users.noreply.github.com> Co-authored-by: Luca Antiga --- src/lightning/pytorch/utilities/model_helpers.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/lightning/pytorch/utilities/model_helpers.py b/src/lightning/pytorch/utilities/model_helpers.py index 44591aa7f4..daf1c400c0 100644 --- a/src/lightning/pytorch/utilities/model_helpers.py +++ b/src/lightning/pytorch/utilities/model_helpers.py @@ -104,7 +104,7 @@ _P = ParamSpec("_P") # parameters of the decorated method _R_co = TypeVar("_R_co", covariant=True) # return type of the decorated method -class _restricted_classmethod_impl(Generic[_T, _P, _R_co]): +class _restricted_classmethod_impl(Generic[_T, _R_co, _P]): """Drop-in replacement for @classmethod, but raises an exception when the decorated method is called on an instance instead of a class type."""