circuitpython/extmod
Jim Mussared 32db4c58f7 extmod/moddeflate: Change default window size.
The primary purpose of this commit is to make decompress default to
wbits=15 when the format is gzip (or auto format with gzip detected). The
idea is that someone decompressing a gzip stream should be able to use the
default `deflate.DeflateIO(f)` and it will "just work" for any input
stream, even though it uses a lot of memory.

This is done by making uzlib report gzip files as having wbits set to 15
in their header (where it previously only set the wbits out parameter for
zlib files), and then fixing up the logic in `deflateio_init_read`.

Updates the documentation to match.

This work was funded through GitHub Sponsors.

Signed-off-by: Jim Mussared <jim.mussared@gmail.com>
2023-09-01 12:23:37 +10:00
..
asyncio extmod/asyncio/uasyncio.py: Add backwards-compatible uasyncio alias. 2023-06-19 18:37:34 +10:00
axtls-include extmod/axtls-include: Add back needed header files for building axTLS. 2023-01-12 16:04:57 +11:00
btstack extmod/btstack: Fix marking of static addresses in set_random_address. 2023-06-14 22:20:20 +10:00
lwip-include all: Unify header guard usage. 2017-07-18 11:57:39 +10:00
mbedtls extmod/mbedtls: Remove brainpool curves from config. 2022-10-22 19:12:46 +11:00
nimble all: Fix spelling mistakes based on codespell check. 2023-04-27 18:03:06 +10:00
extmod.cmake all: Remove query-variants make target. 2023-08-15 17:37:44 +10:00
extmod.mk extmod/moddeflate: Add deflate module providing the DeflateIO class. 2023-07-21 19:32:40 +10:00
font_petme128_8x8.h extmod: Move font_petme128_8x8.h from ports/stm32 to extmod. 2022-05-05 13:30:40 +10:00
machine_bitstream.c extmod: Add machine.bitstream. 2021-08-19 22:50:11 +10:00
machine_bitstream.h extmod: Add machine.bitstream. 2021-08-19 22:50:11 +10:00
machine_i2c.c py/obj: Convert make_new into a mp_obj_type_t slot. 2022-09-19 19:06:15 +10:00
machine_i2c.h py/obj: Convert make_new into a mp_obj_type_t slot. 2022-09-19 19:06:15 +10:00
machine_mem.c py/obj: Convert make_new into a mp_obj_type_t slot. 2022-09-19 19:06:15 +10:00
machine_mem.h all: Use the name MicroPython consistently in comments 2017-07-31 18:35:40 +10:00
machine_pinbase.c py/obj: Convert make_new into a mp_obj_type_t slot. 2022-09-19 19:06:15 +10:00
machine_pinbase.h all: Unify header guard usage. 2017-07-18 11:57:39 +10:00
machine_pulse.c esp8266: Provide custom machine_time_pulse_us that feeds soft WDT. 2019-07-01 22:53:00 +10:00
machine_pulse.h all: Unify header guard usage. 2017-07-18 11:57:39 +10:00
machine_pwm.c extmod/machine_pwm: Remove PWM_INIT and PWM_DUTY_U16_NS config options. 2023-05-04 13:19:19 +10:00
machine_pwm.h extmod/machine_pwm: Factor out machine.PWM bindings to common code. 2021-09-04 16:31:17 +10:00
machine_signal.c py/obj: Convert make_new into a mp_obj_type_t slot. 2022-09-19 19:06:15 +10:00
machine_signal.h all: Unify header guard usage. 2017-07-18 11:57:39 +10:00
machine_spi.c extmod: Add and reorganise compilation guards and includes. 2022-11-11 16:24:32 +11:00
machine_spi.h py/obj: Convert make_new into a mp_obj_type_t slot. 2022-09-19 19:06:15 +10:00
machine_timer.c extmod: Add and reorganise compilation guards and includes. 2022-11-11 16:24:32 +11:00
misc.h all: Rename mp_umodule*, mp_module_umodule* to remove the "u" prefix. 2023-06-08 17:54:04 +10:00
modasyncio.c extmod/asyncio: Rename uasyncio to asyncio. 2023-06-19 17:33:03 +10:00
modbinascii.c extmod/moddeflate: Add deflate module providing the DeflateIO class. 2023-07-21 19:32:40 +10:00
modbluetooth.c all: Use MP_REGISTER_EXTENSIBLE_MODULE for overrideable built-ins. 2023-06-08 17:54:21 +10:00
modbluetooth.h extmod/btstack: Add support for CCCD to allow client subscriptions. 2023-04-26 11:37:20 +10:00
modbtree.c extmod/modbtree: Undefine queue macros before including berkeley-db. 2023-06-23 15:34:22 +10:00
modcryptolib.c all: Use MP_REGISTER_EXTENSIBLE_MODULE for overrideable built-ins. 2023-06-08 17:54:21 +10:00
moddeflate.c extmod/moddeflate: Change default window size. 2023-09-01 12:23:37 +10:00
modframebuf.c extmod/modframebuf: Fix crash in FrameBuffer scrolling beyond extents. 2022-12-09 16:47:23 +11:00
modhashlib.c extmod: Update to support mbedtls 3.x. 2023-06-23 15:22:27 +10:00
modheapq.c all: Use MP_REGISTER_EXTENSIBLE_MODULE for overrideable built-ins. 2023-06-08 17:54:21 +10:00
modjson.c all: Use MP_REGISTER_EXTENSIBLE_MODULE for overrideable built-ins. 2023-06-08 17:54:21 +10:00
modlwip.c all: Use MP_REGISTER_EXTENSIBLE_MODULE for overrideable built-ins. 2023-06-08 17:54:21 +10:00
modnetwork.c stm32: Update to use the open-source lib version of cyw43-driver. 2023-03-01 01:27:12 +11:00
modnetwork.h all: Rename UMODULE to MODULE in preprocessor/Makefile vars. 2023-06-08 17:54:11 +10:00
modonewire.c all: Remove third argument to MP_REGISTER_MODULE. 2022-06-02 16:31:37 +10:00
modos.c all: Use MP_REGISTER_EXTENSIBLE_MODULE for overrideable built-ins. 2023-06-08 17:54:21 +10:00
modplatform.c all: Use MP_REGISTER_EXTENSIBLE_MODULE for overrideable built-ins. 2023-06-08 17:54:21 +10:00
modplatform.h extmod/modplatform: Set MICROPY_PLATFORM_ARCH on riscv platforms. 2023-06-23 15:34:22 +10:00
modrandom.c all: Use MP_REGISTER_EXTENSIBLE_MODULE for overrideable built-ins. 2023-06-08 17:54:21 +10:00
modre.c all: Use MP_REGISTER_EXTENSIBLE_MODULE for overrideable built-ins. 2023-06-08 17:54:21 +10:00
modselect.c extmod/modselect: Properly track number of poll objects that are fd's. 2023-08-14 18:48:47 +10:00
modsocket.c all: Use MP_REGISTER_EXTENSIBLE_MODULE for overrideable built-ins. 2023-06-08 17:54:21 +10:00
modssl_axtls.c extmod/modssl: Add SSLContext class. 2023-06-26 16:34:41 +10:00
modssl_mbedtls.c extmod/modssl_mbedtls: Clear sock member if error creating SSLSocket. 2023-08-30 13:52:31 +10:00
modtime.c all: Use MP_REGISTER_EXTENSIBLE_MODULE for overrideable built-ins. 2023-06-08 17:54:21 +10:00
modtime.h all: Rename *umodule*.h to remove the "u" prefix. 2023-06-08 17:54:14 +10:00
moductypes.c all: Use MP_REGISTER_EXTENSIBLE_MODULE for overrideable built-ins. 2023-06-08 17:54:21 +10:00
modwebrepl.c all: Rename *umodule*.h to remove the "u" prefix. 2023-06-08 17:54:14 +10:00
modwebsocket.c all: Use MP_REGISTER_EXTENSIBLE_MODULE for overrideable built-ins. 2023-06-08 17:54:21 +10:00
modwebsocket.h all: Rename *umodule*.h to remove the "u" prefix. 2023-06-08 17:54:14 +10:00
mpbthci.c extmod/modbluetooth: Refactor stack/hci/driver/port bindings. 2020-09-08 11:41:31 +10:00
mpbthci.h extmod/nimble: Add support for reading whole HCI UART packets. 2022-06-03 11:53:28 +10:00
network_cyw43.c extmod/network_cyw43: Add power management constants. 2023-05-08 11:56:31 +10:00
network_cyw43.h extmod: Add network-level class binding to cyw43 driver. 2019-06-03 16:47:35 +10:00
network_lwip.c extmod/modnetwork: Allow more extensive port-specific customisation. 2023-03-01 01:26:44 +11:00
network_ninaw10.c extmod/network_ninaw10: Add missing raw socket type to socket(). 2023-04-05 09:46:46 +10:00
network_wiznet5k.c extmod/modnetwork: Use a type protocol to implement NIC functions. 2022-12-15 17:40:06 +11:00
os_dupterm.c all: Rename *umodule*.c to remove the "u" prefix. 2023-06-08 17:54:17 +10:00
utime_mphal.h all: Rename *umodule*.h to remove the "u" prefix. 2023-06-08 17:54:14 +10:00
vfs_blockdev.c all: Reformat C and Python source code with tools/codeformat.py. 2020-02-28 10:33:03 +11:00
vfs_fat_diskio.c tools/uncrustify: Enable more opts to remove space between func and '('. 2020-06-19 22:07:32 +10:00
vfs_fat_file.c py/stream: Add mp_stream___exit___obj that calls mp_stream_close. 2023-07-21 18:49:03 +10:00
vfs_fat.c py/obj: Convert make_new into a mp_obj_type_t slot. 2022-09-19 19:06:15 +10:00
vfs_fat.h extmod: Factor out block-device struct to make independent of fatfs. 2019-10-29 12:12:37 +11:00
vfs_lfs.c extmod: Add and reorganise compilation guards and includes. 2022-11-11 16:24:32 +11:00
vfs_lfs.h extmod: Add VFS littlefs bindings. 2019-10-29 14:17:29 +11:00
vfs_lfsx_file.c py/stream: Add mp_stream___exit___obj that calls mp_stream_close. 2023-07-21 18:49:03 +10:00
vfs_lfsx.c extmod/vfs_lfsx: Fix offset used before range check. 2023-05-19 22:01:10 +10:00
vfs_posix_file.c extmod/modselect: Add optimisation to use system poll when possible. 2023-08-07 12:11:40 +10:00
vfs_posix.c all: Rename UMODULE to MODULE in preprocessor/Makefile vars. 2023-06-08 17:54:11 +10:00
vfs_posix.h extmod/vfs: Introduce a C-level VFS protocol, with fast import_stat. 2018-06-06 14:33:42 +10:00
vfs_reader.c extmod/vfs_reader: Fix mp_reader_new_file to open file in "rb" mode. 2020-08-12 23:40:50 +10:00
vfs.c py/obj: Convert make_new into a mp_obj_type_t slot. 2022-09-19 19:06:15 +10:00
vfs.h py/builtin: Clean up and simplify import_stat and builtin_open config. 2022-05-25 13:04:45 +10:00
virtpin.c py/obj: Add accessors for type slots and use everywhere. 2022-09-19 19:06:07 +10:00
virtpin.h all: Unify header guard usage. 2017-07-18 11:57:39 +10:00