extmod/moddeflate: Add deflate module providing the DeflateIO class.

This provides similar functionality to the former zlib.DecompIO and
especially CPython's gzip.GzipFile for both compression and decompression.

This class can be used directly, and also can be used from Python to
implement (via io.BytesIO) zlib.decompress and zlib.compress, as well as
gzip.GzipFile.

Enable/disable this on all ports/boards that zlib was previously configured
for.

This work was funded through GitHub Sponsors.

Signed-off-by: Jim Mussared <jim.mussared@gmail.com>
This commit is contained in:
Jim Mussared
2023-06-26 13:52:10 +10:00
committed by Damien George
parent e6c290c3d1
commit 3533924c36
12 changed files with 434 additions and 10 deletions

View File

@@ -110,6 +110,7 @@
#define MICROPY_PY_THREAD_GIL (1)
#define MICROPY_PY_BINASCII (1)
#define MICROPY_PY_UCTYPES (0)
#define MICROPY_PY_DEFLATE (0)
#define MICROPY_PY_JSON (1)
#define MICROPY_PY_RE (1)
#define MICROPY_PY_HEAPQ (0)