feat(std/time): HTTP date and compact ISO 8601 formats #445
Loading…
Reference in a new issue
No description provided.
Delete branch "loop/388-time-formats"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Closes #388
Slice 3 of FIRST-PARTY.md gap 11.
What
In
std/time:Timestamp.httpDate()writes the IMF-fixdate of RFC 9110 section 5.6.7 (Sun, 06 Nov 1994 08:49:37 GMT), English fixed names, fraction dropped towards negative infinity.Timestamp.parseHttpDate(text)reads IMF-fixdate, RFC 850 (two-digit year pivot 70, as POSIX%y) and asctime. The weekday must match the date;UTCinstead ofGMT, wrong names, missing fields, leap seconds and trailing text are refused.Timestamp.iso8601Basic()/Timestamp.parseIso8601Basic(text):20130524T000000Z, UTC only.Date.basic():20130524.Tests (
std/time/tests/formats.test.trb): the three RFC examples are one instant, refusals, the pivot (69 -> 2069, 70 -> 1970), S3's20130524T000000Z, round trips.Docs:
docs/standard-library/time.md,skills/regenerated, FIRST-PARTY.md gap 11 updated.Seed impact
None: pure
std/timeTorbScript, no syntax, native, driver flag or string-looked-up std name. Two Conventional Commits.Checked locally
torb format --check std/time,torb test std/time/tests(129 passed),torb docs source std/time,torb docs skill --check,torb docs declarations --check. Tier A runs in forge CI.Approved.
formats.test.trbcovers the three RFC 9110 examples as one instant, epoch and negative-fraction flooring, leap day, range ends, the RFC 850 pivot (69/70), weekday mismatch, name/case/zone refusals, missing fields, S320130524T000000Z, round trips. CI green on this head (tier A, bootstrap, gates, pdisc).std/time, no syntax/native/seed impact.time.md, regeneratedskills/, FIRST-PARTY.md updated; pdisc check green.Non-blocking: none.