ore
An R Interface to the Onigmo Regular Expression Library
A stable Oniguruma binding for R that ships correctness fixes and little else.
◆Recent moves
- 1y ago
Zero-length regex matches can no longer loop forever
The match loop now refuses a second zero-length match at the same offset and advances the cursor instead, closing an infinite-loop path. This is a semantics change rather than a patch — patterns that previously hung now terminate — and it fits the package's pattern of hardening the binding rather than extending it.
View source ↗ - 2y ago
Named groups now reach match matrices without pre-compiling
Named capture groups were only propagated to match matrices when the regex had been pre-compiled with ore(); that inconsistency is gone. Paired with a resolved printf format warning, this is the maintenance work that has defined the package's recent releases.
View source ↗ - 2y ago
Startup detects plain UTF-8 locales; sprintf() dropped
Startup now recognises a bare locale string like "UTF-8", and the C code drops sprintf() along with several prototype warnings. Released seconds before 1.7.4, it is part of the same CRAN-hygiene pass rather than a separate line of work.
View source ↗ - 4y ago
Memory leaks plugged; README documents the CRAN split
Small memory leaks are fixed and the README now spells out how the CRAN build diverges from mainline. Nothing changes for callers, but the README note is the clearest signal in the whole history that the package maintains two tracks.
View source ↗ - 4y ago
ore_file() records its binary flag; es() gets faster
ore_file() now stores its binary argument as an attribute, and ore_search() reads that attribute to decide whether returning file contents as a string is safe — a real behavioural fix for binary input containing embedded nulls. A performance tweak to es() and a buffer-overrun fix ship alongside it. This is the last release to change the API surface.
View source ↗ - 4y ago
CRAN tagging release for 1.7.1
A tag cut for the CRAN submission of 1.7.1, carrying no code changes of its own. It marks the boundary between the mainline and CRAN versions the README describes.
View source ↗