Download Latest Version PikaPython v1.14.0 Release Announcement source code.zip (241.5 MB)
Email in envelope

Get an email when there's a new version of PikaPython

Home / v1.14.0
Name Modified Size InfoDownloads / Week
Parent folder
PikaPython v1.14.0 Release Announcement source code.tar.gz 2026-07-18 230.6 MB
PikaPython v1.14.0 Release Announcement source code.zip 2026-07-18 241.5 MB
README.md 2026-07-18 3.9 kB
Totals: 3 Items   472.1 MB 3

PikaPython v1.14.0 Release Announcement

We are pleased to announce PikaPython v1.14.0. This release focuses on Python 3 syntax compatibility, runtime correctness, VM performance, fatal-error visibility, and threading support.

New Features and Improvements

  • Python 3 Compatibility: Improved short-circuit expressions, chained comparisons, unpacking, comprehensions, default arguments, variable arguments, and keyword argument binding within the existing syntax subset.
  • Exception Semantics: Typed except now matches exception types and parent classes correctly. Nested handler exceptions propagate outward, and except ... as alias preserves the actual exception type.
  • Threading Support: Added the threading package and improved Lock/RLock behavior and tests.
  • VM Performance: Reduced redundant function, argument, keyword, and object-path lookups. The Fibonacci workload uses approximately 10.1% fewer dynamic instructions across two Callgrind-verified optimization rounds.
  • Fatal Error Diagnostics: Stack exhaustion and other fatal resource failures now report capacity, requested size, and execution state before entering the platform panic path.
  • Release Tooling: Added consistent validation for runtime versions, package indexes, CMSIS Pack metadata, Git tags, and release commits.

Bug Fixes

  • Fixed crashes and silent failures caused by malformed imports, assignments, comprehensions, and unsupported expression forms.
  • Fixed incorrect behavior in grouped comparisons and short-circuit expressions.
  • Fixed default parameters whose value was False.
  • Fixed positional, keyword, starred, and variadic argument binding errors.
  • Fixed typed exception dispatch and parent-class exception matching.
  • Fixed nested exception handlers losing the outer try state.
  • Fixed iteration and slicing errors that could leave invalid runtime state.
  • Fixed excessive argument handling so invalid capacity requests are rejected before writing outside the VM stack.
  • Improved error propagation and heap cleanup after failed runtime calls.
  • Fixed Linux CI isolation and benchmark publishing failures caused by generated files and optional dependencies.

Performance Improvements

  • Optimized recursive global function lookup.
  • Removed redundant unqualified host-object path scans.
  • Reduced repeated keyword constant-pool scans.
  • Reduced argument-binding and unpack-validation overhead.
  • Streamlined successful VM error-stack checks.
  • Reduced core Flash usage in several optimization rounds without adding persistent RAM.

The Fibonacci benchmark showed an accumulated 10.1% reduction in dynamic instructions. This is not presented as an exact wall-clock speedup because the current benchmark export does not yet retain complete repeated-sample statistics.

Module Releases

Package State Version
pikascript-core Update v1.13.4 -> v1.14.0
PikaStdLib Update v1.13.4 -> v1.14.0
threading New v0.1.0
requests Update v1.0.3 -> v1.0.4
mqtt Update v0.1.1 -> v0.1.2
time Update v0.2.2 -> v0.2.3

Validation

  • Release metadata, runtime headers, CMSIS Pack metadata, package indexes, and the annotated tag are consistent.
  • Linux Release core compilation passed.
  • Python 3 exception, recursive lookup, and error propagation tests passed.
  • Development-cycle Linux regression and Valgrind checks completed without heap leaks.
  • A fresh clone of v1.14.0 passed release consistency checks and core compilation.

Known Issues

  • optimize_speed exception tests may still be sensitive to GTest registration and startup allocation layout.
  • Some Linux REPL tests still depend on unstable fixed log indexes.
  • GitHub Pages benchmark exports do not yet include complete repeated-sample variance statistics.

Special thanks to all contributors and users who reported compatibility, runtime, and embedded-system issues.

Source: README.md, updated 2026-07-18