Commit Graph
364 Commits
Author SHA1 Message Date
Oliver Hamlet 2367403cad Use correct dir order for OpenMW when evaluating dir entries
I don't think this actually matters since evaluation just returns true and only exits early on success, but if the evaluator has side effects then it could matter.
2025-02-16 09:13:51 +00:00
Oliver Hamlet 174ba55c95 Add description_contains() condition function
It evaluates to true if the plugin description contains text that matches the given regex.
2025-02-15 22:38:18 +00:00
Oliver Hamlet f84083da52 Add filename_version() condition function
Unlike the other functions it will always evaluate to false if the version cannot be extracted from any filenames.
2025-02-15 21:27:39 +00:00
Oliver Hamlet 30e3ed9c86 Add file_size() function
It evaluates to false if the file doesn't exist.
2025-02-15 18:28:39 +00:00
Oliver Hamlet bae9e8b630 Update versions and changelog for v5.0.0 5.0.0 2025-02-01 18:56:44 +00:00
Oliver Hamlet d3da4528d3 Recognise OpenMW .omwscripts plugins
This doesn't really have any effect, as since ghosting is disabled for OpenMW the extension is only checked when evaluating a version() function, and .omwscripts plugins don't have a version field, so there's no reason for that version() call to exist in the first place.
2025-02-01 18:56:44 +00:00
Oliver Hamlet 7bf005118e Don't treat any OpenMW plugin as a master
Master-flagged plugins are not forced to load before other plugins in OpenMW.
2025-02-01 18:33:30 +00:00
Oliver Hamlet d7f5455cd0 Swap out some libc type aliases with std::ffi equivalents
Unfortunately std::ffi::c_size_t is currently experimental, and if I
define c_size_t = usize myself then cbindgen doesn't recognise it
properly and makes c_size_t a typedef of uintptr_t instead of just
replacing it with size_t.
2025-02-01 17:58:12 +00:00
Oliver Hamlet d9c453a857 Use c_int instead of i32 in error types
To match the types used by the actual error mappers. c_int is a type alias of i32 on the platforms that this library is used on, so there's no practical difference.
2025-02-01 17:58:12 +00:00
Oliver Hamlet 000c9971c2 Improve running CMake in CI 2025-01-29 18:38:32 +00:00
Oliver Hamlet 08639a1e8f Fix path handling for OpenMW
- Disable support for plugin ghosting for OpenMW, it's not clear if it's useful and it increases complexity.
- Search additional data paths in reverse order.
2025-01-29 18:38:32 +00:00
Oliver Hamlet a8f9a5734a Make Error and GameType enums non-exhaustive
So that it's not a breaking change to add more variants in the future.
2025-01-29 18:38:24 +00:00
Oliver Hamlet 9e2aa0cf9c Add support for OpenMW .omwaddon and .omwgame plugins 2025-01-29 18:38:24 +00:00
Oliver HamletandGitHub 2852491143 Merge pull request #56 from loot/dependabot/cargo/tempfile-3.16.0
Bump tempfile from 3.15.0 to 3.16.0
2025-01-29 08:44:54 +00:00
dependabot[bot]andGitHub 80c9f4750f Bump tempfile from 3.15.0 to 3.16.0
Bumps [tempfile](https://github.com/Stebalien/tempfile) from 3.15.0 to 3.16.0.
- [Changelog](https://github.com/Stebalien/tempfile/blob/master/CHANGELOG.md)
- [Commits](https://github.com/Stebalien/tempfile/compare/v3.15.0...v3.16.0)

---
updated-dependencies:
- dependency-name: tempfile
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-29 03:46:49 +00:00
Oliver Hamlet f357fa48a3 Add is_executable() function
To guard against calling product_version() or version() on (non-plugin) files that unexpectedly aren't executables, e.g. Starfield.exe from the Microsoft Store.
2025-01-28 18:17:57 +00:00
Oliver Hamlet 784af50540 Update nom from 7.1.3 to 8.0.0 2025-01-27 20:06:23 +00:00
Oliver Hamlet 18150b76c1 Make integration test a unit test
I don't know why I implemented it as an integration test.
2025-01-19 14:03:10 +00:00
Oliver Hamlet 94d663bd4e Force-install cbindgen in CI 2025-01-14 18:21:20 +00:00
Oliver Hamlet 3d9ac4cfc2 Address clippy warnings in test code 2025-01-14 18:12:31 +00:00
Oliver Hamlet eb48d09283 Apply clippy --fix changes 2025-01-14 18:12:14 +00:00
Oliver Hamlet 13600ba188 Apply clippy suggestion 2025-01-14 18:11:47 +00:00
Oliver Hamlet deb8d39800 Migrate to the ubuntu-24.04 GitHub Actions runner
The ubuntu-20.04 runner is due to be deprecated on 2025-02-01 and
unsupported by 2025-04-01.

The ubuntu-24.04 runner doesn't include cbindgen so install it using
apt.
2025-01-13 20:39:59 +00:00
Oliver HamletandGitHub cbe2c87a59 Merge pull request #53 from loot/dependabot/cargo/tempfile-3.15.0
Bump tempfile from 3.14.0 to 3.15.0
2025-01-03 07:55:18 +00:00
dependabot[bot]andGitHub 62cf0d09c8 Bump tempfile from 3.14.0 to 3.15.0
Bumps [tempfile](https://github.com/Stebalien/tempfile) from 3.14.0 to 3.15.0.
- [Changelog](https://github.com/Stebalien/tempfile/blob/master/CHANGELOG.md)
- [Commits](https://github.com/Stebalien/tempfile/compare/v3.14.0...v3.15.0)

---
updated-dependencies:
- dependency-name: tempfile
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-03 03:36:13 +00:00