From e8414a12cf2de105108f84666d3a778df1bdb085 Mon Sep 17 00:00:00 2001 From: Oliver Hamlet Date: Fri, 24 Sep 2021 19:11:18 +0100 Subject: [PATCH] Update version and changelog for v0.17.0 release --- docs/api/changelog.rst | 63 +++++++++++++++++++++++++++++++++++++ docs/metadata/changelog.rst | 18 +++++++++++ src/api/loot_version.cpp.in | 4 +-- src/api/resource.rc | 8 ++--- 4 files changed, 87 insertions(+), 6 deletions(-) diff --git a/docs/api/changelog.rst b/docs/api/changelog.rst index 7227cdfa..b2c572b5 100644 --- a/docs/api/changelog.rst +++ b/docs/api/changelog.rst @@ -2,6 +2,69 @@ Version History *************** +0.17.0 - 2021-09-24 +=================== + +Added +----- + +- :cpp:any:`DatabaseInterface::LoadLists()` now accepts an optional third + parameter that is the path to a masterlist prelude file to load. If loaded, it + will be used to replace the value of the prelude in the loaded masterlist + (if the masterlist has a prelude). +- The :cpp:any:`Message` class has gained a constructor that takes a + :cpp:any:`SimpleMessage`. +- The :cpp:any:`File` class has been gained support for the metadata structure's + new ``detail`` field, adding: + + - An optional ``const std::vector&`` parameter to the + multiple-parameter constructor. + - A new :cpp:any:`File::GetDetail()` member function. + - A new :cpp:any:`File::ChooseDetail()` member function. + +Changed +------- + +- ``MasterlistInfo`` has been renamed to :cpp:any:`FileRevision`, and its + ``revision_id`` and ``revision_date`` fields are now named ``id`` and ``date`` + respectively. +- The ``UpdateMasterlist``, ``GetMasterlistRevision`` and ``IsLatestMasterlist`` + member functions have been moved out of ``DatabaseInterface`` and are now free + functions named :cpp:any:`UpdateFile`, :cpp:any:`GetFileRevision` and + :cpp:any:`IsLatestFile` respectively. +- :cpp:any:`PluginInterface::GetHeaderVersion()` now returns a + ``std::optional`` instead of a ``float``. The return value is + ``std::nullopt`` if no header version field was found or if its value was NaN. +- Sorting now checks for cycles before adding overlap edges, so that any cycles + are caught before the slowest steps in the sorting process. +- ``PluginCleaningData::GetInfo()`` has been renamed to + ``PluginCleaningData::GetDetail()``. +- ``PluginCleaningData::ChooseInfo()`` has been renamed to + ``PluginCleaningData::ChooseDetail()``. +- All API functions that returned a ``MessageContent`` or ``SimpleMessage`` now + return a ``std::optional`` or ``std::optional`` + respectively. This affects the following member functions: + + - :cpp:any:`Message::GetContent()` + - :cpp:any:`Message::ToSimpleMessage()` + - :cpp:any:`MessageContent::Choose()` + - :cpp:any:`PluginCleaningData::ChooseDetail()` + +- Updated libgit2 to v1.1.1. +- Updated Google Test to v1.11.0. +- Updated spdlog to v1.9.2. +- Updated yaml-cpp to v0.7.0+merge-key-support.1. + +Removed +------- + +- :cpp:any:`PluginInterface::IsLightMaster()` +- :cpp:any:`PluginInterface::IsValidAsLightMaster()` +- Updating the masterlist no longer reloads it, the masterlist must now be + reloaded separately. +- Masterlist update no longer supports rolling back through revisions until a + revision that can be successfully loaded is found. + 0.16.3 - 2021-05-06 =================== diff --git a/docs/metadata/changelog.rst b/docs/metadata/changelog.rst index 86fd6ec3..3cb0edbc 100644 --- a/docs/metadata/changelog.rst +++ b/docs/metadata/changelog.rst @@ -4,6 +4,24 @@ Version History The version history of the metadata syntax is given below. +0.17 - 2021-09-24 +================= + +Added +----- + +- The ``File`` data structure now has a ``detail`` key that takes a string or + localised content list. +- The top-level ``prelude`` key can be used to supply common data structure + definitions, and in masterlists its value is replaced by the contents of the + masterlist prelude file, if present. + +Changed +------- + +- The cleaning data structure's ``info`` key has been renamed to ``detail`` for + consistency. + 0.16 - 2020-07-12 ================= diff --git a/src/api/loot_version.cpp.in b/src/api/loot_version.cpp.in index 6d0de3bd..e9cc654d 100644 --- a/src/api/loot_version.cpp.in +++ b/src/api/loot_version.cpp.in @@ -26,8 +26,8 @@ namespace loot { const unsigned int LootVersion::major = 0; -const unsigned int LootVersion::minor = 16; -const unsigned int LootVersion::patch = 3; +const unsigned int LootVersion::minor = 17; +const unsigned int LootVersion::patch = 0; const std::string LootVersion::revision = "@GIT_COMMIT_STRING@"; LOOT_API std::string LootVersion::GetVersionString() { diff --git a/src/api/resource.rc b/src/api/resource.rc index 15b2e619..1558d0bd 100644 --- a/src/api/resource.rc +++ b/src/api/resource.rc @@ -2,8 +2,8 @@ #include 1 VERSIONINFO -FILEVERSION 0, 16, 3, 0 -PRODUCTVERSION 0, 16, 3, 0 +FILEVERSION 0, 17, 0, 0 +PRODUCTVERSION 0, 17, 0, 0 FILEOS VOS__WINDOWS32 FILETYPE VFT_APP BEGIN @@ -11,9 +11,9 @@ BLOCK "StringFileInfo" BEGIN BLOCK "040904b0" BEGIN -VALUE "FileVersion", "0.16.3" +VALUE "FileVersion", "0.17.0" VALUE "LegalCopyright", "Copyright (C) 2013-2016 WrinklyNinja" -VALUE "ProductVersion", "0.16.3" +VALUE "ProductVersion", "0.17.0" END END BLOCK "VarFileInfo"