Skip to content

gopdsdk v0.10.0 - Complete System Integration

Choose a tag to compare

@ivan-gromov-dev ivan-gromov-dev released this 17 Aug 18:03
· 17 commits to master since this release
d8f8a55

gopdsdk v0.10.0

This release completes the offline system and lifecycle integration planned for P10.

System control

  • Added copied launch arguments and loaded-game path.
  • Added restart with caller-provided launch arguments.
  • Added owned 400×240 system-menu images.
  • Added auto-lock and crank-sound controls with lifecycle restoration.
  • Added mirror-started and mirror-ended lifecycle events.
  • Added bounded ordered button callbacks with overflow reporting and termination suppression.

Clock and device environment

  • Added current Playdate epoch time with millisecond precision.
  • Added epoch/calendar conversion with validation.
  • Added an independent high-resolution elapsed timer.
  • Added copied OS version, language, and game PDX version information.
  • Moved Input.DeltaSeconds to the wrapping monotonic millisecond clock so frame updates no longer reset the public elapsed timer.

Intentional omissions

Low-level delay, allocator, instruction-cache, printf-style formatting/parsing, fatal-error, and raw userdata entry points remain outside the public Go API. They are runtime plumbing or have direct Go equivalents.

Native console logging remains a development facility. FPS remains available through the existing read-only playdate.Display capability without adding a system-owned FPS drawing contract.

Validation

  • Full go test ./... and go vet ./...
  • Windows, macOS, and Linux native CI
  • Linux race detector
  • Playdate SDK 3.1.1 Simulator compilation, packaging, and interactive acceptance
  • TinyGo conservative hard-float device compilation, linking, relocation validation, and packaging
  • Physical Playdate installation and complete P10.1/P10.2 interaction acceptance
  • Conservative-GC soak, bounded-memory validation, and unchanged post-run crashlog.txt and errorlog.txt

See MIGRATING.md for adoption guidance and CHANGELOG.md for detailed evidence.