Commit Graph
45 Commits
Author SHA1 Message Date
Oliver Hamlet a12fcfcef2 Set version and changelog for 0.29.5 2026-05-05 17:52:18 +01:00
Oliver Hamlet 56bafaead3 Set version and changelog for 0.29.4 2026-04-17 18:00:31 +01:00
Oliver Hamlet 7104c92bef Set version and changelog for 0.29.3 2026-04-07 18:23:11 +01:00
Oliver Hamlet a9d323eb7e Fix C++ header doc comments
Doxygen warned about these.
2026-04-04 17:57:19 +01:00
Oliver Hamlet 991e87b9ad Replace use of my older pseudonym with my name 2026-04-03 17:07:54 +01:00
Oliver Hamlet e89b3b841f Update copyright year ranges
I'm not sure if they add any value, but the GPL howto says to, and they're already there.
2026-04-03 17:06:31 +01:00
Oliver Hamlet d929ab9dab Set version and changelog for 0.29.2 2026-03-27 13:56:04 +00:00
Oliver Hamlet d869833742 Set version to 0.29.1 2026-03-13 18:40:53 +00:00
Oliver Hamlet 7de8bdb3a8 Set version to v0.29.0 2026-02-04 21:18:04 +00:00
Oliver Hamlet f606f169a5 Add condition field to plugin cleaning data metadata 2026-01-21 17:55:14 +00:00
Oliver Hamlet 84ffe39a37 Use unique_ptr instead of shared_ptr for PluginInterface pointers
unique_ptr is simpler, and can be easily converted to shared_ptr if needed, and makes it obvious that each call will return a new pointer.

This does mean that if I want to hold onto the objects again in the future for some reason, that'll need the API to change back, but that seems unlikely.

unique_ptr not being copyable does make using it a little more awkward, but that only happened in one place in LOOT's code, and there the pointer needs to become shared anyway.
2026-01-03 13:32:57 +00:00
Oliver Hamlet b7363b0a29 Replace WriteMode with MetadataWriteOptions
This is a breaking API change, but the addition of any future options won't be.
2026-01-03 13:26:52 +00:00
Oliver Hamlet 96b2ed2373 Add include_user_metadata parameter to Database::general_messages()
The C++ wrapper defaults it to true, so the behaviour hasn't changed for
existing callers that don't pass a value for the evaluateConditions
parameter, i.e. that call GetGeneralMessages().

Since the new parameter comes before evaluateConditions,
existing GetGeneralMessages(true) and GetGeneralMessages(false) calls
need to be replaced with GetGeneralMessages(true, true) and
GetGeneralMessages(true, false) to retain their existing behaviour. The
parameter order was chosen to match that of GetPluginMetadata(), at the
cost of this backwards incompatibility.
2026-01-02 16:41:43 +00:00
Oliver Hamlet f582a513bc Add Database::set_user_general_messages() 2026-01-02 16:41:42 +00:00
Oliver Hamlet 1d123c8b21 Add Database::user_general_messages() 2026-01-02 16:41:42 +00:00
Oliver Hamlet 744586fe96 Add include_user_metadata parameter to Database::known_bash_tags()
The C++ wrapper defaults it to true, so the behaviour hasn't changed for
existing callers.
2026-01-02 16:41:07 +00:00
Oliver Hamlet db97a0786a Add Database::set_user_known_bash_tags() 2026-01-02 15:30:40 +00:00
Oliver Hamlet 2fe107d66b Add Database::user_known_bash_tags() 2026-01-02 15:30:24 +00:00
Oliver Hamlet 46c3ddc884 Decouple clearing condition cache from evaluating general messages 2026-01-02 10:15:39 +00:00
Oliver Hamlet 364e2d25c0 Prevent copy & move of abstract classes
To prevent slicing, following C++ Core Guidelines C.21 and C.67.
2026-01-01 22:26:09 +00:00
Oliver Hamlet cdf3050503 Stop storing plugin pointers in C++ wrapper
With the documented lifetime semantics updated to just use those of std::shared_ptr<>, there's no need to cache them in the wrapper.
2026-01-01 18:13:45 +00:00
Oliver Hamlet 6ca6a01fa9 Update GameInterface docs to reflect use of smart pointers 2026-01-01 17:58:59 +00:00
Oliver Hamlet 10929878d9 Update version and changelog for v0.28.4 2025-12-31 19:21:17 +00:00
Oliver Hamlet 3890c3a095 Improve some doc comments 2025-12-30 15:19:42 +00:00
Oliver Hamlet 54604a0ec8 Update version and changelog for v0.28.3 2025-10-22 18:19:02 +01:00