• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

loot / libloot
93%
master: 93%

Build:
Build:
LAST BUILD BRANCH: misc
DEFAULT BRANCH: master
Repo Added 08 Jun 2025 08:24PM UTC
Token euM64GbgbIdhWR4YsUgCIFGyf9vPG6zmg regen
Build 138 Last
Files 37
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

LAST BUILD ON BRANCH regress
branch: regress
CHANGE BRANCH
x
Reset
Sync Branches
  • regress
  • c++20
  • c++20-wrapper
  • c4711
  • cargo-vet
  • ci-npm-cache
  • ci-updates
  • cmake-vars
  • coverage-ci
  • decouple-condition-cache
  • fix-dependabot
  • fix-permission
  • improve-readmes
  • master
  • misc
  • misc-changes
  • prep-0.28.2
  • remove-32-bit-builds
  • rename-target
  • rust-rewrite
  • support-symlinks
  • symlink-support
  • test-long-paths
  • update-c++-game-wrapper
  • update-deps
  • update-napi-rs
  • update-nodejs-lockfiles
  • update-release-job

29 Jul 2025 05:25PM UTC coverage: 92.895% (-0.003%) from 92.898%
16604225625

push

github

Ortham
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.

35 of 37 new or added lines in 3 files covered. (94.59%)

10655 of 11470 relevant lines covered (92.89%)

217.08 hits per line

Relevant lines Covered
Build:
Build:
11470 RELEVANT LINES 10655 COVERED LINES
217.08 HITS PER LINE
Source Files on regress
  • Tree
  • List 37
  • Changed 5
  • Source Changed 5
  • Coverage Changed 3
Coverage ∆ File Lines Relevant Covered Missed Hits/Line

Recent builds

Builds Branch Commit Type Ran Committer Via Coverage
16604225625 regress 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, thoug... push 29 Jul 2025 06:23PM UTC Ortham github
92.89
16580222127 regress 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. Comp... push 28 Jul 2025 09:02PM UTC Ortham github
92.89
16578711698 regress 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. Alth... push 28 Jul 2025 07:45PM UTC Ortham github
92.89
16575092503 regress Switch to the regress crate for regex push 28 Jul 2025 04:51PM UTC Ortham github
92.91
15595850285 regress Switch to the regress crate for regex push 11 Jun 2025 09:19PM UTC Ortham github
93.45
15522512867 regress Switch to the regress crate for regex push 08 Jun 2025 09:04PM UTC Ortham github
93.53
See All Builds (138)

Badge your Repo: libloot

We detected this repo isn’t badged! Grab the embed code to the right, add it to your repo to show off your code coverage, and when the badge is live hit the refresh button to remove this message.

Could not find badge in README.

Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

Refresh
  • Settings
  • Repo on GitHub
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc