python-mimeparse icon indicating copy to clipboard operation
python-mimeparse copied to clipboard

Output not always matching the examples from RFC 7231 and RFC 9110

Open vytas7 opened this issue 1 year ago • 0 comments

Although much of the negotiation is dependent on the specific server logic, it feels that the current implementation does not always follow the spirit of the HTTP semantics as detailed in RFC 7231 (now superseded by 9110, but 7231 has IMHO clearer examples) and RFC 9110.

Cf

>>> mimeparse.quality('text/html;level=3', 'text/*;q=0.3, text/html;q=0.7, text/html;level=1,text/html;level=2;q=0.4, */*;q=0.5')
0.7
>>> # So far so good. text/html;level=3 does not match the ranges for level=1 and level=2, so we get the generic value (0.7).
>>> # Now, just change the order of the example:
>>> mimeparse.quality('text/html;level=3', 'text/*;q=0.3, text/html;level=1, text/html;q=0.7, text/html;level=2;q=0.4, */*;q=0.5')
1.0

vytas7 avatar Oct 01 '24 18:10 vytas7