Commit Graph
22 Commits
Author SHA1 Message Date
Oliver Hamlet 08a0487880 Be more permissive with dependency versions
The tests all pass when using the bottom of the new version ranges on Windows.

The unicase dependency's lower bound is limited by rust-ini even after using the latest master branch versions of esplugin, libloadorder and loot-condition-interpreter.

The proc-macro2 and quote dependencies' lower bounds are limited by pyo3's dependency tree.

The nodejs wrapper's dependencies haven't been touched.
2025-09-29 21:25:10 +01:00
Oliver Hamlet d4d6893491 Use enums instead of bools in public API
Replace the boolean parameters for including user metadata and evaluating conditions with MergeMode and EvalMode enums.

The C++ and Python wrappers still use booleans because they're more constrained than enums in those languages, which can be given invalid values.
2025-08-02 16:05:36 +01:00
Oliver Hamlet 8cf7a0adf1 Add more Cargo package fields
Explicitly disable publishing the FFI wrappers, since there's no point them being on crates.io.
2025-08-02 11:16:25 +01:00
Oliver Hamlet 4acc64247e Deduplicate Cargo package fields across workspace
Also deduplicate version numbers in CMakeLists.txt.
2025-07-31 22:08:46 +01:00
Oliver Hamlet bdc1f827f6 Make Game::set_additional_data_paths() take Vec<PathBuf>, not &[&Path] 2025-07-22 19:56:21 +01:00
Oliver Hamlet fee6504fa8 Move deny lints to Cargo workspace config
To reduce duplication and make it clearer which denials are then overridden for each crate.
2025-07-22 19:56:21 +01:00
Oliver Hamlet 36ce35950d Update pyo3 to v0.25.1 2025-06-18 18:48:43 +01:00
Oliver Hamlet db9f51a2b2 Update changelog and version for 0.27.0 2025-06-08 20:59:14 +01:00
Oliver Hamlet 11bd321861 Rework handling of esplugin errors
The error scenario represented by PluginNotLoadedError is distinguished from all other esplugin errors by LOOT, so it's worth handling separately.
2025-06-08 20:26:07 +01:00
Oliver Hamlet 05c984c769 Remove libloadorder_category()
Throw errors from libloadorder as std::runtime_error instead of std::system_error.
2025-06-08 17:58:27 +01:00
Oliver Hamlet 2b0eec9929 Remove ConditionSyntaxError
It's not usefully different from throwing std::runtime_error.
2025-06-08 17:58:27 +01:00
Oliver Hamlet fe3e2b2711 Remove FileAccessError
It wasn't usefully different from just throwing std::runtime_error.
2025-06-08 17:58:27 +01:00
Oliver Hamlet ba50882ad3 Update changelog and version for 0.26.3 2025-06-08 09:23:43 +01:00
Oliver Hamlet 699915efff Update the versions and changelog to 0.26.2
To reflect the v0.26.2 release of the C++ implementation.
2025-05-16 23:28:01 +01:00
Oliver Hamlet eb238c4774 Make GroupsPathError and MetadataRetrievalError enums non-exhaustive 2025-05-16 19:00:54 +01:00
Oliver Hamlet 7753962f55 Simplify some Python wrapper error mapping 2025-05-16 18:51:34 +01:00
Oliver Hamlet 16c99c09ea Add pipx and uv instructions to Python wrapper readme 2025-05-15 20:57:00 +01:00
Oliver Hamlet 517dc6b43c Make Vertex immutable
To match the C++ implementation. I meant to do this at the same time as the other metadata structs but missed it.
2025-05-14 18:24:54 +01:00
Oliver Hamlet e0a97f88c0 Use hyphen in Python wrapper crate name 2025-05-11 16:09:02 +01:00
Oliver Hamlet 637cf57e6f Add licenses to crates that didn't have them 2025-05-11 16:09:02 +01:00
Oliver Hamlet eabc7a5d85 Sync with libloot v0.26.1
Aside from adding GameType::oblivionRemastered and its usage, this is almost entirely about moving C++ files and tests around.
2025-05-02 17:56:49 +01:00
Oliver Hamlet 2b1b67daba Rename pyo3 directory to python
Also update the crate's name.
2025-04-29 17:21:03 +01:00