epochTimeToHTTPDate runs in constant time. A huge value took
minutes.
formatHTTPDate renders out-of-range numeric fields as underscores
instead of non-digit characters.
parseHTTPDate accepts the RFC 850 and asctime formats, and rejects
trailing garbage and dates which do not exist. Trailing whitespace
is ignored.
httpDateToUTC clips out-of-range fields instead of wrapping them
and keeps a leap second. New httpDateToUTCValid rejects them.
GHC 9.2 or later is required.
0.0.12
Security: formatHTTPDate read outside its tables if hdMonth or
hdWkday was out of range (a huge value could crash). Such values
are now rendered as ___.
epochTimeToHTTPDate with a negative value spent a lot of CPU
time and returned a wrong date. It now returns the correct date.