Commit Graph
37 Commits
Author SHA1 Message Date
Oliver Hamlet df1a4cd44b Update coveralls GitHub Action 2023-04-28 18:01:24 +01:00
Oliver Hamlet 195bda0d7e Update version numbers and changelog for v2.4.0 2023-04-24 17:19:47 +01:00
Oliver Hamlet aff9d546f1 Add support for additional data paths
The Microsoft Store installs Fallout 4 DLCs into separate game
directories, so allow them to be provided for evaluating conditions.
2023-04-23 11:31:25 +01:00
Oliver Hamlet 50662558ae Resolve clippy warnings 2023-04-23 08:38:24 +01:00
Oliver Hamlet e9183c4ef9 Fix code coverage badge in readme 2022-11-09 00:09:35 +00:00
Oliver Hamlet 761fb9ecfc Don't unnecessarily install rustfmt in CI 2022-11-09 00:04:41 +00:00
Oliver Hamlet 0b802e9eb3 Use cargo-llvm-cov instead of tarpaulin for code coverage
It tends to give more accurate results and run into fewer issues.
2022-11-09 00:04:41 +00:00
Oliver Hamlet ed030b6dde Update Ubuntu on GitHub Actions to 20.04
18.04 is deprecated.
2022-11-09 00:04:40 +00:00
Oliver Hamlet 9856364666 Update GitHub Actions to resolve deprecation warnings 2022-11-09 00:04:40 +00:00
Oliver Hamlet 23731c1333 Update pelite to 0.10.0 2022-11-09 00:04:40 +00:00
Oliver Hamlet f7db75bfea Stop using 7z binaries in test cases
They're not reliably available and are now causing CI failures. Instead
use libloot for the test cases that used 7z, and update it because older
versions of libloot incorrectly use "ProductVERSION " instead of
"ProductVersion".
2022-11-09 00:04:38 +00:00
Oliver Hamlet d283bae744 Update version numbers and changelog for v2.3.1 2022-09-15 22:32:32 +01:00
Oliver Hamlet 977cf26d40 Update esplugin to 4.0.0 2022-09-15 22:20:51 +01:00
Oliver Hamlet 522fe26185 Apply clippy suggestion 2022-09-15 22:08:08 +01:00
Oliver Hamlet f6c64deb55 Update GitHub Actions cargo caching
To reflect latest example config given by actions/cache.
2022-09-15 22:06:35 +01:00
Oliver Hamlet 6164c6b8e6 Remove use of 'as' keyword
It was used for an unnecessary pointer cast, and a enum value
cast (which needed tests to make sure those values didn't change over
time).
2022-09-15 22:06:35 +01:00
Oliver HamletandGitHub 33cb1a0aff Merge pull request #20 from loot/dependabot/cargo/criterion-0.4.0
Update criterion requirement from 0.3.0 to 0.4.0
2022-09-12 18:16:40 +01:00
Oliver HamletandGitHub d03964f881 Merge pull request #19 from loot/dependabot/cargo/cbindgen-0.24
Update cbindgen requirement from 0.20 to 0.24
2022-06-08 08:37:02 +01:00
Oliver Hamlet 85e92873bd Update versions and changelog for v2.3.0 2022-02-27 08:26:49 +00:00
Oliver Hamlet 548793ba34 Add readable(path) condition function
It returns true if the path is a directory that can be read, or if
it is not a directory and can be opened as a file in read-only mode.

This is being added to allow conditions to guard against trying to
read the version of an executable that exists but is unreadable,
e.g. any of the official game executables for games installed
through the Microsoft Store or Xbox app.

The Windows test for evaling with an unreadable file doesn't use a
file that's unreadable for the same reason as what's motivating this
new function, but the error that is handled when checking the file
is the same kind (permission denied).
2022-02-27 08:24:22 +00:00
Oliver Hamlet a17542c0e9 Update versions and changelog for v2.2.2 2022-02-04 16:52:51 +00:00
Oliver Hamlet d874dfcdbc Fix comparisons of versions with and without a pre-release ID
Semver says that 1.0.0-alpha < 1.0.0 but the comparison didn't account
for this case.
2022-02-04 16:22:55 +00:00
Oliver Hamlet 6127a7973a Add bcrypt library to fix C/C++ linking on Windows 2022-01-23 22:18:03 +00:00
Oliver Hamlet aa3dabab8d Apply changes suggested by clippy lints 2022-01-23 22:17:35 +00:00
Oliver HamletandGitHub 1ca8bb1e49 Merge pull request #14 from loot/dependabot/cargo/nom-7.0.0
Update nom requirement from 6.0.0 to 7.0.0
2021-08-23 08:21:57 +01:00
Oliver HamletandGitHub b14eae8ba1 Merge pull request #13 from loot/dependabot/cargo/cbindgen-0.20
Update cbindgen requirement from 0.19 to 0.20
2021-08-05 19:59:51 +01:00
Oliver Hamlet c6eb338839 Update tarpaulin to 0.18.0 2021-08-05 19:44:38 +01:00
Oliver Hamlet eae8f542ea Update versions and changelogs for v2.2.1 2021-04-25 20:02:12 +01:00
Oliver Hamlet d3fec5ee6a Improve the correctness of version comparison
This makes the comparison between a numeric and a non-numeric release ID
more granular, by trying to parse leading digits in a non-numeric
release ID as a number and comparing it against the numeric ID. If the
two differ, their ordering is used as the ID ordering. If they're equal,
the non-numeric ID is considered greater so long as it has a non-zero
length suffix after the numeric leading digits. This means that
the version
0.78b is correctly considered to be less than the version 0.86, which
was not previously the case.

Pre-release IDs are not affected to avoid not conforming to the Semver
spec, which states that numeric pre-release IDs are always less than
non-numeric pre-release IDs. As non-numeric release IDs are not allowed
in semver, this commit's changes don't change the behaviour for semver
version comparisons.
2021-04-25 18:07:16 +01:00
Oliver Hamlet 169d4652d9 Update versions and changelogs for v2.2.0 2021-04-17 15:33:10 +01:00
Oliver Hamlet f71a2abed1 Update my email address 2021-04-17 11:04:16 +01:00
Oliver HamletandGitHub d74d486b1d Merge pull request #11 from loot/dependabot/cargo/cbindgen-0.19
Update cbindgen requirement from 0.18 to 0.19
2021-04-10 10:28:32 +01:00
Oliver Hamlet a8aaf3c9e5 Trim .ghost extension from ghosted plugin before regex matching
If an installed plugin has a .ghost extension, remove it before trying
to match the filename against the given regex. This makes functions that
take paths and functions that take regexes behave the same way for
ghosted plugins.
2021-04-08 21:03:27 +01:00
Oliver Hamlet d2db8ed642 Fix ghosted plugin handling
- Don't recursively check .ghost file extensions: plugin.esp.ghost.ghost
  is not a valid plugin filename.
- Only add a .ghost file extension if the path that does not exist has
  an unghosted plugin file extension.
2021-04-08 20:13:51 +01:00
Oliver Hamlet 384b374d7d Move version module
It's only used inside the function module, so move it there.
2021-04-07 22:14:33 +01:00
Oliver Hamlet 5d541f3807 Remove unnecessary no_mangle attributes 2021-03-11 19:54:29 +00:00
Oliver Hamlet 2c8da78912 Merge branch 'not-expressions' 2021-03-09 21:55:12 +00:00