• v1.3.0 24fed64f83

    v1.3.0
    Build PCM package / build (push) Successful in 7s
    Stable

    gitea-actions released this 2026-07-23 13:37:17 +07:00 | 2 commits to main since this release

    The plugin now works on macOS. Results are unchanged from 1.2.2 for
    the same board and settings - nothing in the numerics was touched;
    this release is platform fixes and per-OS documentation.

    macOS (field-tested on KiCad 10):

    • Fixed a crash on launch. KiCad's macOS builds bundle Python 3.9,
      and one module's type annotations were evaluated at import there
      ("unsupported operand type(s) for |: 'type' and 'NoneType'"). The
      plugin now runs on 3.9, and a test walks every shipped module so
      the incompatibility cannot silently return.
    • Fixed every figure - the error figure included - refusing to render
      with "Cannot load backend 'TkAgg' ... as 'qt' is currently
      running". macOS' bundled Python ships tkinter, so matplotlib
      preferred Tk while the selection dialog had already made the
      process a Qt one. Qt (PySide6, a hard dependency) is now always
      the first choice on every platform.
    • A board in a read-only location - such as the demo projects opened
      straight from the mounted installer image - no longer kills the run
      when the results directory cannot be created next to the board.
      Results fall back to a temp directory and the path is printed to
      the Messages panel.
    • The test suite additionally runs against the stack a Mac plugin
      environment actually resolves (Python 3.9, numpy 2.0, scipy 1.13,
      matplotlib 3.9, PySide6 6.10) - 140 tests on both stacks.

    Linux:

    • On ARM64 (aarch64) the plugin environment could never build: pyamg
      publishes no wheels for that platform, KiCad installs wheels only,
      and one unresolvable requirement fails the whole environment.
      pyamg is now skipped there and the solver falls back to Jacobi-CG -
      same results, noticeably slower on large grids. Linux as a whole
      remains untested; reports welcome.

    Documentation:

    • Setup now gives dedicated instructions per operating system: which
      interpreter path to check, how to deploy, and where the plugin's
      Python environment lives on Windows, macOS and Linux (for the
      delete-and-restart recovery). A platform-notes section records what
      is actually tested on each OS and what to expect there.
    Downloads