[v2] Remove remaining uses of ddwaf_object in src and tests/unit#391
Conversation
Benchmarks gccBenchmark execution time: 2025-03-26 22:13:15 Comparing candidate commit c571eeb in PR branch Found 0 performance improvements and 0 performance regressions! Performance is the same for 1 metrics, 0 unstable metrics. |
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## anilm3/v2 #391 +/- ##
=============================================
- Coverage 85.26% 85.24% -0.02%
=============================================
Files 164 164
Lines 8407 8406 -1
Branches 3573 3572 -1
=============================================
- Hits 7168 7166 -2
- Misses 477 481 +4
+ Partials 762 759 -3
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
Benchmarks clangBenchmark execution time: 2025-03-26 22:10:43 Comparing candidate commit c571eeb in PR branch Found 0 performance improvements and 1 performance regressions! Performance is the same for 0 metrics, 0 unstable metrics. scenario:global-benchmark.random.clang
|
Benchmarks clang-pgoBenchmark execution time: 2025-03-26 22:23:59 Comparing candidate commit c571eeb in PR branch Found 0 performance improvements and 0 performance regressions! Performance is the same for 1 metrics, 0 unstable metrics. |
|
Changes are primarily to tests, merging... |
* Object view: read only abstraction to ddwaf_object (#341) * [v2] Remove mingw builds (#381) * Writable objects: owned and borrowed object and object limits removal (#378, #382) * [v2] Refactor and improve object types (#387) * [v2] Update unit tests to use new abstractions (#389) * [v2] Update `raw_configuration` type to use `object_view` (#390) * [v2] Remove remaining uses of ddwaf_object in `src` and `tests/unit` (#391) * [v2] JWT Decoding Processor (#401) * [v2] First iteration of object layout changes (#394) * Split context data insertion from evaluation (#407) * [v2] Second iteration of object layout changes (#408) * [v2] Add new fingerprint and object view tests (#414) * Reenable attribute collector unit test (#415) * [v2] Container view types (#413) * Exclude assertions from coverage (#416) * [v2] Use allocators internally instead of malloc/free and stop generating zero-terminated strings (#418) * Add memory resource to owned and borrowed objects (#428) * [v2] Propagate allocators from context (#420) * [v2] Update interface and expose allocators (#427) * Refactor evaluation stages out of the context (#442) * Subcontext: replace ephemerals with a new scope with user-defined lifetime derived from the context (#443) * Validator: Add support for testing subcontexts and attributes (#451) * [v2] Pass allocator to context and subcontext eval and add new allocators (#452) * Update logger to avoid dependencies on ddwaf.h (#453) * [v2] Return DDWAF_MATCH when there are events, attributes or actions (#455) * [v2] Cleanup: remove exclusion namespace and some redundant references (#456)
ddwaf_objecton context methods.ddwaf_objecton all remaining unit tests.Remaining work (future PRs):
Completely refactor object_view and object_converter.Replace all uses ofddwaf_objectwithin tests withowned_object,borrowed_objectandobject_view.Removeraw_configurationin favour ofobject_viewor useobject_viewbehind the scenes.Updateddwaf_object_*interface to use new types.Improve context methods to avoidddwaf_objectarguments oroptional_ref.emplaceandemplace_back.malloc/free