File tree Expand file tree Collapse file tree 3 files changed +11
-15
lines changed
Expand file tree Collapse file tree 3 files changed +11
-15
lines changed Original file line number Diff line number Diff line change 22
33from __future__ import annotations
44
5+ import sys
56import zlib
67
78from kombu .utils .encoding import ensure_bytes
@@ -104,18 +105,13 @@ def decompress(body, content_type):
104105 'application/x-lzma' , aliases = ['lzma' , 'xz' ])
105106
106107try :
107- import zstandard as zstd
108+ if sys .version_info >= (3 , 14 ):
109+ from compression import zstd
110+ else :
111+ from backports import zstd
108112except ImportError : # pragma: no cover
109- pass
113+ pass # no zstd support
110114else :
111- def zstd_compress (body ):
112- c = zstd .ZstdCompressor ()
113- return c .compress (body )
114-
115- def zstd_decompress (body ):
116- d = zstd .ZstdDecompressor ()
117- return d .decompress (body )
118-
119- register (zstd_compress ,
120- zstd_decompress ,
115+ register (zstd .compress ,
116+ zstd .decompress ,
121117 'application/zstd' , aliases = ['zstd' , 'zstandard' ])
Original file line number Diff line number Diff line change 1- zstandard==0.25.0
1+ backports.zstd==1.0.0; python_version<'3.14'
Original file line number Diff line number Diff line change @@ -27,7 +27,7 @@ def test_encoders__lzma(self):
2727 assert 'application/x-lzma' in compression .encoders ()
2828
2929 def test_encoders__zstd (self ):
30- pytest .importorskip ('zstandard ' )
30+ pytest .importorskip ('compression.zstd' if sys . version_info >= ( 3 , 14 ) else 'backports.zstd ' )
3131
3232 assert 'application/zstd' in compression .encoders ()
3333
@@ -64,7 +64,7 @@ def test_compress__decompress__lzma(self):
6464 assert d == text
6565
6666 def test_compress__decompress__zstd (self ):
67- pytest .importorskip ('zstandard ' )
67+ pytest .importorskip ('compression.zstd' if sys . version_info >= ( 3 , 14 ) else 'backports.zstd ' )
6868
6969 text = b'The Brown Quick Fox Over The Lazy Dog Jumps'
7070 c , ctype = compression .compress (text , 'zstd' )
You can’t perform that action at this time.
0 commit comments