Skip to content

MarcusGrass/http-range-header

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

24 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Range header parsing

Latest workflow CratesIo

The main goals of this parser is:

  • Follow specification RFC-2616
  • Behave as expected MDN
  • Accuracy - parses headers strictly
  • Security - Never panics, ensured by fuzzing
  • Stability
  • No dependecies

Secondary goals are:

  • Speed
  • Information on why the header was rejected

The parser is strict. Any range where all parts are not syntactically correct and makes sense in the context of the underlying resource will be rejected.

Dev release checklist

  1. Make sure CI passes
  2. Run cargo fuzz cargo +nightly fuzz run random_string_input, at least a minute should be good enough. If it doesn't error out it has passed.
  3. Check msrv with for example cargo msrv, if a higher msrv is wanted/needed, bump it so that it's less than or equal to tower-http's
  4. Update changelog
  5. Update version
  6. Publish