Project

General

Profile

Task #3128

nom 5

Added by Victor Julien 9 months ago. Updated 3 months ago.

Status:
Closed
Priority:
Normal
Target version:
Effort:
Difficulty:
Label:

Description

Nom 5 is out. It claims to be a bit more efficient and more developer friendly.

Unknown at this time how much effort it would take to switch.


Related issues

Blocked by Optimization #3308: rust: use cbindgen to generate bindingsClosedDanny BrowningActions
#1

Updated by Victor Julien 9 months ago

  • Status changed from New to Assigned
  • Assignee set to Pierre Chifflier
#2

Updated by Pierre Chifflier 7 months ago

Small update on this: most of the update has been done, and pushed on https://github.com/chifflier/suricata/tree/dev/nom5-v1
This is a rather intrusive update, only the first part is done here (basic upgrade to nom 5). A second PR will be written later to update parsers to use functions and closures instead of macros, but has been split for readability/review reasons.

Some unit tests (cargo test) broke, and are being fixed.

Sidenote: having unit tests in cargo test is great for spotting these kind of regressions, we must encourage people to write them!

#3

Updated by Victor Julien 7 months ago

#4

Updated by Victor Julien 7 months ago

Thanks Pierre, please do a pull request for the straight nom 5 conversion after cbindgen support is merged. I agree the nom 5 switch and then the macro removal PR should be different steps.

#5

Updated by Victor Julien 7 months ago

  • Target version changed from TBD to 6.0.0rc1
#6

Updated by Pierre Chifflier 4 months ago

Submitted as PR#4523

#7

Updated by Victor Julien 3 months ago

  • Status changed from Assigned to In Review

Also available in: Atom PDF