]> git.ipfire.org Git - thirdparty/httpx.git/commitdiff
Don't pickle request/response extensions (#1892)
authorTom Christie <tom@tomchristie.com>
Wed, 13 Oct 2021 12:45:29 +0000 (13:45 +0100)
committerGitHub <noreply@github.com>
Wed, 13 Oct 2021 12:45:29 +0000 (13:45 +0100)
httpx/_models.py

index bf99469ca65730842e57e22739051bb864b5b203..925f329da0bd32efd26e62205b57a91d17942077 100644 (file)
@@ -1185,12 +1185,13 @@ class Request:
         return {
             name: value
             for name, value in self.__dict__.items()
-            if name not in ["stream"]
+            if name not in ["extensions", "stream"]
         }
 
     def __setstate__(self, state: typing.Dict[str, typing.Any]) -> None:
         for name, value in state.items():
             setattr(self, name, value)
+        self.extensions = {}
         self.stream = UnattachedStream()
 
 
@@ -1545,13 +1546,14 @@ class Response:
         return {
             name: value
             for name, value in self.__dict__.items()
-            if name not in ["stream", "is_closed", "_decoder"]
+            if name not in ["extensions", "stream", "is_closed", "_decoder"]
         }
 
     def __setstate__(self, state: typing.Dict[str, typing.Any]) -> None:
         for name, value in state.items():
             setattr(self, name, value)
         self.is_closed = True
+        self.extensions = {}
         self.stream = UnattachedStream()
 
     def read(self) -> bytes: