Skip to main content

Pragtical v3.12.2 Release

· 2 min read
Jefferson Gonzalez
Contributor of Pragtical

Pragtical v3.12.2 is out with SDL GPU rendering fixes, faster dense rectangle replay, directory monitor reliability improvements, Unicode search fixes, and a small environment API enhancement for plugins.

SDL GPU Updates

The SDL GPU backend continues to mature after the v3.12 renderer split. This release makes polygon triangulation tolerate degenerate input better and fixes degenerate polygon rendering cases that could appear in unusual draw paths.

Dense rectangle replay is also faster now, improving one of the common batched rendering paths used by the editor UI.

Search And File Watching

Plain case-insensitive search now uses Unicode-aware lowercasing in the shared document search path. This keeps next and previous match navigation aligned with the search UI match counter for non-ASCII text such as Cyrillic. Thanks to 2trvl for reporting the issue.

Directory monitor reliability was also improved, reducing missed or stale file change notifications. Thanks to AmerM137 for the reminder that this part of the editor still needs improvements.

Runtime And Plugin API Fixes

A startup segfault on i386 Linux (caused by wrong compilation of LuaJIT) was reported by jschwartzenberg. The 32-bit LuaJIT x86 build was fixed by preprocessing the VM assembly, which restores startup on that target.

As requested by asumbek, the existing system.setenv API can now unset environment variables by calling it without a value, or with nil:

system.setenv("NAME")
system.setenv("NAME", nil)

This covers the system.unsetenv use case without adding a separate API.

Downloads on GitHub.

Changes Log

Enhancements

  • Make SDLGPU polygon triangulation degenerate-tolerant (#552)

  • Speed up dense SDLGPU rect replay (#557)

  • Allow system.setenv to unset values (#560)

Fixes

  • Fix degenerate SDLGPU polygons (#555)

  • Fix Unicode case-insensitive search (#558)

  • Fix directory monitor reliability (#554)

  • Fix LuaJIT 32-bit x86 startup crash (#559)