Skip to content

Releases: BrianPugh/install-micropython

v3.0.0

Choose a tag to compare

@BrianPugh BrianPugh released this 09 Jul 22:42

Breaking changes

  • The action now runs on the node24 runtime. GitHub-hosted runners are unaffected; self-hosted runners must be v2.327.1 or newer.
  • The cflags input now applies only to the micropython Unix port build, not to mpy-cross. mpy-cross's fixed feature configuration fails to compile with many otherwise-valid MicroPython feature flags; its meaningful options (target architecture, emitter, optimization level) are runtime CLI flags and are unaffected. CFLAGS_EXTRA is still exported to all subsequent steps of the job.
  • The MicroPython repository is cloned to os.homedir()/micropython instead of a hardcoded /home/runner/micropython. This is unchanged on GitHub-hosted runners; on self-hosted runners, use the MPY_DIR environment variable rather than a hardcoded path.

New features

  • New outputs: cache-hit ('true'/'false') and sha (the resolved MicroPython commit SHA), useful for keying your own caches off the exact MicroPython version.
  • New submodules input (default true): submodules are now initialized even on cache hits, so MPY_DIR works for natmod-style builds on warm runs (previously these passed on the first run and failed on cached re-runs). Set to false to make cached runs ~30 seconds faster if you only need the micropython/mpy-cross binaries.
  • Tag references are fetched with a fast shallow clone; branches and commit SHAs use a full clone so the built interpreter reports an accurate git describe-based version string.

Fixes

  • Git commands are invoked with argument arrays, preventing argument injection via the repository/reference inputs.
  • A cache-save race between concurrent jobs building the same configuration no longer fails an otherwise-successful build.
  • Build parallelism comes from os.cpus() instead of nproc, for self-hosted portability.

Full Changelog: v2...v3.0.0

v2.4.0

Choose a tag to compare

@BrianPugh BrianPugh released this 19 Jun 19:27

Maintenance release — no runtime or input changes. Workflows on @v2 need no updates. Upgraded the GitHub Actions toolkit (@actions/cache 6.1.0, @actions/core 3.0.1, @actions/exec/@actions/io 2.0.0) and@vercel/ncc 0.44.0; migrated to ESM (#43).

Full Changelog: v2...v2.4.0

v2.3.0

Choose a tag to compare

@BrianPugh BrianPugh released this 05 Dec 18:25

What's Changed

  • Bump @vercel/ncc from 0.38.1 to 0.38.3
  • Bump @actions/core from 1.10.1 to 1.11.1
  • Bump @actions/cache from 3.2.4 to 4.0.0

Full Changelog: v2...v2.3.0

v2.2.0

Choose a tag to compare

@BrianPugh BrianPugh released this 20 Sep 13:48

What's Changed

Full Changelog: v2...v2.2.0

v2.1.0

Choose a tag to compare

@BrianPugh BrianPugh released this 22 Apr 04:26

Features

  • Add ${MPY_DIR}/mpy-cross/build/mpy-cross to the cache paths; some tools (somewhat) inappropriately hardcode this location for the mpy-cross executable.

Full Changelog: v2.0.0...v2.1.0

v2.0.0

Choose a tag to compare

@BrianPugh BrianPugh released this 22 Apr 04:10

What's Changed

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

v1.0.6

Choose a tag to compare

@BrianPugh BrianPugh released this 17 Jan 22:05

What's Changed

New Contributors

Full Changelog: v1...v1.0.6

v1.0.5 - Speed Improvements

Choose a tag to compare

@BrianPugh BrianPugh released this 04 Jul 16:57

Features

  • No longer cache the micropython repository folder. We have to clone it anyways, and I don't believe the build files are useful to anyone downstream. This shrinks the cache from ~140MB to ~400KB, substantially speeding up cache compression, downloads, and uploads.

v1.0.4 - More cache fixes

Choose a tag to compare

@BrianPugh BrianPugh released this 03 Jul 19:12
c0792d8

Bug Fixes

v1.0.3 - Move out of GITHUB_WORKSPACE

Choose a tag to compare

@BrianPugh BrianPugh released this 03 Jul 06:05

Bugfixes

  • Moved the micropython repository folder out of GITHUB_WORKSPACE to not pollute the workspace.