unix/variants: Enable MICROPY_DEBUG_PARSE_RULE_NAME on coverage build.
py/parse: Expose rule-name printing as MICROPY_DEBUG_PARSE_RULE_NAME.
extmod/utime_mphal: Add generic utime.time_ns() function.
unix,windows: Implement mp_hal_time_ns using gettimeofday.
docs: Update I2C and SPI docs to add reference to SoftI2C and SoftSPI.
ports: Support legacy soft I2C/SPI construction via id=-1 arg.
ports: Add SoftI2C and SoftSPI to machine module where appropriate.
extmod/machine_spi: Remove "id" arg in SoftSPI constructor.
extmod/machine_i2c: Remove "id" arg in SoftI2C constructor.
extmod/machine_i2c: Rename type to SoftI2C and add custom print method.
py/makeversionhdr.py: Match only git tags which look like versions.
docs/reference/packages.rst: Fix typo, remove duplicate "port".
zephyr: Update build instructions to v2.4.0.
travis: Update zephyr build to v2.4.0.
zephyr: Const-ify struct device instance pointers.
zephyr: Replace zephyr integer types with C99 types.
extmod/modure: Allow \\ in re.sub replacements.
stm32/boards/NUCLEO_WB55: Add standalone WB55 FUS/WS firmware updater.
stm32/rfcore: Add Python API for basic rfcore operations.
stm32/sdcard: Fix H7 build when using SDMMC2.
stm32/sdio: Don't change any DMA2 settings on H7 MCUs.
esp32: Use path relative to root for netutils/timeutils headers.
stm32/Makefile: Allow boards to extend SRC_C, SRC_O and OBJ variables.
stm32/boards/NUCLEO_WB55/rfcore_firmware.py: Increase GET_STATE timeout.
stm32/boards/NUCLEO_WB55/rfcore_firmware.py: Fix bad variable name.
stm32/boards/NUCLEO_WB55/rfcore_firmware.py: Fix flash unlock.
py/objtype: Handle __dict__ attribute when type has no locals.
py/objdict: Add mp_const_empty_dict_obj, use it for mp_const_empty_map.
stm32/rfcore: Update to support WS=1.9.0.0.4.
docs/library/machine.Timer.rst: Add mention of constructor arguments.
docs/library/machine.Signal.rst: Correct typo: usecases to use cases.
docs/library/machine.rst: Correct minor typo: timout to timeout.
docs/library/btree.rst: Correct method typo: __detitem__ to __delitem__.
tools/upip.py: Support explicit port number in host.
ports: Use correct in/out endpoint size in TUD_CDC_DESCRIPTOR.
docs/reference/glossary.rst: Fix minor grammar error, An -> A.
stm32/usbd_cdc_interface: Check and handle CDC TX wrap-overflow.
stm32: Fix broken build when FAT FS multi-partition is disabled.
esp32/mpconfigport.h: Enable MICROPY_PY_DELATTR_SETATTR.
unix/mpconfigport.h: Enable MICROPY_PY_DELATTR_SETATTR.
unix: Enable more warnings.
mpy-cross: Enable more warnings.
py, extmod: Introduce and use MP_FALLTHROUGH macro.
extmod: Disable -Wmissing-field-initializers for lfs2.
py/vmentrytable: Ignore GCC -Woverride-init.
py, extmod: Add explicit initializers for default values.
py: Use unsigned comparison of chars.
py/objexcept: Compare mp_emergency_exception_buf_size signed.
py/scope: Name and use id_kind_type_t.
examples: Add example code for user C modules, both C and C++.
esp32,unix: Support building C++ code.
py/py.mk: Support C++ code for user C modules.
docs: Fix reference to QSTR_GEN_CFLAGS Makefile flag.
py: Workaround clang error when building misc.h with C++ compiler.
py/makeqstrdefs.py: Support preprocessing C++ files for QSTR generation.
py/mkrules.mk: Add target for compiling C++ files.
py/makeqstrdefs.py: Process C++ files as well.
py/makeqstrdefs.py: Fix beaviour when scanning non-C preprocessed files.
extmod/modurandom: Support urandom.seed() without an argument.
stm32/rng: Use SysTick+RTC+unique-id to seed pRNG for MCUs without RNG.
stm32/mpconfigport.h: Seed the urandom module on import.
esp8266/mpconfigport.h: Seed the urandom module on import.
esp32/mpconfigport.h: Seed the urandom module on import.
extmod/vfs_lfs: Support mounting LFS filesystems in read-only mode.
stm32/machine_adc: Fix ADC auto-calibration to run when ADC not enabled.
tests/thread/stress_schedule.py: Assign globals before running test.