Oliver Hamlet
ce7d9c21cd
Update version and changelog for v0.18.3 release
0.18.3
2022-12-13 20:51:45 +00:00
Oliver Hamlet
3f7e2b48f3
Adjust messages logged on game handle creation
2022-12-13 20:51:45 +00:00
Oliver Hamlet
f5811808fa
Adjust some log statement levels
...
Largely so that LOOT's logging can run at info verbosity by default
instead of warn without too much detail in the log output.
I've also moved some statements between trace and debug based on how
useful I think they'd be when debugging issues.
2022-12-13 20:15:07 +00:00
Oliver Hamlet
99ae67dad0
Add additional logging statements during sorting
...
Indicating the start of each stage of adding edges to the plugin graph.
2022-12-13 20:15:07 +00:00
Oliver Hamlet
06f9201717
Tidy up PluginSortingData construction
2022-12-13 20:15:01 +00:00
Oliver Hamlet
280a4aab66
Improve performance of adding group edges
...
This reduced the time taken when using a very large userlist (featuring
11 group definitions and 1287 group assignments) and 1619 plugins from
332 seconds to 34 seconds.
Without the large userlist, the time taken went from 17 seconds to
1.8 seconds.
2022-12-12 11:22:17 +00:00
Oliver Hamlet
02570b2063
Store graph vertices in a std::vector
...
It doesn't make much of a difference to performance, but it does
simplify the code a little and silence a few compiler warnings.
2022-12-12 11:22:17 +00:00
Oliver Hamlet
1a6eba1c3b
Split PluginGraph::TopologicalSort() into smaller functions
...
To help with testing.
2022-12-12 11:22:17 +00:00
Oliver Hamlet
b1f4288548
Pass vector into GetOverlapSize() by reference
...
The function is only used when sorting Morrowind plugins, but this
should remove some unnecessary overhead in that case.
2022-12-10 13:33:27 +00:00
Oliver Hamlet
17cb506d24
Reorder PluginGraph methods
...
Also make the order of definitions match the order of declarations,
and rename a few internal functions for clarity.
2022-12-08 21:48:05 +00:00
Oliver Hamlet
338c092cf5
Refactor PluginGraph
...
Expose more basic graph interactions (e.g. adding a vertex) through
member functions so that it'll be possible to do more fine-grained
testing.
2022-12-08 21:24:16 +00:00
Oliver Hamlet
46aa3f5a07
Refactor PluginSortingData to not depend on Plugin
...
This is a step towards making it easier to test sorting without having
to load real plugins.
2022-12-07 21:25:27 +00:00
Oliver Hamlet
2bd3682109
Store plugin graph edges in a std::vector
...
This cuts the sorting time of a large (1619 plugins) load order by over
60% (15.5 min to 6 min).
2022-12-02 17:21:44 +00:00
Oliver Hamlet
d2ebefc40a
Change paths cache storage stype
...
It's about 10% faster with a map of sets vs. a set of pairs.
2022-12-02 17:21:43 +00:00
Oliver Hamlet
85decd2746
Refactor sorting path cache
...
It'll be easier to experiment on with the cache storage abstracted away.
2022-12-02 14:49:00 +00:00
Oliver Hamlet
38363c17d5
Remove tie() usage in for loops
...
It's unnecessary since C++17 introduced structured bindings.
2022-12-02 14:21:37 +00:00
Oliver Hamlet
b3436d23d8
Rename PluginGraph::EdgeCreatesCycle
...
It's really got nothing to do with cycles.
2022-12-02 14:17:09 +00:00
Oliver Hamlet
d145d234e2
Handle null Plugin pointers in PluginSortingData
...
The data won't make a lot of sense, but it's better than trying to
dereference a null pointer.
2022-12-02 14:11:27 +00:00
Oliver Hamlet and GitHub
f4ea7790a0
Merge pull request #88 from loot/sib-not-note
...
Remove notes on not operator & expressions
2022-11-16 20:51:21 +00:00
Oliver Hamlet
b393389e69
Update spdlog to v1.11.0
2022-11-16 18:36:01 +00:00
Oliver Hamlet
22c64339de
Add URL hashes tor external projects in CMakeLists
...
This will help avoid unnecessary downloads on rebuilds.
2022-11-16 18:35:50 +00:00
Oliver Hamlet
aba9ed7e95
Fix fields in resource file
...
When reading Microsoft's docs to debug an issue in another codebase I
noticed that the fields added in this commit are documented as being
required, and that there was a specific FILETYPE for DLLs.
2022-11-16 18:33:27 +00:00
sibir
f4236037e4
Remove notes on not operator & expressions
...
No longer true as of v0.17 of metadata syntax.
2022-11-16 00:25:07 -08:00
Oliver Hamlet
4636b95c3e
Remove git describe output from release version
...
To simplify release artifact names.
2022-11-01 16:46:53 +00:00
Oliver Hamlet and GitHub
6632cce93d
Merge pull request #86 from NicBOMB/master
...
Resolve cmake warning on ExternalProject_Add
2022-11-01 16:45:01 +00:00