Skip to content

Commit ae8da95

Browse files
committed
doc: update doc on 0.9.0 release
1 parent 825aaab commit ae8da95

File tree

2 files changed

+62
-1
lines changed

2 files changed

+62
-1
lines changed

CHANGELOG.md

Lines changed: 61 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,65 @@ All notable changes to this project will be documented in this file.
55
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
66
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
77

8+
## [0.9.0] - 2024-10-11
9+
10+
This release brings several memory optimizations and small API improvements.
11+
12+
Memory optimizations comes in two forms:
13+
14+
- Generic optimizations to reduce the memory footprint of compiled rules, useful in all
15+
cases when the `Scanner` object is kept for a long time.
16+
- The introduction of a new profile that can be set in the compiler, which will compile
17+
rules to optimize for memory usage rather than scanning speed.
18+
19+
### boreal
20+
21+
Breaking changes:
22+
23+
- A memory pool was introduced to greatly reduce the memory footprint of compiled rules,
24+
notably when the same meta strings are used in all rules. This introduces two breaking
25+
changes:
26+
27+
- The `Metadata` and `MetadataValue` objects are no longer re-exported from `boreal-parser`
28+
but are new types.
29+
- To retrieve strings and byte-strings from those objects, the new `Scanner::get_bytes_symbol`
30+
and `Scanner::get_string_symbol` must be used.
31+
32+
- A new `CompilerBuilder` object is introduced, to be able to configure a `Compiler` before
33+
any rule is added.
34+
35+
- Added `UnwindSafe` and `RefUnwindSafe` trait bounds on module datas:
36+
37+
- add UnwindSafe traits to module private datas [43502307](https://github.com/vthib/boreal/commit/435023079dd260622a2ed82424b1d2dc3830487d)
38+
- add UnwindSafe traits for module user datas [56111d77](https://github.com/vthib/boreal/commit/56111d772bd3b754f2371a46c01523fb601e96fe)
39+
40+
- MSRV is bumped from 1.65 to 1.66 [825aaab](https://github.com/vthib/boreal/commit/825aaab4f46afbe46d218d7bc92ae970ab15746e)
41+
42+
#### Added
43+
44+
- Add CompilerBuilder object to add modules and configure compiler profile: [261b11c2](https://github.com/vthib/boreal/commit/261b11c2228d1b28401ee5b3c3ce323a08c41e35)
45+
- Add compiler profile to pick between memory usage or scanning speed: [#167](https://github.com/vthib/boreal/pull/167).
46+
- Add compiler param to disable includes: [#170](https://github.com/vthib/boreal/pull/170).
47+
- Update compatibility with YARA 4.5.2: [#172](https://github.com/vthib/boreal/pull/172).
48+
49+
#### Changed
50+
51+
- Add bytes intern pool to reduce memory consumption: [#165](https://github.com/vthib/boreal/pull/165).
52+
- Guarantee `Scanner` is `UnwindSafe` and `RefUnwindSafe`: [#171](https://github.com/vthib/boreal/pull/171).
53+
* Update memory benchmarks [68a1e046](https://github.com/vthib/boreal/commit/68a1e046018ef3232dcf6f3cc4c04f5c5fac8898)
54+
- Update windows-sys dependency to version 0.59 [ff996f77](https://github.com/vthib/boreal/commit/ff996f7707abd65ac6d3f86066872c18c5ee4db7)
55+
- Update tlsh2 dependency to version 0.4.0 [29097dc8](https://github.com/vthib/boreal/commit/29097dc85eb5122dea9a6876c03edf350c6fc1fd)
56+
57+
#### Fixed
58+
59+
- Fix unused warning on statistics in default features config: [#168](https://github.com/vthib/boreal/pull/168).
60+
61+
### boreal-cli
62+
63+
#### Added
64+
65+
- Added option `--profile` to select memory or speed profile: [c3a89c29](https://github.com/vthib/boreal/commit/c3a89c29dca947e455e597dfc0798506bc2943ab).
66+
867
## [0.8.0] - 2024-06-09
968

1069
This release consists of several changes to make the library easier to use in any context
@@ -431,7 +490,8 @@ Main changes:
431490

432491
Initial release.
433492

434-
[unreleased]: https://github.com/vthib/boreal/compare/v0.8.0...HEAD
493+
[unreleased]: https://github.com/vthib/boreal/compare/v0.9.0...HEAD
494+
[0.9.0]: https://github.com/vthib/boreal/compare/v0.8.0...v0.9.0
435495
[0.8.0]: https://github.com/vthib/boreal/compare/v0.7.0...v0.8.0
436496
[0.7.0]: https://github.com/vthib/boreal/compare/v0.6.0...v0.7.0
437497
[0.6.0]: https://github.com/vthib/boreal/compare/v0.5.0...v0.6.0

boreal/README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ The main goals of the project are:
2828
See the [benchmarks](/benches/README.md) for details.
2929
* Process scanning on Windows, Linux and macOS, with different scanning modes available. See the
3030
[FragmentedScanMode documentation](https://docs.rs/boreal/latest/boreal/scanner/struct.FragmentedScanMode.html).
31+
* Rules can be optimized for different situations, by prioritizing either scanning speed or memory consumption.
3132
* Pure Rust implementation without any C dependency such as OpenSSL, making it very easy to build and use
3233
on any target. The only exception is the magic module which requires libmagic.
3334

0 commit comments

Comments
 (0)