GitXplorerGitXplorer
M

http-range-header

public
9 stars
4 forks
0 issues

Commits

List of commits on branch main.
Verified
e45a014f828089ac03003dfca4a87780e4343730

Make range structs public (#10)

ccetra3 committed 2 months ago
Verified
f269718505e7e85861ac3220a83690123a27efce

Update readme with some dev notes

MMarcusGrass committed 8 months ago
Verified
06c8193557559a70c873fb485986767e4c388679

Bump version, update changelog

MMarcusGrass committed 8 months ago
Verified
9b72a7a670542a9165db0c0d49e199daaeb31e4b

Add some fuzzing comments, add tests for validating a zero byte file length

MMarcusGrass committed 8 months ago
Verified
f50d8ced28afc05243aa9fdb3fff704590fd5995

Cleanup test lints, allow uninlined fmt args

MMarcusGrass committed 8 months ago
Verified
6278893a09e7868cd4d3f9f610a8446b0d6dc858

Check subtractions for overflow (#8)

ccholcombe973 committed 8 months ago

README

The README file for this repository.

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