- Implement SIMD-accelerated masked literal matching (#691).
- Improve atom extraction heuristics for better performance (#690, 1e14f60).
- Improve scan performance by applying file size and file header constraints only to regular expressions (#741).
- Serialize Aho-Corasick automata directly with compiled rules for faster deserialization (3c61ef8).
- Add
--ignore-invalid-rulesCLI option to skip rules that fail to compile (#704). - Expose
ignore_invalid_rulesin Python API (#711). - Add type annotations to match and return data in Python API (#692).
- Add
yrx_scanner_max_matches_per_patternto C API andScanner.MaxMatchedPerPatternto Go API (a33fa8e). - Add
rlibcrate types toyara-x-capiandyara-x-pyto allow linking into wrapper crates (3c411d8). - Implement experimental
msi,vba, andolecfmodules (#709, 35e16ef). - Parse ShellItems and malformed sections in
lnkmodule (#722). - Raise warning when patterns are unintendedly included in a set (#729).
- Improve code completion in language server by distinguishing enums from other fields (a59e311).
- Improve playground usability and add light/dark theme support (#701, #707, #731, 15f4984).
- BUGFIX: Prevent panics and provide clear error message for regular expressions exceeding size limits (89df3f7).
- BUGFIX: Prevent panic when
filesizeis compared to float values (328dcb3). - BUGFIX: Allow Teddy pattern matching algorithm to propagate early termination and respect timeouts (9d62d72).
- BUGFIX: Correctly anchor patterns in
ofexpressions with explicit offsets (439d642). - BUGFIX: Properly report compile error when exceeding maximum local variables limit (af53582).
- BUGFIX: Escape special control characters in JSON and YAML serialization (#696).
- BUGFIX: Do not ignore
privatemodifier on hex and regular expression patterns (#698). - BUGFIX: Cap ZIP buffer pre-allocation to compressed size (#702).
- BUGFIX: Robustly encode 64-bit string handles for WASM (#710).
- BUGFIX: Align completions with default formatting in language server (#713).
- BUGFIX: Fix accuracy issues when computing profiling time spent on each rule (6364574).
- BUGFIX: Prevent naming conflicts in Python bindings by setting module name explicitly to
yara_x(95fc833, 54435ac). - BUGFIX: Add protection against null pointers in C API (bf95890).
Contributors: @1ndahous3 @kevinmuoz @malvidin @MichaelTheSynthCat @paul-atx @saguywalker @tlansec @wxsBSD @zdiff