Skip to content

Commit

Permalink
Update changelog and version for 0.23.0 release
Browse files Browse the repository at this point in the history
  • Loading branch information
Ortham committed Jun 29, 2024
1 parent 1117dbc commit f3eabb6
Show file tree
Hide file tree
Showing 4 changed files with 77 additions and 7 deletions.
2 changes: 1 addition & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -403,7 +403,7 @@ endif()
# Install
########################################

set(LIBLOOT_VERSION "0.22.4")
set(LIBLOOT_VERSION "0.23.0")

set_property(TARGET loot PROPERTY VERSION ${LIBLOOT_VERSION})
set_property(TARGET loot PROPERTY SOVERSION 0)
Expand Down
70 changes: 70 additions & 0 deletions docs/api/changelog.rst
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,76 @@
Version History
***************

0.23.0 - 2024-06-29
===================

Added
-----

- Support for Starfield's new medium plugin type (via esplugin and
libloadorder).
- :cpp:any:`PluginInterface::IsMediumPlugin()`
- :cpp:any:`PluginInterface::IsValidAsMediumPlugin()`

Fixed
-----

- A couple of use-after-free bugs that could happen when configuring additional
data paths (e.g. for Fallout 4 installs from the Microsoft Store).
- :cpp:any:`PluginInterface::IsMaster()` incorrectly checked the file extension
of Morrowind plugins instead of their header's master flag (via esplugin).
- :cpp:any:`PluginInterface::DoRecordsOverlap()` was not able to reliably check
if two Starfield plugins had overlapping records (via esplugin).
- The sorting process was unable to reliably count the number of records that a
Starfield plugin overrode, which could negatively impact the quality of the
sorted load order (via esplugin).
- If a non-master plugin was a master of two master plugins, it would be hoisted
to load before the master that loaded second instead of the master that loaded
first (via libloadorder).
- If more than one plugin needed to be hoisted while reading the load order,
some plugins could be moved too late in the load order (via libloadorder).
- When getting the load order, the result will now correctly reflect the
supported games' ability to hoist master files to load above other master
files that depend on them (via libloadorder).


Changed
-------

- Support for getting and setting Starfield's load order has been updated to
reflect the changes in the game's behaviour between its initial release and
the arrival of the Creation Kit alongside Starfield v1.12.30.0 (via
libloadorder).

- Starfield's ``Starfield.ccc`` file will now be read from the
``My Games\Starfield`` directory as well as its install directory, with the
former taking precedence over the latter.
- Starfield plugins will now be loaded from the ``My Games\Starfield\Data``
directory as well as the game install path's ``Data`` directory, but only
for plugins that are present in both directories.
- Starfield's ``Starfield.esm``, ``Constellation.esm`` and ``OldMars.esm`` are
no longer treated as hardcoded: instead, they are now treated as implicitly
active, along with ``BlueprintShips-Starfield.esm``, ``SFBGS003.esm``,
``SFBGS006.esm``, ``SFBGS007.esm`` and ``SFBGS008.esm``.
- Plugins that have the update flag (introduced by Starfield) set are no
longer given special treatment when checking active plugin limits, to match
Starfield's current behaviour. Previously such plugins would not count
towards the maximum number of plugins you could have active at the same
time.

- :cpp:any:`loot::GameInterface::LoadPlugins()` will now throw if attempting to
fully load Morrowind or Starfield plugins without also loading all their
masters.
- Renamed ``PluginInterface::IsOverridePlugin()`` to
:cpp:any:`PluginInterface::IsUpdatePlugin()` to reflect the terminology used
by Starfield's Creation Kit.
- Renamed ``PluginInterface::IsValidAsOverridePlugin()`` to
:cpp:any:`PluginInterface::IsValidAsUpdatePlugin()` to reflect the terminology
used by Starfield's Creation Kit.
- Updated esplugin to v6.0.0.
- Updated libloadorder to v17.0.1.
- Updated loot-condition-interpreter to v4.0.1.

0.22.4 - 2024-05-03
===================

Expand Down
4 changes: 2 additions & 2 deletions include/loot/loot_version.h
Original file line number Diff line number Diff line change
Expand Up @@ -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 = 22;
inline constexpr unsigned int LIBLOOT_VERSION_MINOR = 23;

/** @brief libloot's patch version number. */
inline constexpr unsigned int LIBLOOT_VERSION_PATCH = 4;
inline constexpr unsigned int LIBLOOT_VERSION_PATCH = 0;

/**
* @brief Get the library version.
Expand Down
8 changes: 4 additions & 4 deletions src/api/resource.rc
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,8 @@
#include <windows.h>

1 VERSIONINFO
FILEVERSION 0, 22, 4, 0
PRODUCTVERSION 0, 22, 4, 0
FILEVERSION 0, 23, 0, 0
PRODUCTVERSION 0, 23, 0, 0
FILEOS VOS__WINDOWS32
FILETYPE VFT_DLL
BEGIN
Expand All @@ -13,12 +13,12 @@ BLOCK "040904b0"
BEGIN
VALUE "CompanyName", "LOOT"
VALUE "FileDescription", "Library providing LOOT's core functionality"
VALUE "FileVersion", "0.22.4"
VALUE "FileVersion", "0.23.0"
VALUE "InternalName", "loot"
VALUE "LegalCopyright", "Copyright (C) 2013-2022 Oliver Hamlet"
VALUE "OriginalFilename", "loot.dll"
VALUE "ProductName", "LOOT"
VALUE "ProductVersion", "0.22.4"
VALUE "ProductVersion", "0.23.0"
END
END
BLOCK "VarFileInfo"
Expand Down

0 comments on commit f3eabb6

Please sign in to comment.