From 65ecd5d5287491cb0c44541252a127144438da01 Mon Sep 17 00:00:00 2001 From: Rohitkr117 <145501871+Rohitkr117@users.noreply.github.com> Date: Tue, 29 Oct 2024 23:38:38 +0530 Subject: [PATCH] Fixes for Twisted Version Check and Typing Issues (#6511) --- scrapy/pipelines/media.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/scrapy/pipelines/media.py b/scrapy/pipelines/media.py index 61eddffa7..b10ec147b 100644 --- a/scrapy/pipelines/media.py +++ b/scrapy/pipelines/media.py @@ -15,8 +15,10 @@ from typing import ( cast, ) +from twisted import version as twisted_version from twisted.internet.defer import Deferred, DeferredList from twisted.python.failure import Failure +from twisted.python.versions import Version from scrapy.http.request import NO_CALLBACK, Request from scrapy.settings import Settings @@ -206,8 +208,8 @@ class MediaPipeline(ABC): # minimize cached information for failure result.cleanFailure() result.frames = [] - result.stack = [] - + if twisted_version <= Version("twisted", 24, 10, 0): + result.stack = [] # type: ignore[method-assign] # This code fixes a memory leak by avoiding to keep references to # the Request and Response objects on the Media Pipeline cache. #