From 2c8cec8a514486b253fabf84e835e512a47eb4cf Mon Sep 17 00:00:00 2001 From: Matt Fisher Date: Wed, 22 Sep 2021 11:54:16 +1000 Subject: [PATCH 1/3] Make middleware expose more wrapped attributes Include __name__, __module__, __qualname__, __doc__, __annotations__ Addresses #1145 --- sentry_sdk/integrations/django/middleware.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/sentry_sdk/integrations/django/middleware.py b/sentry_sdk/integrations/django/middleware.py index e6a1ca5bd9..8f14e60ad0 100644 --- a/sentry_sdk/integrations/django/middleware.py +++ b/sentry_sdk/integrations/django/middleware.py @@ -174,7 +174,8 @@ def __call__(self, *args, **kwargs): with middleware_span: return f(*args, **kwargs) - if hasattr(middleware, "__name__"): - SentryWrappingMiddleware.__name__ = middleware.__name__ + for attr in ('__name__', '__module__', '__qualname__', '__doc__', '__annotations__'): + if hasattr(middleware, attr): + setattr(SentryWrappingMiddleware, attr, getattr(middleware, attr)) return SentryWrappingMiddleware From 1f53b9a9f6241a7617cdcbb67af2f93492159063 Mon Sep 17 00:00:00 2001 From: Neel Shah Date: Wed, 9 Mar 2022 14:26:06 +0100 Subject: [PATCH 2/3] Lint --- sentry_sdk/integrations/django/middleware.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/sentry_sdk/integrations/django/middleware.py b/sentry_sdk/integrations/django/middleware.py index 8f14e60ad0..ee989e1ad8 100644 --- a/sentry_sdk/integrations/django/middleware.py +++ b/sentry_sdk/integrations/django/middleware.py @@ -174,7 +174,13 @@ def __call__(self, *args, **kwargs): with middleware_span: return f(*args, **kwargs) - for attr in ('__name__', '__module__', '__qualname__', '__doc__', '__annotations__'): + for attr in ( + "__name__", + "__module__", + "__qualname__", + "__doc__", + "__annotations__", + ): if hasattr(middleware, attr): setattr(SentryWrappingMiddleware, attr, getattr(middleware, attr)) From 78388207f893e23003cb0a2d139a40d435314a30 Mon Sep 17 00:00:00 2001 From: Neel Shah Date: Wed, 9 Mar 2022 15:04:39 +0100 Subject: [PATCH 3/3] Remove doc and annotations --- sentry_sdk/integrations/django/middleware.py | 2 -- 1 file changed, 2 deletions(-) diff --git a/sentry_sdk/integrations/django/middleware.py b/sentry_sdk/integrations/django/middleware.py index ee989e1ad8..c9001cdbf4 100644 --- a/sentry_sdk/integrations/django/middleware.py +++ b/sentry_sdk/integrations/django/middleware.py @@ -178,8 +178,6 @@ def __call__(self, *args, **kwargs): "__name__", "__module__", "__qualname__", - "__doc__", - "__annotations__", ): if hasattr(middleware, attr): setattr(SentryWrappingMiddleware, attr, getattr(middleware, attr))