Skip to content

Version 2.0.0

Latest

Choose a tag to compare

@Gadgetoid Gadgetoid released this 27 Aug 14:57
9a26b2a

Version 2.0.0

Bump MicroPython to v1.29.0 and modernise the build. Unlike v1.0.0, the
LittleFS on-disk format is unchanged, so your files survive the update.

Breaking

  • Take const source buffers when drawing - custom blend functions must
    change their signature to const color_t *ps
  • Make SPRITESHEET and _font const pointers

MicroPython

  • Bump to MicroPython v1.29.0
  • Overclock from a board MICROPY_BOARD_STARTUP hook, dropping the last
    downstream patch to MicroPython
  • Zero a new Buffer, so uncovered pixels are transparent rather than noise
  • Add a B+Y boot-time escape hatch to rename a broken main.py

C/C++ API

  • Add released() to test for a button released this frame
  • Add SCREEN_WIDTH and SCREEN_HEIGHT
  • Report a non-zero stats.idle

Fixes

  • Stop snake hanging when the apple lands on the snake
  • Generate PIO headers before the qstr scan, so a clean build works first time

Build and CI

  • Bump Pico SDK to 2.3.0 and arm-none-eabi-gcc to 15.3.Rel1
  • Build via ci/micropython.sh, shared by CI and local builds
  • Replace flake8 with ruff, and lint tools/
  • Move to ubuntu-24.04 and current workflow actions
  • KEEP .stack and .heap in the linker script, which Pico SDK >2.1.1
    needs to leave crt0 spacers enabled

Thanks to @zenodante, @joewreschnig and @menehune23, whose PRs are included.

Merged PRs

Full Changelog: v1.0.0...v2.0.0