3569 Commits
Author SHA1 Message Date
Oliver Hamlet cfa2835c2f Set 0.24.0's release date 0.24.0 2024-09-14 08:25:49 +01:00
Oliver Hamlet 5ce09aa754 Update changelog and version for 0.24.0 2024-09-13 22:17:18 +01:00
Oliver Hamlet 6726532a40 Expose loot-condition-interpreter error codes to callers
Make ConditionSyntaxError extend from system_error instead of directly from runtime_error, so that callers can use the exception's code to distinguish between different causes.
2024-09-13 20:25:16 +01:00
Oliver Hamlet 11f7f0415a Add PluginInterface::IsBlueprintPlugin() 2024-09-13 20:25:06 +01:00
Oliver Hamlet 10fa75b60c Remove unnecessary rpath config 2024-09-04 19:45:21 +01:00
Oliver Hamlet 3ca8d8b179 Increase test discovery timeout
When running test discovery through Wine the executable startup is
very slow, so it can take longer than the default 5 second timeout.
2024-09-04 19:42:41 +01:00
Oliver Hamlet 19f5c30e6f Fix cross-compilation using MinGW-w64 2024-09-04 17:38:27 +01:00
Oliver Hamlet 4e71695ebf Update libloadorder to 18.0.0 2024-08-24 17:07:42 +01:00
Oliver Hamlet 57f14d38ab Don't throw during sort if a non-blueprint-master has a blueprint master as a master
The game will not load the blueprint master before the other plugin, so if the latter overrides any records from the former, those changes won't be seen in-game.

There are probably many (pre-CK) plugins that have the official BlueprintShips-Starfield.esm blueprint master as a master but not actually override any of its records. Ideally such plugins would be updated to remove the unnecessary master or uninstalled, but as having it doesn't seem to do any harm, I don't think it's worth preventing LOOT from sorting in this situation.
2024-08-24 16:23:30 +01:00
Oliver Hamlet 6f4dff4766 Sort blueprint plugins after all others
Also validate that no non-blueprint masters or non-masters are expected
to load after any blueprint masters.

The addition of a new EdgeType may be considered a breaking change to
the API, since it can result in the caller receiving a value it doesn't
know how to handle, but it doesn't break ABI compatibility. LOOT has
explicit handling for unknown values, so is fine.
2024-08-24 16:23:30 +01:00
Oliver Hamlet 828c673077 Update libloadorder to 17.1.0 2024-08-24 16:23:29 +01:00
Oliver Hamlet 715d1dce75 Add PluginSortingInterface::IsBlueprintPlugin()
Adding it to the sorting interface because it'll be needed by the
sorting logic, but I'm not yet sure if it'll be useful as part of
PluginInterface (and adding it there would break ABI).
2024-08-24 16:23:29 +01:00
Oliver Hamlet 96b3f08498 Update esplugin to 6.1.0 2024-08-24 16:23:23 +01:00
Oliver Hamlet e9321ae544 Update changelog and version for 0.23.1 release 0.23.1 2024-08-24 11:28:30 +01:00
Oliver Hamlet 1d2ebf5572 Fix links in changelog 2024-08-24 11:27:54 +01:00
Oliver Hamlet a9e5b3d1bb Update Google Test to 1.15.2 2024-08-24 11:12:59 +01:00
Oliver Hamlet 945d6b5a7a Throw esplugin errors as system_error exceptions
Instead of FileAccessError, so that callers can use the exception's code to distinguish between different causes.
2024-08-24 10:02:35 +01:00
Oliver Hamlet 575455b08c Extend sorting tests to cover Starfield 2024-08-22 18:13:12 +01:00
Oliver Hamlet 9470e4ee86 Refactor test helper functions 2024-08-22 18:13:11 +01:00
Oliver Hamlet f14733f29f Ignore CLion's config folder 2024-08-22 08:32:30 +01:00
Oliver Hamlet 63b1e0bacc Remove obsolete check 2024-08-22 08:32:30 +01:00
Oliver Hamlet 59a3b7ce40 Remove unused constructor arguments 2024-08-22 08:31:33 +01:00
Oliver Hamlet 88d5f2b484 Fix inaccurate log message 2024-08-22 08:31:33 +01:00
Oliver Hamlet 6a5e96b597 Don't guess a target triple
If no target is obvious from CMake config, don't guess the target triple to use when compiling the Rust dependencies.
2024-08-17 20:50:42 +01:00
Oliver Hamlet 2be17d80e9 Fix Linux workflows 2024-08-09 21:17:18 +01:00