Skip to main content

Pragtical v3.12.1 Release

· 2 min read
Jefferson Gonzalez
Contributor of Pragtical

Pragtical v3.12.1 is a focused follow-up to v3.12.0 with SDL GPU polish, renderer visibility improvements on Windows, and a Linux packaging fix for force-fallback builds.

SDL GPU Polish

The SDL GPU backend now prefers low-power devices when SDL reports them. This keeps the new renderer path friendlier to laptops and multi-GPU systems while still allowing SDL to choose a suitable backend for the platform. Thanks to allergicapple who reported the issue on https://github.com/pragtical/pragtical/issues/546, there may still additional steps to enable usage of the discrete GPU on a hybrid system like that of Nvidia Prime as datailed on that issue.

This release also fixes window color readback when SDL GPU is active, which keeps APIs that inspect rendered window pixels aligned with the current renderer.

Renderer Information

Renderer information is now exposed to Lua thru renwindow.get_renderer_info, and displayed on the About pane of the Settings, making it easier to inspect which renderer path is active while testing the new modular backend stack introduced in v3.12.0. Thanks to Kabcorp who raised the concern.

renderer info

Linux Symbol Exports

Linux builds no longer export every executable symbol by default just to support LuaJIT FFI calls into Pragtical internals. Instead, the build exports the small set of symbols used by data/core/jitsetup.lua.

This avoids exposing bundled dependency symbols from force-fallback builds, which could interfere with native desktop integration libraries loaded at runtime like libdecor under GNOME (thanks to satmandu who reported this issue). Builders that still need the old behavior can opt in with:

-Dexport_all_symbols=true

Thanks to everyone testing the v3.12 renderer work across different platforms.

Downloads on GitHub.

Changes Log

Enhancements

  • Prefer low-power SDLGPU devices (#548)

  • Expose renderer information on Windows (#549)

Fixes

  • Fix window color readback on SDLGPU (#550)

Build System

  • Limit Linux FFI symbol exports (#551)