Skip to content
2.27.0 feature release

* Deprecation notices:
  * Support for the following deprecated functions is dropped:
    - context_specific_value
    - icons_linking_postinst
    - organize_data
    - use_archive_specific_value
  * Support for the following message functions is dropped:
    - print_warning
    - print_error
    See "New wrapper for messages display" for more details.
  * archive_get_type is deprecated, archive_type should be used instead. See "Changes related to archives" for more details.
  * The legacy global variables ARCHIVE and PKG should no longer be used. See "Improvements of the context system" for more details.
  * The functions context_archive and context_package are deprecated. See "Improvements of the context system" for more details.
  * The variable APP_xxx_TYPE_VARIANT is no longer supported, GAME_ENGINE should be used instead. It can usually be omitted, like with APP_xxx_TYPE_VARIANT.
  * The packages_get_list function is deprecated, packages_list should be used instead.

* New wrapper for messages display:
  * A new function is provided to display all messages: print_message
    It expects a priority level as its first argument:
    - `print_message 'error' $message` replaces `print_error ; printf $message`
    - `print_message 'warning' $message` replaces `print_warning ; printf $message`
    - `print_message 'info' $message` replaces `printf $message`

* Changes related to archives:
  * The presence of an optional archive can be checked using a dedicated function: archive_is_available
  * The type of an archive is retrieved using a new function: archive_type
    Unlike the previous function (archive_get_type), this will not trigger an error if no type is set for the given archive.

* Improvements related to icons extraction:
  * A new function is provided to get the full path to an icon file: icon_full_path
  * Most functions related to icons extraction now take an icon identifier instead of the path to an icon file.
  * Reliance on the global variable WRESTOOL_OPTIONS is dropped.

* Improvements of the context system:
  * A new function is provided to set the current archive: set_current_archive
  * A new function is provided to set the current package: set_current_package
  * The functions used to get the current context have been renamed:
    - context_archive → current_archive
    - context_package → current_package

* Support for Visionaire engine:
  * A game script can rely on Visionaire engine support by setting GAME_ENGINE='visionaire' or by setting a value to
IONAIRE_NAME. Since the engine value falls back to "visionaire" when VISIONAIRE_NAME is set, GAME_ENGINE can usually
omitted.
  * Default values are set for multiple variables:
    - APPLICATIONS_LIST
    - APP_xxx_EXE
    - CONTENT_LIBS_BIN_PATH
    - CONTENT_LIBS_BIN_FILES
    - CONTENT_GAME_BIN_FILES
    - CONTENT_GAME_DATA_FILES
    - CONTENT_DOC_DATA_PATH
    - CONTENT_DOC_DATA_FILES
    - PACKAGES_LIST
    - PKG_DATA_ID
    - PKG_DATA_DESCRIPTION
    - PKG_BIN_DEPS
    - PKG_BIN_DEPENDENCIES_LIBRARIES
  * For native Linux games, the used of system SDL is forced.
  * For WINE games, SDL_VIDEODRIVER is prevented from taking the value "wayland".

* Improvements specific to WINE games:
  * A new compatibility link is added in the WINE user directory: "Local Settings/Application Data" → "AppData/Local".

* Improvements specific to Unity3D games:
  * For native Linux games, the use of system SDL is forced.