v0.0.35
CircuitPython MCU ports
apply_cp_patches.sh bailed out with port=$PORT is not unix; skipping on every microcontroller port. Nothing about the module required unix — the only port-specific piece was where CircuitPython puts feature enables (variant makefile on unix, board makefile on MCU ports), so VARIANT_MK became ENABLE_MK, chosen per port.
Removing that gate exposed two problems that had never been reached:
-Werror=float-equal— CircuitPython enables it, MicroPython does not.gfx_shapes.ccompares a caller-supplied angle against exact0.0fto skip rotation, a deliberate fast path, so-Wno-float-equaljoins the per-source suppress list rather than relaxing the flag globally.- Double include —
circuitpython.mkis included from both the enable makefile and the port Makefile. Without a guard,SRC_Ccollected every source twice and the link failed with multiple definition of … naming the same object file on both sides.
Verified on raspberrypi / waveshare_rp2040_touch_lcd_1_28: builds clean at 93.80% of the 1020 KB firmware region, and import pygraphics resolves on the board with fill_rect and circle present. pygraphics costs ~59 KB there.
Also in this release
Accumulated since v0.0.34: PyScript runner abort timeout and typed-array unpacking fix, a real micropip call in the PyScript tab, dead example links repaired, live PyScript Pyodide runner links for examples and games, docs theme upgrade with benchmarks and Mermaid pipeline, refreshed pydevices_bundle.zip, and ruff import ordering.