Blame SOURCES/0001-fix-decorate_class.patch

rdobuilder 5ab42c
From e63874ce75a74a1159390914045fe8e7955b24c4 Mon Sep 17 00:00:00 2001
rdobuilder 5ab42c
From: Karthikeyan Singaravelan <tir.karthi@gmail.com>
rdobuilder 5ab42c
Date: Fri, 7 May 2021 15:51:33 +0000
rdobuilder 5ab42c
Subject: [PATCH] Fix decorate_class for Python 3.10 where staticmethod is
rdobuilder 5ab42c
 callable.
rdobuilder 5ab42c
rdobuilder 5ab42c
---
rdobuilder 5ab42c
 freezegun/api.py | 5 ++++-
rdobuilder 5ab42c
 1 file changed, 4 insertions(+), 1 deletion(-)
rdobuilder 5ab42c
rdobuilder 5ab42c
diff --git a/freezegun/api.py b/freezegun/api.py
rdobuilder 5ab42c
index cab9ebe..55a80c7 100644
rdobuilder 5ab42c
--- a/freezegun/api.py
rdobuilder 5ab42c
+++ b/freezegun/api.py
rdobuilder 5ab42c
@@ -598,7 +598,10 @@ def tearDownClass(cls):
rdobuilder 5ab42c
                         continue
rdobuilder 5ab42c
                     seen.add(attr)
rdobuilder 5ab42c
 
rdobuilder 5ab42c
-                    if not callable(attr_value) or inspect.isclass(attr_value):
rdobuilder 5ab42c
+                    # staticmethods are callable from Python 3.10 . Hence skip them from decoration
rdobuilder 5ab42c
+                    if (not callable(attr_value)
rdobuilder 5ab42c
+                        or inspect.isclass(attr_value)
rdobuilder 5ab42c
+                        or isinstance(attr_value, staticmethod)):
rdobuilder 5ab42c
                         continue
rdobuilder 5ab42c
 
rdobuilder 5ab42c
                     try:
rdobuilder 5ab42c