56 Commits
Author SHA1 Message Date
Oliver Hamlet f4a0917294 Update version and changelog for v0.28.2 2025-10-03 19:23:48 +01:00
Oliver Hamlet bc89403134 Reapply "Support plugin and archive symlinks"
This reverts commit da0e35bb2b.

The minimum version of libloadorder has been increased because 18.5.0
included some changes to support symlinked plugins, without which
symlink support is incomplete.
2025-09-30 19:01:08 +01:00
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 3aa18c49f4 Depend on windows-sys instead of windows
Using the latter doesn't really add any value, and while libloadorder still pulls in windows, it means less duplication due to version mismatches in the dependency tree.
2025-09-29 21:25:10 +01:00
Oliver HamletandGitHub c4690a732f Merge pull request #143 from loot/dependabot/cargo/log-0.4.28
Bump log from 0.4.27 to 0.4.28
2025-09-08 17:42:46 +01:00
dependabot[bot]andGitHub 4102034ddc Bump log from 0.4.27 to 0.4.28
Bumps [log](https://github.com/rust-lang/log) from 0.4.27 to 0.4.28.
- [Release notes](https://github.com/rust-lang/log/releases)
- [Changelog](https://github.com/rust-lang/log/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-lang/log/compare/0.4.27...0.4.28)

---
updated-dependencies:
- dependency-name: log
  dependency-version: 0.4.28
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-08 15:36:57 +00:00
dependabot[bot]andGitHub c3cc77a5c3 Bump windows from 0.61.3 to 0.62.0
Bumps [windows](https://github.com/microsoft/windows-rs) from 0.61.3 to 0.62.0.
- [Release notes](https://github.com/microsoft/windows-rs/releases)
- [Commits](https://github.com/microsoft/windows-rs/commits/0.62.0)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-08 15:36:53 +00:00
Oliver HamletandGitHub a0e73190cf Merge pull request #135 from loot/dependabot/cargo/rayon-1.11.0
Bump rayon from 1.10.0 to 1.11.0
2025-09-05 21:27:00 +01:00
dependabot[bot]andGitHub cba82b27c6 Bump tempfile from 3.20.0 to 3.21.0
Bumps [tempfile](https://github.com/Stebalien/tempfile) from 3.20.0 to 3.21.0.
- [Changelog](https://github.com/Stebalien/tempfile/blob/master/CHANGELOG.md)
- [Commits](https://github.com/Stebalien/tempfile/commits)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-26 07:19:41 +00:00
dependabot[bot]andGitHub 43d17c4582 Bump rayon from 1.10.0 to 1.11.0
Bumps [rayon](https://github.com/rayon-rs/rayon) from 1.10.0 to 1.11.0.
- [Changelog](https://github.com/rayon-rs/rayon/blob/main/RELEASES.md)
- [Commits](https://github.com/rayon-rs/rayon/compare/rayon-core-v1.10.0...rayon-core-v1.11.0)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-26 07:06:51 +00:00
Oliver Hamlet 927c708df6 Update version and changelog for v0.28.1 2025-08-11 19:24:39 +01:00
Oliver Hamlet da0e35bb2b Revert "Support plugin and archive symlinks"
This reverts commit 9f45282bee. This is a
temporary revert so that I can release v0.28.1 without any new features.
2025-08-08 11:28:32 +01:00
Oliver Hamlet 9f45282bee Support plugin and archive symlinks
On Linux, and on Windows when the game is OpenMW or Oblivion Remastered.
2025-08-03 14:26:17 +01:00
Oliver Hamlet 55bdf56227 Update version and changelog for v0.28.0 2025-08-02 16:36:20 +01:00
Oliver Hamlet ff86fdc65d Version array-parameterized-test independently of libloot 2025-08-02 16:26:09 +01:00
Oliver Hamlet b75eced9ea Rename and tidy up the parameterized-test crate
It needed to be renamed to allow it to be published on crates.io, as there's already a parameterized_test crate there.
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 139047f230 Remove unused Cargo profile 2025-07-31 22:10:05 +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 f14e47e0e8 Switch to the regress crate for regex
It uses about 56 MB less memory when LOOT launches into my Skyrim SE
large test load order with the latest masterlist and prelude, and
explicitly targets ECMAScript-like syntax like C++ std::regex does,
though supports newer functionality.

Compared to fancy-regex's syntax support, regress adds support for the
\0 nul character escape and removes support for:

- modifiers (e.g. `(?i)`)
- some Unicode character classes (e.g. used with `\p{}` and `\P{}`)
- the ASCII/POSIX character classes (e.g. `[:alpha:]`)
- various character escapes, including \A \a \z \b{start} \<
  \b{end} \> \b{start-half} \b{end-half}
- (?P<name>exp) named capture groups

However, since regress's v flag requires more characters to be escaped
inside character classes than fancy-regex's Unicode support requires,
it's not used, so that further restricts the supported Unicode character
classes, and means that character class intersection, union and
subtraction syntaxes aren't supported.

The nul character escape is irrelevant for filename matching as it's not
allowed in Windows or Linux filenames.

Compared to C++ std::regex, the new restrictions are:

- the lack of support for ASCII/POSIX character classes
- the lack of support for control character escapes (e.g. `\cX`)

The lack of support for control character escapes is irrelevant as
control characters aren't allowed in Windows filenames.

A search of the masterlists doesn't find any use of the ASCII character
classes, and it's very unlikely that any user metadata would use them.
If such syntax is in use, it'll cause an error.
2025-07-29 18:25:40 +01:00
Oliver Hamlet dde7b2e2ff Forbid all lints that aren't currently overridden 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
dependabot[bot]andGitHub ca08a67bb6 Bump crc32fast from 1.4.2 to 1.5.0
Bumps [crc32fast](https://github.com/srijs/rust-crc32fast) from 1.4.2 to 1.5.0.
- [Commits](https://github.com/srijs/rust-crc32fast/compare/v1.4.2...v1.5.0)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-14 18:50:49 +00:00
dependabot[bot]andGitHub ca08ad7453 Bump fancy-regex from 0.14.0 to 0.15.0
Bumps [fancy-regex](https://github.com/fancy-regex/fancy-regex) from 0.14.0 to 0.15.0.
- [Release notes](https://github.com/fancy-regex/fancy-regex/releases)
- [Changelog](https://github.com/fancy-regex/fancy-regex/blob/main/CHANGELOG.md)
- [Commits](https://github.com/fancy-regex/fancy-regex/compare/0.14.0...0.15.0)

---
updated-dependencies:
- dependency-name: fancy-regex
  dependency-version: 0.15.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-07 18:11:43 +00:00
Oliver Hamlet 6003d5c2c2 Update saphyr to v0.0.6 2025-06-18 17:44:13 +01:00