Skip to content

Releases: matyalatte/tuw

v0.11.0

01 Mar 00:56
91cb834

Choose a tag to compare

Changelog

"id" is now required (#131)

As announced in #96, all components (except "static_text") now require "id". You will get errors when there are undefined ids in the command or when there are components which have no id.

Colored emojis for static controls on Windows (#136)

Static controls (most component labels) now render colored emojis on Windows 8.1 or later.

emoji_win11

Other changes

  • Added an error message for large JSON files. (#132)
  • Fixed a bug where tuw ignored help documents when the "gui" key was missing. (#137)
  • Fixed a bug where the error message for unknown codepages did not include line and column numbers. (#133)
  • Some code quality improvements. (#133, #134)

v0.10.2

20 Jul 12:17
975aa8b

Choose a tag to compare

Changelog

  • Fixed an issue where Tuw could not find the exe path on Windows 8 or older. (#127)
  • Fixed a segmentation fault that occurred when Tuw encountered a memory allocation error. (#124)
  • Further optimized binary size. (#123)

v0.10.1

17 May 21:46
3b2ec9f

Choose a tag to compare

Changelog

New Feature

  • Added use_save_dialog to file picker options (#115)
    (You can open a save dialog to select a new file.)

Bugfix

  • Fixed out-of-bounds error when executing an empty command. (#121)

Other Changes

  • Tuw now validates JSON before embedding it into exe. (#116)
  • Added two JSON errors for number picker options. (#117)
    ('inc' should be a positive number and 'max' should be greater than 'min'.)
  • Pull requests are now tested on FreeBSD and OpenBSD. (#114)
  • Optimized for binary size more. (#113, #119)

v0.10.0

19 Apr 02:35
70f5b43

Choose a tag to compare

Changelog

Improved JSON Parser (#108)

  • Replaced rapidjson with a custom JSON module, which reduced binary size (about 16% for Windows10 build.)
  • Tuw now shows error messages with line and column of a JSON file.
    e.g. "id" should be a string (line: 4, column: 5)
  • Revised some error messages.

Bug Fixes

  • Fixed a Windows-specific issue where merge and split commands were not able to show UTF8 strings. (#106)
  • Fixed an issue where the default value of inc for float pickers was wrong. (#104)
  • Fixed an assertion error on debug build. (#100)

Other Changes

  • Tuw now shows a deprecation warning when a component has no id. (#107)
  • Added windows10-arm64.zip to the release packages. (#111)
  • Optimized for binary size more. (#101, #102, #103 and #110)

v0.9.2

15 Mar 11:12
708f9ee

Choose a tag to compare

Changelog

  • Improved the performance of redirection (#91)
    (Fixed a Windows-specific issue where stdout redirection was unexpectedly slow.)
  • Fixed a Linux-specific issue where the console window looked like freezing while running commands. (#89)
  • The Linux build now supports more ANSI codes and carriage returns. (#88)
  • The Linux build now uses gio to open URLs if xdg-open failed. (#93)
  • Example JSON files now use id option. (#94)

v0.9.1

08 Feb 06:33
e4e66da

Choose a tag to compare

Changelog

  • Added support for using gui_definition.tuw as the default JSON path. (#76)
  • Fixed an issue where tuw could not locate JSON files when launching it from outside of its directory. (#79)
  • Fixed a Windows-specific issue where the message box failed to display redirected non-ascii characters correctly. (#80)
  • Fixed a Windows-specific issue where tuw failed to open file paths containing non-ascii characters. (#81)
  • Fixed a Linux-specific issue where the main window appeared behind the console window. (#77)

v0.9.0

19 Jan 14:11
95fd806

Choose a tag to compare

v0.9.0 Pre-release
Pre-release

Changelog

New Feature: Open JSON Files (*.tuw) with Tuw

  • Tuw now takes the first argument as a JSON path. (#67)
    You can launch GUIs just by clicking on JSON files. See the documentation for the details.

Other Changes

  • Tuw now uses the default CWD to resolve paths in command-line utilities. (#67)
    (Old versions used executable's directory as CWD.)
  • Fixed an error when launching tuw as a macOS application. (#68)
  • Disabled best-fit mapping on Windows to avoid potential issues. (#71)
  • Disabled c++ stack unwinding on Linux and macOS. (#72)
  • Uploaded source files with subprojects to the release page. (#69)

Known Issues

  • v0.9.0 can't find gui_definition.json when launching Tuw from another directory. (#78)

v0.8.1

15 Dec 00:49
36a917e

Choose a tag to compare

Changelog

  • Fixed a memory leak on Linux. (#59)
  • Removed std::exception from Linux and macOS builds. (#63)
    (A subproject still uses STL for Windows build.)
  • Linux and macOS packages now use .tar.xz as a compression format. (#62)
  • Added arm64-only build (*-macOS-arm64.tar.xz) to the release packages for macOS. (#64)

v0.8.0

10 Nov 00:37
ffbad17

Choose a tag to compare

New syntax features

There are some new rules to simplify JSON files. The minimal JSON that works with v0.8.0 is {"command":"echo Hello","components":[]}.

  • Array brackets can now be omitted when the array has only one item. (#51)
  • GUI elements (e.g. "command") can now be defined in root object when the "gui" array has only one item. (#52)
  • GUI labels became optional, and "window_name" can now be default values of GUI labels. (#54)

Other changes

  • Tuw now redirects stderr into the console window. (#57)
  • Replaced std::string with a custom string class to reduce the binary size. (#56)
  • Renamed Windows10 build (*-Windows-x64-ucrt.zip) to *-Windows10-x64.zip. (#50)

Known Issues

  • Linux build has a memory leak. (#60)

v0.7.2

12 Oct 13:30
edff353

Choose a tag to compare

Changelog

  • Added "optional" to ignore some options when a text box is empty. (#48)
  • Added "prefix" and "suffix" options to append strings to user inputs. (#48)
  • Removed unused functions and symbols from release builds.
  • Re-enabled exception handlings for the std library.
  • Optimized some functions for binary size.

Notes