From 356749df2100ee96b071cf8327c2469a744f85ba Mon Sep 17 00:00:00 2001 From: Oliver Hamlet Date: Sun, 8 Jun 2025 16:07:03 +0100 Subject: [PATCH] Update changelog and version for 0.27.0 --- CMakeLists.txt | 2 +- docs/api/changelog.rst | 42 +++++++++++++++++++++++++++++++++++++ include/loot/loot_version.h | 4 ++-- src/api/resource.rc | 8 +++---- 4 files changed, 49 insertions(+), 7 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 1fbc4ecf..6c483fad 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -419,7 +419,7 @@ endif() # Install ######################################## -set(LIBLOOT_VERSION "0.26.3") +set(LIBLOOT_VERSION "0.27.0") set_property(TARGET loot PROPERTY VERSION ${LIBLOOT_VERSION}) set_property(TARGET loot PROPERTY SOVERSION 0) diff --git a/docs/api/changelog.rst b/docs/api/changelog.rst index 35622741..1b878f8b 100644 --- a/docs/api/changelog.rst +++ b/docs/api/changelog.rst @@ -2,6 +2,48 @@ Version History *************** +0.27.0 - 2025-06-08 +=================== + +Added +----- + +- :cpp:any:`loot::PluginNotLoadedError`, which is thrown when trying to sort a + load order that contains a plugin that hasn't been loaded, or when trying to + load a Morrowind, OpenMW or Starfield plugin that has a master that has not + been loaded. + +Changed +------- + +- Windows builds that are built using MSVC (including official release builds) + are now built with the ``/GL`` flag to enable whole-program optimisation + (including link-time optimisation). +- Official Windows builds are now built using MSVC 2022, so they now require the + MSVC 2022 redistributable to be installed. + +Removed +------- + +- ``LogLevel::Fatal`` as it was never used. +- ``ConditionalMetadata``, which was the parent class of :cpp:any:`loot::File`, + :cpp:any:`loot::Message` and :cpp:any:`loot::Tag`. Its ``GetCondition()`` + member function has been moved to those child classes. There is no direct + replacement for its ``IsConditional()`` member function. +- ``FileAccessError`` and ``ConditionSyntaxError``: ``std::runtime_error`` + exceptions are thrown instead. +- ``loot_condition_interpreter_category()`` as the error category it returned is + no longer used. +- ``libloadorder_category()``, as errors reported by libloadorder are now thrown + as ``std::runtime_error`` exceptions instead of ``std::system_error`` + exceptions. +- ``esplugin_category()``, as errors reported by esplugin are now thrown as + either :cpp:any:`loot::PluginNotLoadedError` or ``std::runtime_error`` + exceptions instead of ``std::system_error`` exceptions. +- Support for the old Boost-style (e.g. ``%1%``) message placeholder syntax that + was replaced in the v0.21 metadata syntax by the curly brace syntax (e.g. + ``{0}``). + 0.26.3 - 2025-05-28 =================== diff --git a/include/loot/loot_version.h b/include/loot/loot_version.h index e2794ab4..e6080a77 100644 --- a/include/loot/loot_version.h +++ b/include/loot/loot_version.h @@ -34,10 +34,10 @@ namespace loot { inline constexpr unsigned int LIBLOOT_VERSION_MAJOR = 0; /** @brief libloot's minor version number. */ -inline constexpr unsigned int LIBLOOT_VERSION_MINOR = 26; +inline constexpr unsigned int LIBLOOT_VERSION_MINOR = 27; /** @brief libloot's patch version number. */ -inline constexpr unsigned int LIBLOOT_VERSION_PATCH = 3; +inline constexpr unsigned int LIBLOOT_VERSION_PATCH = 0; /** * @brief Get the library version. diff --git a/src/api/resource.rc b/src/api/resource.rc index 95db62fb..dede32d9 100644 --- a/src/api/resource.rc +++ b/src/api/resource.rc @@ -2,8 +2,8 @@ #include 1 VERSIONINFO -FILEVERSION 0, 26, 3, 0 -PRODUCTVERSION 0, 26, 3, 0 +FILEVERSION 0, 27, 0, 0 +PRODUCTVERSION 0, 27, 0, 0 FILEOS VOS__WINDOWS32 FILETYPE VFT_DLL BEGIN @@ -13,12 +13,12 @@ BLOCK "040904b0" BEGIN VALUE "CompanyName", "LOOT" VALUE "FileDescription", "Library providing LOOT's core functionality" -VALUE "FileVersion", "0.26.3" +VALUE "FileVersion", "0.27.0" VALUE "InternalName", "loot" VALUE "LegalCopyright", "Copyright (C) 2013-2022 Oliver Hamlet" VALUE "OriginalFilename", "loot.dll" VALUE "ProductName", "LOOT" -VALUE "ProductVersion", "0.26.3" +VALUE "ProductVersion", "0.27.0" END END BLOCK "VarFileInfo"