This is an archived snapshot of W3C's public bugzilla bug tracker, decommissioned in April 2019. Please see the home page for more details.
The text for parsing a year in <input type="date"> says a year should be of the form: "Four or more ASCII digits, representing year, where year > 0" This should probably have a reasonable upper limit on the length of the year. I suggest this be exactly four ASCII digits.
That doesn't seem very future-compatible...
Does Date (JS) has an upper limit?
FWIW ISO 8601 supports years beyond 9999 (though somewhat shakily). Obviously, I'd expect real-world date parsers to regularly fail on those.
> Does Date (JS) has an upper limit? Sort of. It has the limit that only dates whose numeric value is < 1e8 days (so about 273000 years from 1970) are representable. It also defines the string format as YYYY-MM-DDTHH:mm:ss.sssZ, based on ISO8601, but also defines a string format for years past that point. See http://people.mozilla.org/~jorendorff/es6-draft.html#sec-extended-years new Date(4.32e15).toISOString() seems to work in UAs, modulo https://bugzilla.mozilla.org/show_bug.cgi?id=730831 in Firefox.
Would that make sense to say that the year's upper-limit for <input type='date'> should match the one in JS' Date?
HTML5.1 Bugzilla Bug Triage: Works for me I'm guessing that by the time we need to worry about extending the year's date to anything beyond 4 digits, we'll be using some other time measurement system (Galactic time?) If this resolution is not satisfactory, please copy the relevant bug details/proposal into a new issue at the W3C HTML5 Issue tracker: https://github.com/w3c/html/issues/new where it will be re-triaged. Thanks!