Почему новый zstd на Python 3.14 не совместим на двоичном уровне со старым zstandard [закрыто]Python

Программы на Python
Anonymous
Почему новый zstd на Python 3.14 не совместим на двоичном уровне со старым zstandard [закрыто]

Сообщение Anonymous »

Новый zstd версии 3.14 не совместим на уровне двоичного кода со старым zstandard!? В частности, если вы используете fzstd на стороне Javascript для распаковки, а это на стороне Python, то вам конец:

Код: Выделить всё

    cctx = zstd.ZstdCompressor(level=3)
zstd_data = cctx.compress(raw_data)
Новый zstd немного больше (например, 675133 байта старого против 689349 байт нового), и fzstd умрет с сообщением об ошибке «неожиданный EOF».
Но если я напишу вместо этого

Код: Выделить всё

    zstd_new = zstd.compress(packed, level=3)
тогда и новые, и старые файлы одинаковы (и fzstd работает)
Так, видимо, это как-то связано с формулировкой CCTX? Что это вообще дает?!

Подробнее здесь: https://stackoverflow.com/questions/798 ... -zstandard

Вернуться в «Python»