Yuri Astrakhan wrote:
I propose we just make infinity to be an empty string, or even better
- NULL value - logically it means there is no expiry value - i.e.
Infinite. We still have to handle the special case in the UI and in API (show specialized value), but at least we don't have to deal with a magic value... Unless there will be more magic values... eeick.
Of course we could make infinity into 9999-12-31 - but i really don't like it :)
The string "infinity" was chosen very carefully. "infinity" is a valid timestamp in PostgreSQL, which sorts after all other timestamp values. The string also sorts after all other 14-character timestamp values as used in our MySQL schema. This sorting behaviour is important for query efficiency in Block.php
Add the special case to wfTimestamp(). As far as I'm concerned it can be treated as a valid timestamp everywhere. Conversion to some formats (such as unix timestamp) may have to be approximate.
-- Tim Starling