python-snappy icon indicating copy to clipboard operation
python-snappy copied to clipboard

0.7.3 has breaking changes to 0.7.2

Open seperman opened this issue 1 year ago • 3 comments

Hello, Seems like patch versions were used for backward incompatible changes. Example:

I have the following function that works fine in 0.7.2:

def snappy_decompress_stream(in_file, out_file):
    decompress_func, read_chunk = snappy_formats.get_decompress_function(snappy_formats.DEFAULT_FORMAT, in_file)
    decompress_func(in_file, out_file, start_chunk=read_chunk)

The above function doesn't work in 0.7.3 There is no snappy_formats.DEFAULT_FORMAT anymore. Looking at the unit tests, it seems get_decompress_functionis not used and instead a snappy.StreamCompressor is introduced.

I'm a little confused about a patch breaking all the above!

seperman avatar Sep 16 '24 07:09 seperman

Essentially since 0.7.0 (particularly #130 ), this repo is a simple thin wrapper around cramjam. At that time, many more niche features of the old library were dropped, but I have added them back in one by one on request.

I think your function is expected to work, but is apparently not tested. It sounds like you have all the context to be able to re=introduce it and make your code work as before (and add a test to make sure it doesn't happen again). Would you like to take this on?

martindurant avatar Sep 16 '24 15:09 martindurant

Hi @martindurant I don't have the bandwidth yet. For now I will stick with the older version of Snappy until one of customers actually uses Snappy. So far everybody has stuck with zip and gzip

seperman avatar Sep 20 '24 23:09 seperman

I would honestly say, that the step up from g/zip these days is zstd, not snappy :)

martindurant avatar Sep 23 '24 13:09 martindurant